Visão geral de sistemas de integração auto-hospedados
Opções de sistemas de integração
Sistemas de integração podem ser comerciais com muitos módulos de conexão pagos e alguns gratuitos; Ou do tipo gratuito, mas com licenças um pouco estranhas; Ou prontos para auto-hospedagem e não.
Existem muitos sistemas de integração disponíveis…
Casos de uso
Pode ser útil para
- organizar sua própria integração entre diferentes [redes sociais] plataformas,
- configurar notificações em eventos IoT, ou
- configurar um sistema completo de POSSE.
Se você estiver curioso sobre o que é um POSSE… POSSE é uma abreviação para Publish (on your) Own Site, Syndicate Elsewhere, a prática de publicar conteúdo no seu próprio site primeiro, depois publicar cópias ou compartilhar links com terceiros (como silos de redes sociais) com links para a postagem original para fornecer aos espectadores um caminho para interagir diretamente com seu conteúdo.
E IoT é uma Internet das Coisas, caso você tenha esquecido.
Baseados em nuvem
Plataformas universais
Como AWS com SNS, SQS, EventBridge, AppFlow e outros
Personalizadas
Muitas opções
e outros.
Muito conveniente, mas pode ser caro.
Sistemas de integração auto-hospedados
Apache
O Apache tem muitos projetos e, na área de integração, dê uma olhada em Nifi
ESB do Mulesoft
Este Mule ESB com o studio e algumas outras ferramentas estão formando uma plataforma com um conjunto muito bom de Conectores.
https://www.mulesoft.com/platform/studio
Mantenho-o aqui. Pode ser excessivo para um projeto pessoal.
Pode ser baixado aqui: https://www.mulesoft.com/lp/dl/anypoint-mule-studio
Verifique a licença.
Huginn
Implementado em rubyonrails
https://github.com/huginn/huginn/blob/master/doc/docker/install.md
Um dos sistemas de integração de código aberto mais maduros.
Activepieces
Implementado em JavaScript
https://www.activepieces.com/docs/contributing/overview
node-RED
https://nodered.org/docs/tutorials/first-flow
Plataforma de integração incrível com requisitos de hardware bastante baixos.
A interface é do tipo industrial.
Conexões personalizadas são codificadas com JavaScript.
Windmill
https://github.com/javipalanca/spade
Ambiente de desenvolvimento de agentes inteligentes em Python
Uma plataforma de sistemas multi-agente escrita em Python e baseada em mensagens instantâneas (XMPP).
Desenvolva agentes que possam conversar tanto com outros agentes quanto com humanos.
Licença MIT
StackStorm
do seu site:
StackStorm é uma plataforma para integração e automação entre serviços e ferramentas…
StackStorm ajuda a automatizar padrões operacionais comuns. Alguns exemplos são:
- Diagnóstico facilitado - disparado por falhas no sistema capturadas por Nagios, Sensu, New Relic e outros sistemas de monitoramento, executando uma série de verificações diagnósticas em nós físicos, instâncias de OpenStack ou Amazon e componentes de aplicativos, e publicando os resultados em um contexto de comunicação compartilhado, como Slack ou JIRA.
- Remediação automática - identificando e verificando falhas de hardware em nó de computação OpenStack, evacuando corretamente as instâncias e enviando e-mails aos administradores sobre possíveis interrupções, mas se algo sair errado - congelando o fluxo de trabalho e chamando o PagerDuty para acordar um humano.
- Implantação contínua - construir e testar com Jenkins, provisionar um novo cluster AWS, ativar algum tráfego com o balanceador de carga e avançar ou reverter com base nos dados de desempenho da aplicação do NewRelic.
Luigi
https://luigi.readthedocs.io/en/stable/
Luigi é um pacote Python que ajuda você a construir pipelines complexos de empregos em lote. Ele lida com resolução de dependência, gerenciamento de fluxo de trabalho, visualização, tratamento de falhas, integração de linha de comando e muito mais.
BeeHive
https://github.com/muesli/beehive
Um sistema flexível de eventos/agentes e automação, que permite criar seus próprios agentes que executam tarefas automatizadas acionadas por eventos e filtros. É modular, flexível e realmente fácil de estender para qualquer pessoa. Ele tem módulos (chamamos-os de Hives), então ele pode se comunicar, conversar ou recuperar informações de Twitter, Tumblr, Email, IRC, Jabber, RSS, Jenkins, Hue - para citar apenas alguns.
Lista de sistemas de integração
Licença Apache-2.0
Nome do Sistema | Linguagem de Implementação |
---|---|
airflow | Python |
luigi | Python |
mage | Python |
node-red | Javascript/node.js |
prefect | Python |
taskflow | Python |
StackStorm | Python |
syndesis | Java |
thingsboard | Java |
Licença MIT
Nome do Sistema | Linguagem de Implementação |
---|---|
actionsflow | Javascript/Typescript |
active_workflow | Ruby |
huginn | Ruby |
jitsu | Javascript |
novu | Javascript/Typescript |
pydoit | Python |
Licença BSD
Nome do Sistema | Linguagem de Implementação |
---|---|
apprise | Python |
flogo | Golang |
Licença GPL
Nome do Sistema | Linguagem de Implementação |
---|---|
automatisch | Javascript/Typescript |
beehive | Golang |
spiffworkflow | Python |
Outras licenças (verifique-as primeiro!)
Nome do Sistema | Linguagem de Implementação |
---|---|
activepieces | Javascript/Typescript |
chainjet | Javascript/Typescript |
n8n | Javascript/Typescript |
Minha opinião
Gosto mais do node-RED.
- Bom conjunto de conectores disponíveis
- Requisitos de sistema baixos (como Raspberry PI?)
- Fácil programação com JS
- MAS Veja por si mesmo, a curva de aprendizado pode ser acentuada dependendo da sua experiência.