Considérant les stratégies de conception pour les services Web

Vous devriez envisager plusieurs stratégies afin de mieux comprendre comment vous allez concevoir vos services Web. Comment allez-vous organiser votre code dans les projets, les classes, méthodes, propriétés et événements? Après avoir déterminé exactement quels sont vos besoins et qui scénarios votre application aura besoin pour gérer, vous pouvez commencer à concevoir votre application. Vous devez construire vos projets de services Web dans un ou plusieurs objets qui gèrent la fonctionnalité.

Sommaire

Assurer des performances de pointe

Comme pour tout projet de logiciel, vous devez tenir compte de certaines considérations de conception. La performance est l'un des plus grands problèmes. Et de nombreux domaines affectent les performances. Certains des facteurs de performance sont basées sur le matériel, mais certains facteurs de performance - tels que la mémoire - sont également basés sur le logiciel.

Avec la mémoire, plus est toujours mieux. Cependant, comment est-elle suffisante? Il est préférable de suivre les recommandations fondées sur les exigences du fabricant de logiciels pour chaque morceau de logiciel chargé sur l'ordinateur. Ensuite, décider d'une ampleur supérieure à celle.

La méthode la plus simple pour évaluer la quantité de mémoire nécessaire est de déterminer la quantité maximale de mémoire nécessaire si chaque demande était en cours d'utilisation dans le même temps. Vous devez également tenir compte du nombre d'utilisateurs que vous attendez à tout moment.

Voici quelques éléments à considérer:

  • Système (OS) des exigences de fonctionnement: Autrement dit, la quantité de mémoire que le serveur doit avoir afin de permettre aux utilisateurs d'exécuter en toute sécurité le système d'exploitation actuel et les autres logiciels installés. Par exemple, disons que vous avez deux services Web qui sera hébergé sur un serveur Windows 2000. Windows 2000 Server nécessite 128 Mo de mémoire.
  • .Exigences de NET Framework: Par exemple, dire que le cadre prend 128 Mo de mémoire sur le serveur. Ensemble, le système d'exploitation et le cadre occupent un total de 256 Mo de mémoire sur votre serveur, et ce est sans même considérer les objets Web Services que vous serez en développement.
  • Utilisateurs: Autrement dit, le nombre d'utilisateurs qui peuvent utiliser un service Web à un moment donné. Supposons que vous vous attendez à 100 utilisateurs ont besoin d'utiliser chacun des deux objets de services Web à tout moment.
  • Exigences de service Web: C'est très difficile d'estimer avec quelque degré de précision, mais au minimum, additionnez tous de l'espace que chacun des types de données occuperont.
  • Généraux associés avec le service Web: Autrement dit, la quantité de mémoire de votre serveur doit avoir au-delà de vos estimations initiales. Si vous estimez les frais généraux d'une autre 50K ou plus pour chaque service Web, la mémoire commence à additionner et composé.

Traiter les questions de sécurité




La sécurité est l'un des plus grands sujets dans l'informatique d'aujourd'hui. Le fait que les services Web sont généralement transmises via HTTP, la préoccupation sur la sécurité est grande. En fait, chaque fois que vous transmettez des données sur Internet, la sécurité devient une préoccupation. Si des données personnelles - telles que les noms d'utilisateur, mots de passe, adresses, informations de carte de crédit, etc. - doivent être transmis sur Internet, il doit être chiffré. Si ce ne sont pas cryptées, toute personne ayant des outils de piratage sera capable de lire les données transmises à travers le fil. La même chose est vraie sur un intranet d'entreprise ou extranet. Par conséquent, le chiffrement devient une nécessité.

Le chiffrement est facilement manipulé par Internet Information Services (IIS), qui utilise Secure Sockets Layer, ou SSL. La seule chose que vous devez faire pour utiliser le protocole SSL est d'installer un certificat SSL que vous obtenez à partir d'un tiers de confiance. Après le certificat SSL est installé, les clients peuvent accéder à vos sites Web ou des services Web en utilisant le protocole HTTPS, au lieu de HTTP. (La S supports pour secure.) Ce certificat SSL est connu comme un certificat de serveur.

Juste parce que vous utilisez SSL pour crypter vos données ne signifie pas que tout le monde devrait avoir accès à votre service Web. L'accès est contrôlé par un système d'authentification. Vous pouvez contrôler qui a accès en permettant Active Directory pour authentifier.

Vous devez également savoir comment vos services Web doivent gérer la sécurité. Pour le savoir, considérer ces questions:

  • Toute personne ou tout système peut accéder aux services Web?
  • Si l'accès doit être limité, comment allez-vous restreindre?
  • Si vous utilisez Active Directory pour authentifier les utilisateurs?
  • Si vous utilisez Passeport pour authentifier les utilisateurs?
  • Faut-il limiter les services Web basés sur la recherche des utilisateurs valides dans une base de données?

Les réponses à ces questions déterminent la complexité de vos services Web deviennent. Certes, la meilleure chose à faire est de permettre à chacun d'accéder à vos services Web, mais ce ne sont pas toujours pratique. Par exemple, si vous chargez pour votre usage des services Web via un fournisseur d'accès Internet (FAI)?

Si vous allez utiliser Active Directory, vous devez décider comment vous souhaitez administrer l'ajout d'utilisateurs et d'ordinateurs. Par exemple, vous devriez envisager d'automatiser cette tâche, selon que vous prévoyez d'être la signature de nouveaux clients / utilisateurs très souvent. Si vous allez utiliser des recherches de base de données, vous devez tenir compte de cette fonctionnalité dans vos plans de projet et de déterminer les détails de la façon dont cela peut fonctionner.

D'autre part, si vous avez Microsoft Passport faire l'authentification, vous garantir que l'utilisateur est authentifié, mais vous ne devez pas enregistrer les informations de l'utilisateur à votre emplacement. Rappelez-vous que vous avez besoin d'examiner les questions de sécurité de tous les angles possibles.

Garantir l'interopérabilité

Interopérabilité est le concept que les systèmes informatiques disparates doivent être en mesure de parler à l'autre. Par exemple, si une base de données Oracle doit travailler avec une base de données SQL Server, vous devez comprendre comment faire pour que cela se produise. De même, si vous savez que votre système ERP (Enterprise Resource Planning) doit parler avec un système de CRM (Customer Relationship Management), vous feriez mieux de fissuration.

Beaucoup des problèmes d'interopérabilité qui découlent de systèmes disparates de parler à l'autre peuvent être traitées avec un produit Microsoft BizTalk appelé. BizTalk permet la cartographie des systèmes disparates en permettant à plusieurs protocoles et formats. En interne, BizTalk utilise XML pour stocker les correspondances entre ces systèmes disparates.

L'interopérabilité a également un impact sur la façon dont les différentes technologies avoir à travailler les uns avec les autres. Par exemple, le fait d'un composant besoin de .NET pour appeler des composants COM? Les deux technologies sont quelque peu similaire dans son concept, mais pas dans la technologie. Cependant, il est très possible pour envelopper les composants COM avec des interfaces .NET. C'est appelé COM-Interop.

Décider de ce que vos utilisateurs peuvent accéder

Vous devez déterminer combien de votre modèle d'objet que vous souhaitez mettre à disposition sur Internet, qui est un concept connu sous le nom exposer. Il est important que vous vous souvenez des concepts d'un composant ou d'un objet, ce qui fait votre modèle d'objet. Vous souhaitez exposer seulement une vue abstraite de ce qui est nécessaire pour faire le travail et résoudre vos cas d'utilisation.

Par exemple, si vous avez une application financière qui décide si une hypothèque devrait être accordée sur la base spécifique criteria- vous ne pas exposer tous les détails de mise en œuvre internes. Voilà votre «sauce secrète». Le moins que vous partagez, le meilleur. Exposer seulement le nombre minimum d'objets, ainsi que le nombre minimum de membres (propriétés, méthodes et événements) nécessaires pour faire le travail.


» » » » Considérant les stratégies de conception pour les services Web