Arrangement la qualité des conditions de services
Voici une certaine qualité principale des
conditions de services qui sont spécifiques aux applications
interoperable de NET de Java EE. Il est crucial que les
architectes et les lotisseurs incorporent ces conditions dans leurs
conceptions d'interopérabilité ou ajoutent à leurs critères
d'évaluation pour leurs produits d'interopérabilité de NET de Java
EE. La sécurité est un autre attribut important de la qualité
des conditions de services.
Fiabilité
La fiabilité pour des applications interoperable
de NET de Java EE exige des demandes de service ou des données
commerciales d'un expéditeur (parole, un demandeur de service)
d'être communiqué à le destinataire de cible (parole, un
fournisseur de service) avec succès et exactement. Le
destinataire de cible devrait pouvoir accuser réception au besoin.
Les données commerciales doivent être précises et sans
erreurs. La transmission réussie peut être réalisée en
renvoyant les demandes de service et les données commerciales
jusqu'à ce qu'il y ait une reconnaissance de reçu du destinataire ou
en persistant elles dans un magasin fiable de données de sorte que le
destinataire de cible puisse les prendre.
La fiabilité peut être producteur-centrale ou
consommateur-centrale. Dans le scénario producteur-central, les
besoins d'expéditeur (producteur) de s'assurer que le destinataire de
cible (consommateur) reçoit les données commerciales.
Autrement, l'expéditeur renvoie les données commerciales
jusqu'à ce que le destinataire de cible envoie une reconnaissance.
Si le destinataire de cible est en différé ou indisponible,
l'expéditeur est responsable de renvoyer les données commerciales
toutes les fois que le service réceptif de cible devient disponible.
Dans le scénario consommateur-central, le destinataire de cible
(consommateur) est responsable de rechercher les données commerciales
de l'expéditeur (producteur). Ceci exige l'expéditeur soit
fortement disponible pour la recherche documentaire.
Les possibilités de fiabilité peuvent changer selon la
technologie d'interopérabilité utilisée. Par exemple, si un
pont d'IIOP est utilisé, le pont doit assurer le raccordement du Java
EE ou l'application de NET doit être fiable. Il devrait pouvoir
persister toutes les demandes de service ou les données commerciales
pour renvoient et notent également toutes les activités pour la
revue d'audit. Si un service Savon-basé de Web est
employé, la transmission de messages fiable peut être réalisée en
accroissant des technologies naissantes, telles que l'autobus de
service d'entreprise, ou exécution en utilisant la W-Fiabilité parce
que n'importe quel échec de la livraison sera renvoyé par
l'infrastructure de transmission de messages.
Essentiellement, la fiabilité pour des applications
interoperable de NET de Java EE est prévue dans différentes couches
ou rangées dans l'architecture d'application, qui inclut ce qui suit
:
-
La couche transport fondamentale de mécanisme ou de
données de communication pour des applications de Java et de NET doit
être fiable.
-
Quand un expéditeur échange quelques données
commerciales avec un destinataire, le contenu des données
commerciales devrait être sûrement transféré. Par exemple,
si les données commerciales contiennent un type de données d'une
grande quantité scientifique (par exemple, 23.1234567891 x 10-49) ou
un type de données complexe (par exemple, un objet fait sur commande
de données de compte de client), le destinataire devrait les recevoir
in extenso sans n'importe quel type de données conversion ou erreurs
de codage de XML entre Java et applications de NET.
-
Il devrait y a des possibilités de reconnaissance de
reçu pour le Java EE ou des applications de NET. Un des
critères communs de conception doit permettre à l'arrêt sur le
message ou la reconnaissance de la livraison d'éviter des
applications attendant une période prolongée.
-
N'importe quelle erreur ou exception jetée devrait être
sûrement réfléchie sur l'autre extrémité. Par exemple, si
l'application réceptive jette une exception d'exécution (par
exemple, l'exception de SOAPFault), l'expéditeur devrait pouvoir
attraper l'exception sûrement pour la gestion d'erreur appropriée,
au lieu de jeter ou d'ignorer les erreurs.
-
Il devrait y a un mécanisme de notation aux deux fins du
Java et des demandes de NET pour la vérification rétrospective et de
conformité rapportant le but.
-
La livraison garantie n'est pas la seule caractéristique
de la fiabilité. Une fois-et-seulement-une fois (également
connu comme idempotence) la condition peut également s'appliquer aux
conditions de QoS, signifiant que le message peut seulement être
fourni une fois à sa destination.
-
Si un message se compose des multi-parties, différentes
parties du message peuvent devoir être fournies dans l'ordre
approprié. Alternativement, il devrait y avoir de logique
d'agrégation disponible à l'extrémité de réception.
-
Le cheminement de message à travers Java hétérogène
EE, NET, et applications de legs doit souvent être accompagné de
l'orchestration d'écoulement d'affaires. Une solution d'autobus
de service d'entreprise peut être déployée pour adresser les
scénarios complexes de B2B.
-
La transmission de messages fiable, dans les cas tels que
le transfert de données financier, exige également un niveau élevé
de sécurité. Par conséquent, il est important d'exécuter un
contrôle complet de QoS pour s'assurer que votre architecture adresse
en juste proportion différentes conditions de QoS.
Disponibilité
La disponibilité pour des applications
interoperable de NET de Java EE exige que l'infrastructure
fondamentale d'application (telle que le logiciel d'exploitation et le
récipient de serveur d'application) soit en ligne pour des services
(c'est-à-dire, disponible) toute l'heure. La disponibilité des
applications ou des services d'affaires peut être mesurée dans le
pourcentage sur une certaine période de temps (par exemple, 99.99
pour cent de disponible pendant 365 jours d'opération), ou dans les
statistiques de temps d'arrêt (par exemple, temps d'arrêt de 53
minutes tout au long de l'année 365-day). Les applications et
les services d'affaires peuvent habituellement réaliser la
disponibilité élevée en groupant le Java EE ou des récipients de
serveur d'application de NET et en permettant le failover de session
d'une application échouante.
La réalisation de la disponibilité élevée pour des
applications interoperable de NET de Java EE est complexe. Elle
exige
-
La détection du statut de disponibilité il y a
un mécanisme à détecter ou rechercher, que le destinataire de cible
(Java EE ou application de NET) soit en ligne ou pas.
-
La persistance la demande de service ou les données
commerciales peut être persistée pour renvoient plus tard après que
le destinataire de cible reprenne des opérations d'échec de service.
-
La disponibilité bout à bout pour des applications
interoperable réparties de Java et de NET, disponibilité signifie
que les applications de Java et de NET devraient être en ligne et
disponibles pour le service simultanément. Si l'un ou l'autre
côté est en différé ou indisponible, l'autre latéral doit prendre
des routines de manipulation d'exception telles que persister la
demande de service de plus tard renvoie.
-
La disponibilité à temps de bon fonctionnement pour des
applications interoperable de NET de Java EE compte l'à temps de bon
fonctionnement pour les deux fins des applications. Ce n'est pas
le pourcentage moyen de disponibilité des serveurs d'application de
Java et de NET. Par exemple, si l'expéditeur courant des
applications de Java EE est de 99.99 pour cent de disponible, et
l'application courante réceptive de NET est 99.91 pour cent de
disponible, il ne peut pas simplement supposer que la disponibilité
pour des applications interoperable de NET de Java EE est de 99.99
pour cent ou les 99.95 pour cent moyen.
-
Le logiciel personnalisé la disponibilité pour des
applications interoperable de Java et de NET à l'aide d'un autobus de
service de pont ou d'entreprise d'IIOP dépendra fortement de la
disponibilité de la technologie de logiciel personnalisé.
Ainsi il est critique pour s'assurer que le pont est fortement
disponible et a le rétablissement ou les dispositifs de
art de l'auto-portrait-healing pour soutenir la disponibilité élevée.
Quelques technologies de logiciel personnalisé de pont ou
d'autobus emploient le logiciel groupant, tolérance de fautes, ou
rétablissement d'application pour assurer la disponibilité.
Scalability et exécution
Java individuel EE ou applications de NET
habituellement peut être accordé pour un meilleurs scalability et
exécution. Cependant, une application interoperable de NET de
Java EE dépend de la conception de scalability et de l'exécution
d'un Java et d'une application de NET. La mêmes conception de
scalability et stratégie de perfectionnement d'exécution ne
fonctionnent pas nécessairement pour les deux plateformes.
Les applications interoperable de NET de Scalable Java EE
peuvent manipuler un grand volume de demandes de service et de
transactions ou peuvent produire d'une sortie plus élevée de
transaction. Un scénario idéal de scalability pour une
application interoperable de NET de Java EE est que l'exécution
devrait pouvoir mesurer linéairement. Par exemple, il y a une
solution existante d'interopérabilité en utilisant l'approche de
services de Web. Si de la mémoire physique
supplémentaire est ajoutée (la parole, 2GB de mémoire) ou le
matériel est amélioré (peut-être à processeur 3GHz de processeur
2GHz) aux serveurs existants d'application de Java et de NET, ils
devraient pouvoir mesurer jusqu'aux messages additionnels de SAVON de
poignée (taux additionnel de traitement transactionnel de peut-être
20 pour cent) simultanément.
En réalité, il y a différents facteurs de scalability
et d'exécution pour la solution d'interopérabilité de NET de Java
EE. Ceux-ci incluent :
-
Le facteur de mémoire l'application d'interopérabilité
de NET de Java EE devrait pouvoir optimiser l'exécution en
accroissant la mémoire physique disponible. Le NET et
beaucoup de serveurs d'application de Java peuvent aujourd'hui tirer
bénéfice de la mémoire physique avec l'arrangement approprié des
paramètres de configuration. Les architectes et les lotisseurs
peuvent vouloir voir si la stratégie d'interopérabilité a n'importe
quelle conception de cachette pour une meilleure exécution de
système.
-
Les applications d'interopérabilité de facteur d'unité
centrale de traitement qui exigent les ressources informatiques
intenses devraient pouvoir accroître la puissance à
extrémité élevé d'unité centrale de traitement pour le
scalability linéaire. Par exemple, le chiffrage de message et
le déchiffrage (tel que le chiffrage de XML) exigent la capacité de
traitement élevée d'unité centrale de traitement. Si
l'application d'interopérabilité utilise un autobus de service de
pont ou d'entreprise d'IIOP avec le chiffrage et le déchiffrage de
XML, un processeur à extrémité élevé d'unité centrale de
traitement aidera à améliorer l'exécution de système.
-
Le facteur d'interface (ou I/O) quelques solutions
d'interopérabilité peut employer une base de données apparentée ou
d'objet pour persister tous les demandeurs de service. En ce
cas, l'application d'interopérabilité devrait pouvoir
accroître la technologie fondamentale de base de données
pour mesurer vers le haut de ou pour augmenter l'exécution
d'entrée-sortie, au lieu de créer sa propre exécution de
scalability.
-
Multi-Filetant le facteur le Java EE ou l'application
interoperable de NET devrait pouvoir incorporer multi-fileter l'appui
à leur conception de sorte qu'ils puissent employer multi-filète
pour traiter un grand volume de demandes de service. Non toute
la conception d'application soutient le multi-filetage par défaut,
car la conception d'application doit manipuler des issues de
synchronisation. Un exemple est cela qui emploie la stratégie
asynchrone de transmission de messages pour l'interopérabilité de
NET de Java EE permet aux fils multiples de l'application de traiter
plus de demandes de service.
-
Le facteur distribué d'architecture la conception
d'application d'interopérabilité doit soutenir des exemples
multiples sur la même machine ou à travers différentes machines.
Cette conception distribuée d'architecture permet des exemples
multiples de l'application d'interopérabilité à la course
simultanément et peut mesurer vers le haut horizontalement pour
manipuler un grand volume de demandes de service simultanément.
Par exemple, la stratégie asynchrone de message à l'aide de
l'autobus de service d'entreprise peut permettre des exemples
multiples de l'application d'interopérabilité à la course parce que
des demandes de service sont encapsulées dans les messages et peut
être traitée par les abonnés multiples (fournisseurs de service).
Administration
L'administration se rapporte à une qualité
d'attribut de service qu'une application ou un service peut être
équipée, surveillée, et récupérée s'il fonctionne dans une
exception. Puisque les applications de Java peuvent soutenir JMX
(prolongation APIs de gestion de Java) mais les applications de NET
pas , l'administration pour que les besoins interoperable d'applications
de NET de Java EE comptent sur une mesure commune et technologie
d'administration (par exemple, procuration de gestion) ou norme (par
exemple, W-Gestion). La stratégie d'interopérabilité à
l'aide de l'autobus de service de pont et d'entreprise d'IIOP peut
jouer un rôle important en fournissant l'administration parce qu'ils
peuvent saisir l'information de gestion de système de l'application
centralement. Il y a quelques conditions importantes
d'administration que la solution d'interopérabilité devrait soutenir :
-
La visibilité les applications interoperable de NET de
Java EE devrait pouvoir exposer leurs états d'opération (par
exemple, actif ou erreur) ou information de gestion (par exemple,
utilisation d'unité centrale de traitement) pour l'instrumentation et
la surveillance de système. Là devrait surveiller des
possibilités dans la stratégie d'interopérabilité pour le statut
en ligne ou pour le reportage de service.
-
La détection des problèmes la solution
d'interopérabilité devrait pouvoir détecter s'il y a n'importe quel
échec de problème ou de système de service dans les applications de
Java et de NET. Ceci peut exiger de la solution
d'interopérabilité de voter le statut de système ou l'application
lui-même pour envoyer le battement de coeur de système
périodiquement. Par exemple, quelques solutions
d'interopérabilité d'autobus de service d'entreprise soutiennent JMX
et peuvent signaler tous les problèmes de service du Java EE ou
d'application de NET au serveur de gestion (serveur fonctionnant de
MBean).
-
La remédiation les possibilités pour récupérer le
système échouant ou pour exécuter des actions correctives de
gestion est très cruciale à contrôler des applications
interoperable de NET de Java EE.
-
L'adaptabilité la solution de gestion devrait être
facilement sujette à saisie aux applications additionnelles
d'entreprise indépendamment de leurs origines, Java EE, NET, ou legs.
En plus, l'administration devrait être commandée selon
l'environnement, le développement, la garantie de la qualité,
l'échafaudage, et la production. Certaine application
permettante ou de neutralisation ou la notation au niveau système
devrait être exécutée en dehors de de l'application réelle,
c.-à-d., dans les dossiers de configuration ou la console
centralisée de gestion.
-
L'efficacité là devrait être un équilibre entre la
notation et le traçage d'état d'application et l'exécution de
système global.
-
L'information de notation de notation fournit l'entrée de
base à contrôler les points d'intégration entre une solution
d'interoperate de NET de Java EE. La solution devrait pouvoir
rassembler l'information de notation de Java individuel EE et de
composants de service de NET, comme des points d'intégration (tels
que le pont) et de corrélation pour la gestion d'utilisation de la
solution interoperable.
c'est un article supplémentaire par Blerick Tawman