Qu'est-ce que Zato et pourquoi l'utilisation de Python est judicieuse ?

Aperçu de haut niveau

Zato est une plate-forme d'intégration hautement évolutive, basée sur Python, pour les API, les SOA et les microservices. Elle est utilisée pour connecter des systèmes distribués ou des sources de données et pour créer des applications backend orientées API. La plateforme est conçue et construite spécifiquement pour les utilisateurs de Python.

Zato est utilisé pour les entreprises, les intégrations commerciales, la data science, l'IoT et d'autres scénarios qui nécessitent des intégrations de plusieurs systèmes.

Les environnements de production de Zato dans le monde réel comprennent :

  • Une plate-forme pour le traitement des paiements à partir des appareils des consommateurs.

  • Un système pour un opérateur de télécommunication intégrant les systèmes CRM, ERP, de facturation et autres, ainsi que les applications des partenaires externes de l'opérateur

  • Un système de science des données pour le traitement des informations liées aux transactions sur titres (FIX).

  • Une plate-forme pour les systèmes de l'administration publique, qui contribue à l'interopérabilité des données relatives aux soins de santé grâce à l'intégration de sources de données indépendantes, de bases de données et d'échanges d'informations sur la santé (HIE).

  • Une plateforme globale plateforme IoT intégrant des dispositifs médicaux.

  • Une plateforme de traitement des événements produits par des systèmes d'alerte précoce.

  • Des systèmes backend e-commerce gérant plusieurs fournisseurs, places de marché et flux de processus.

  • Des plateformes B2B pour accepter et traiter des commandes multicanaux en coopération avec des systèmes backend ERP et CRM.

  • Plates-formes intégrant des applications immobilières, collectant des données provenant de sources de données indépendantes pour présenter des APIs unifiées pour les applications internes et externes

  • Un système pour la gestion des ressources matérielles d'un fournisseur de cloud d'entreprise.

  • Sites d'enchères en ligne

  • Plateformes E-learning

Zato propose des connecteurs pour toutes les technologies courantes, telles que REST, SOAP, AMQP, IBM MQ, SQL, Odoo, SAP, HL7, Redis, MongoDB, WebSockets, S3 et bien d'autres encore.

Exécutés sur place, dans le cloud ou sous Docker, Kubernetes et d'autres technologies de conteneurs, les services Zato sont optimisés pour des performances élevées - il est facilement possible d'exécuter des centaines et des milliers de services sur des instances de serveur typiques telles que celles proposées par Amazon, Google Cloud, Azure ou d'autres fournisseurs de cloud.

Les serveurs Zato offrent une haute disponibilité et un déploiement sans temps d'arrêt. Les serveurs forment des clusters qui sont utilisés pour faire évoluer les systèmes à la fois horizontalement et verticalement.

Le logiciel est 100% Open Source avec un support commercial et communautaire disponible.

Une plateforme et un langage pour des services intéressants, réutilisables et atomiques

Zato encourage la conception et vous aide à construire des solutions composées de services intéressants, réutilisables et atomiques (IRA) :

  • I pour Intéressant - chaque service doit donner à ses clients l'envie de l'utiliser de plus en plus. Les gens doivent immédiatement percevoir la valeur de l'utilisation du service dans leurs processus. Un service intéressant est perçu par tous comme immédiatement utile dans des contextes plus larges, de préférence avec peu ou pas de conditions, de prérequis et d'obligations. Un service intéressant est esthétiquement plaisant, tant du point de vue de son utilisation technique que de son applicabilité potentielle dans des domaines plus larges que ceux envisagés à l'origine. Si les gens vérifient le service et disent "Je sais, nous l'utiliserons certainement" ou "Pourquoi ne l'utiliserions-nous pas", vous savez que le service est intéressant. S'ils disent "Oh non, encore celui-là" ou "Non, merci, mais non", c'est alors le contraire.
  • R pour Réutilisable - les services peuvent être utilisés dans des processus opérationnels différents et indépendants
  • A for Atomique - chaque service répond à un besoin unique et atomique

Chaque service est déployé indépendamment et, dans leur ensemble, ils constituent une mise en œuvre des processus d'affaires qui ont lieu dans votre entreprise ou organisation.

Avec Zato, les développeurs utilisent Python pour se concentrer exclusivement sur la logique métier et la plate-forme se charge de l'évolutivité, la disponibilité, les protocoles de communication, la messagerie, la sécurité ou le routage. Les développeurs peuvent ainsi se concentrer uniquement sur ce qui constitue le cœur même des intégrations de systèmes : s'assurer que leurs services sont IRA.

Python est le choix idéal pour les intégrations d'API, les SOA et les microservices, car il répond à plusieurs critères essentiels :

  • C'est un langage de très haut niveau, avec une syntaxe proche du fonctionnement de la grammaire de diverses langues parlées, ce qui permet de traduire facilement les exigences commerciales en implémentation.
  • Pourtant, il s'agit d'un langage de programmation solide, courant et complet, plutôt que d'un langage spécifique à un domaine, ce qui signifie qu'il offre aux développeurs un grand degré de flexibilité et de choix dans l'expression de leurs besoins.
  • De nombreux développeurs Python ont une solide expérience de la programmation web et de l'open source, ce qui signifie qu'il n'est pas difficile de faire un pas de plus vers les intégrations d'API et les serveurs backend. En retour, cela signifie qu'il est facile de trouver des personnes compétentes pour les projets d'API.
  • De nombreux développeurs Python connaissent plusieurs langages de programmation, ce qui est très utile dans le contexte des projets d'intégration où l'on est généralement confronté à des dizaines de technologies, de fournisseurs ou de méthodes et techniques d'intégration.
  • Réduction des coûts de maintenance - grâce à la conception unique du langage, les programmeurs Python ont tendance à produire un code facile à lire et à comprendre. Dans l'optique d'une maintenance pluriannuelle, la lecture et l'analyse du code, plutôt que son écriture, est ce que la plupart des programmeurs font la plupart du temps. Il est donc logique d'utiliser un langage qui facilite l'exécution des tâches les plus courantes.

En bref, Python peut être considéré comme un pseudo-code exécutable et nombreux de ses utilisateurs ont déjà des racines dans la programmation moderne côté serveur. Zato, d'un point de vue technique et stratégique, est donc un choix naturel pour les solutions API complexes et sophistiquées, car il s'agit d'une plateforme construite dans le langage et conçue pour les développeurs Python dès le premier jour.

Plus que des services

Les intégrations de systèmes requièrent généralement deux autres fonctionnalités que Zato propose également :

  • Transfert de fichiers - permet de déplacer des données par lots entre des emplacements et de les distribuer entre des systèmes et des API.

  • L'authentification unique (SSO) - une interface REST pratique vous permet de fournir facilement l'authentification et l'autorisation aux utilisateurs à travers plusieurs systèmes.

Prochaines étapes

  • Lancez le tutoriel pour apprendre plus de détails techniques sur Zato, notamment son architecture, son installation et son utilisation. Après l'avoir terminé, vous disposerez d'un service multiprotocole représentant un exemple de scénario souvent rencontré dans les systèmes bancaires, avec plusieurs applications coopérant pour fournir une API unique et cohérente à ses appelants.

  • Visitez la page de support si vous souhaitez discuter de quoi que ce soit concernant Zato avec ses créateurs