Différence entre le repos et le savon

Différence entre le repos et le savon

Introduction

Cet article traite de deux protocoles d'accès aux services Web, SAVON («Protocole d'accès à objet simple») et REPOS («Transfert d'état de représentation»).

Services Web

Les services Web sont définis pour récupérer activement, lire ou transférer les données d'une source définie pour produire un résultat spécifié - un résultat.

L'exemple rudimentaire suivant montre une utilisation de base des services Web avant de comprendre comment les données sont transférées vers et depuis le service Web, en utilisant du savon ou du repos.

Si un développeur rédige une application qui nécessite un calcul de données en un seul endroit, la méthode de calcul rédigera dans le code, à cet endroit.  Cependant, si le calcul des données est nécessaire dans d'autres parties de l'application, il serait inefficace et peu pratique à maintenir si le développeur a placé la méthode de calcul dans chaque domaine dont il est nécessaire.

Devoir faire un changement à cette méthode nécessiterait de trouver chaque instance pour modifier (et retester).   Ce scénario bénéficierait de l'utilisation d'un service Web pour fonctionner de manière optimale et améliorer l'agilité commerciale.

En créant un service Web avec des méthodes accessibles pour ajouter, soustraire, diviser et multiplier, l'application s'engagera avec ce service Web chaque fois que le calcul des données est requis; Il appelle le service Web pour faire le calcul et produire le résultat.  Il n'y a donc qu'un seul endroit pour que le développeur maintienne la méthode de calcul des données.

La façon dont les données sont gérées dans les services Web sont déterminées par la mise en œuvre du savon ou du repos.

SOA et BPMN

Une application construite sur des processus exécutables est basée sur un Architecture orientée vers le service («SOA»).  Il s'agit d'une approche sur la façon d'utiliser des services qui transfèrent, produisent, valident ou calculent les données.

Soa devient de plus en plus favorable pour améliorer la qualité et le temps du développement et améliorer les performances et l'évolutivité des applications.

Notation de modélisation des processus métier («BPMN») modélise un service ou un processus métier, qui peut être fait par des personnes non techniques I.e. L'analyste commercial.  En utilisant Bpmn, Les modèles commerciaux (pour les services) sont facilement interprétés par les développeurs qui mettent en œuvre le modèle comme un processus exécutable, et ces processus peuvent ou non nécessiter une interaction humaine.

Protocole d'accès simple (SOAP)

Le savon est une méthode de transfert de données sur Internet.

Développé à l'origine par Microsoft en raison de l'avènement d'Internet, SOAP a remplacé l'ancien Dcom et Corba Technologies, et elle existe depuis beaucoup plus longtemps que le repos.

Le savon est considéré comme plus lourd que le repos je.e. Il y a plus de bagages nécessaires pour transférer des données, ce qui signifie que plus de bande passante est nécessaire par demande de message et que la source de données et les cibles ont plus de travail à faire lors de l'emballage et de la réception des données.

Soap utilise uniquement Xml Pour les services de messagerie sur Internet et les demandes de messages XML peuvent être très complexes et si elles sont développées manuellement, une attention particulière est requise car le savon est inflexible avec des erreurs.

Il est possible d'automatiser les demandes de messages de savon en utilisant .Langues nettes (par exemple), où les développeurs n'ont pas besoin de travailler avec le XML tel qu'il est généré automatiquement en arrière-plan.

Si des problèmes sont rencontrés avec la demande de message, des informations d'erreur détaillées sont renvoyées dans la réponse du message, et ce processus peut également être automatisé en faisant référence aux codes d'erreur standard fournis dans la réponse du message.

Par conséquent, le langage de programmation utilisé est un facteur déterminant dans la difficulté de mettre en œuvre du savon.

L'un des morceaux de bagages qui accompagne un message de savon est le Langue des description des services Web («WSDL») pour expliquer comment fonctionne le service Web.  Lorsqu'une application fait référence au service Web, il lit et comprend quoi faire avec le service Web.

Le savon n'est pas tenu d'utiliser Http (Protocole de transfert hypertexte) exclusivement; Il peut être utilisé sur SMTP et dans d'autres protocoles de transport.

Comme le savon était standardisé, il est plus rigide que le repos, bien que les deux dépendent des règles établies.

REPOS

Le repos est le cousin de savon plus récent et plus élégant, et devenant rapidement le choix pour la plupart des applications Web et mobiles.

Plus d'une décennie après son introduction, REST est un moyen plus léger, plus maintenable et évolutif d'interagir avec les services Web.

Contrairement au savon, REST n'utilise pas Xml exclusivement; texte brut, CSV, et RSS peut être utilisé, ainsi que Json pour les appels ajax; Tant que la source et les cibles peuvent comprendre les formats utilisés.

Le repos est moins complexe et considéré comme une courbe d'apprentissage plus petite que par rapport au savon.  La plupart des langages de programmation modernes ont des bibliothèques et des cadres pour faciliter les services de repos (Restful), tels que C #, Python, Java et Perl.

Le repos est plus rapide en raison d'un traitement minimal et d'être plus efficace en utilisant différents formats de messages.

Il y a des avantages et des inconvénients pour les deux, donc lorsque vous considérez quel protocole d'accès à utiliser, considérez les langages de programmation utilisés dans l'organisation, l'environnement d'application et les exigences d'application.