SAP Integration Suite vem com
SAP Event Mesh
, que é um intermediário para lidar com notificações de eventos que permite que aplicativos ativem e reajam a eventos comerciais assíncronos.
No entanto, você pode precisar usar diferentes intermediários de eventos em seu ambiente.
O Microsoft Azure Cloud contém o serviço Event Hubs, que é um serviço de ingestão simples, confiável e escalável para transmitir milhões de eventos por segundo de qualquer fonte para seus pipelines que reagem a eventos comerciais.
Neste post do blog, veremos como enviar eventos do Cloud Integration para o Event Hubs e como consumi-los. O Event Hubs permite isso através dos protocolos AMQP, Apache Kafka e HTTP. Cada um deles requer diferentes configurações e até mesmo credenciais diferentes no Event Hubs. Mais informações sobre os protocolos suportados podem ser encontradas em
Troca de eventos entre consumidores e produtores
.
Você pode obter uma conta gratuita do Azure no seguinte URL
https://azure.microsoft.com/en-us/free/
, o que é suficiente para testar os seguintes cenários.
Enviando eventos através do Adaptador AMQP
Para enviar eventos para o Azure Event Hubs com o adaptador AMQP do Cloud Integration, você precisa de um namespace e um hub de eventos. Você pode usar qualquer nível de preço como namespace, até mesmo o básico (mais informações sobre os níveis de preço do Azure Event Hubs em
Preços do Event Hubs
).
No seguinte site
Crie um hub de eventos usando o portal do Azure
, você encontrará como criar um Grupo de Recursos, um Namespace e um Hub de Eventos.
Namespace do Hub de Eventos
Para obter as credenciais, você precisa ir ao namespace e às políticas de acesso compartilhado. Lá, você pode usar o existente ou criar um adicional. Na política, copie a chave primária de conexão ou a chave secundária.
Políticas de Acesso Compartilhado
Tomando, por exemplo, a seguinte string de conexão, você obtém o usuário (SharedAccessKeyName) e a senha (SharedAccessKey) da seguinte forma:
-
Endpoint=sb://nsehamqp.servicebus.windows.net/;SharedAccessKeyName=
RootManageSharedAccessKey
;SharedAccessKey=
**********************************************
-
Usuário:
RootManageSharedAccessKey
-
Senha:
**********************************************
Com essas informações, você pode criar um artefato de Credenciais de Usuário no Material de Segurança no Cloud Integration.
Credenciais de Usuário
Em seguida, vem o fluxo de integração para enviar os eventos do Cloud Integration para o Azure Event Hubs. Para simplificar, mostro um fluxo de integração simples acionado por um temporizador e onde um payload de exemplo é codificado como um json em um modificador de conteúdo. Também é definido um cabeçalho Content-Type = application/json no modificador de conteúdo.
No adaptador AMQP, defina o Host como o nome do host que você vê na visão geral do namespace (também encontrado na string de conexão). A porta deve ser 5671, a Conexão com TLS --> true e a Autenticação --> SASL. Use o Nome da Credencial como criado anteriormente.
Fluxo de Integração
Como Tipo de Destino, selecione Fila e dê o nome do hub de eventos como Nome do Destino (também encontrado na visão geral do namespace).