Capire la qualità dei requisiti di servizi
Qui è una certa qualità principale dei requisiti
di servizi che sono specifici alle applicazioni interoperable del NET
del Java EE. È cruciale che gli architetti e gli sviluppatori
comprendono questi requisiti nei loro disegni di interoperability o
aggiungono ai loro test di verifica di valutazione per i loro prodotti
di interoperability del NET del Java EE. La sicurezza è un
altro attributo importante della qualità dei requisiti di servizi.
Affidabilità
L'affidabilità per le applicazioni interoperable
del NET del Java EE richiede le richieste di servizio o i dati di
affari da un mittente (opinione, un richiedente di servizio) di essere
trasmesso con successo ed esattamente al destinatario dell'obiettivo
(opinione, un fornitore di servizio). Il destinatario
dell'obiettivo dovrebbe potere accusare ricevuta se necessario.
I dati di affari devono essere esatti e senza errori. La
trasmissione riuscita può essere realizzata resending le richieste di
servizio ed i dati di affari fino a che non ci sia un riconoscimento
della ricevuta dal destinatario o persist loro in un deposito certo di
dati in moda da potere prenderlo il destinatario dell'obiettivo.
L'affidabilità può essere produttore-producer-centric o
consumatore-consumer-centric. Nel piano d'azione
produttore-producer-centric, le necessità del mittente (produttore)
di accertarsi che il destinatario dell'obiettivo (consumatore) ricevi
i dati di affari. Altrimenti, il mittente resends i dati di
affari fino a che il destinatario dell'obiettivo non trasmetta un
riconoscimento. Se il destinatario dell'obiettivo è fuori linea
o non disponibile, il mittente è responsabile del resending i dati di
affari ogni volta che il servizio recettivo dell'obiettivo diventa
disponibile. Nel piano d'azione consumatore-consumer-centric, il
destinatario dell'obiettivo (consumatore) è responsabile del richiamo
dei dati di affari dal mittente (produttore). Ciò richiede il
mittente è altamente disponibile per reperimento delle informazioni.
La possibilità di affidabilità può variare secondo la
tecnologia di interoperability usata. Per esempio, se un
ponticello di IIOP è utilizzato, il ponticello deve accertare il
collegamento dal Java EE o l'applicazione del NET deve essere certa.
Dovrebbe potere da persist tutte le richieste di servizio o i
dati di affari per resend ed inoltre annotano tutte le attività per
la revisione di verifica. Se un servizio Sapone-basato di
fotoricettore è usato, il messaging certo può essere realizzato
tramite leveraging le tecnologie d'emersione, quale il bus di servizio
di impresa, o l'esecuzione usando l'W-Affidabilità perché tutto il
guasto di consegna re-sent dall'infrastruttura di messaging.
Essenzialmente, l'affidabilità per le applicazioni
interoperable del NET del Java EE è prevista negli strati differenti
o in file nell'architettura di applicazione, che include quanto segue:
-
Lo strato di trasporto di fondo del meccanismo o di dati
di comunicazione per sia le applicazioni del NET che del Java deve
essere certo.
-
Quando un mittente scambia alcuni dati di affari con un
destinatario, il contenuto dei dati di affari dovrebbe essere
trasferito attendibilmente. Per esempio, se i dati di affari
contengono un tipo di dati di grande quantità scientifica (per
esempio, 23.1234567891 x 10-49) o un tipo di dati complesso (per
esempio, un oggetto su ordinazione di dati di cliente di cliente), il
destinatario dovrebbe riceverlo verbatim senza alcun tipo di dati
conversione o errori di cifratura di XML fra Java e le applicazioni
del NET.
-
Ci dovrebbe essere una possibilità di riconoscimento
della ricevuta per il Java EE o le applicazioni del NET. Uno dei
test di verifica comuni di disegno deve permettere al prespegnimento
sul messaggio o sul riconoscimento della consegna di evitare le
applicazioni che aspettano un periodo di tempo esteso.
-
Tutto l'errore o eccezione gettata dovrebbe essere
riflessa attendibilmente sull'altra estremità. Per esempio, se
l'applicazione recettiva getta un'eccezione runtime (per esempio,
l'eccezione di SOAPFault), il mittente dovrebbe potere interferire
attendibilmente l'eccezione per il trattamento degli errori adatto,
invece di scarto o ignorare degli errori.
-
Ci dovrebbe essere un meccanismo annotante ad entrambe le
conclusioni del Java e delle domande del NET per la traccia di
verifica e di conformità che segnala lo scopo.
-
La consegna garantita non è l'unica caratteristica di
affidabilità. Una volta che-e-soltanto-una volta che (anche
conosciuto come idempotence) il requisito può anche applicarsi ai
requisiti di QoS, significanti che il messaggio può essere
trasportato soltanto una volta alla relativa destinazione.
-
Se un messaggio consiste delle multi-parti, le diverse
parti del messaggio possono dovere essere trasportato nell'ordine
adeguato. Alternativamente, ci dovrebbe essere logica di
aggregazione disponibile all'estremità di ricezione.
-
Il percorso di messaggio attraverso Java eterogeneo EE,
NET Ed applicazioni dell'eredità deve spesso essere accompagnato dal
orchestration di flusso di affari. Una soluzione del bus di
servizio di impresa può essere schierata per richiamare i piani
d'azione complessi di B2B.
-
Il messaging certo, nei casi quale il trasferimento di
dati finanziario, inoltre richiede un livello elevato di sicurezza.
Di conseguenza, è importante effettuare un controllo completo
di QoS per accertarsi che la vostra architettura richiami
adeguatamente i diversi requisiti di QoS.
Disponibilità
La disponibilità per le applicazioni
interoperable del NET del Java EE richiede che l'infrastruttura
di fondo di applicazione (quali il sistema operativo ed il
contenitore dell'assistente di applicazione) è in linea per i servizi
(cioè disponibile) tutto il tempo. La disponibilità delle
applicazioni commerciali/gestionali o dei servizi può essere misurata
nella percentuale per un periodo di tempo (per esempio, 99.99 per
cento disponibili durante i 365 giorni del funzionamento), o nelle
statistiche di tempo morto (per esempio, un tempo morto di 53 minuti
durante l'anno 365-day). Le applicazioni commerciali/gestionali
ed i servizi possono realizzare solitamente l'alta disponibilità
ragruppando il Java EE o i contenitori dell'assistente di applicazione
del NET e permettendo il failover di sessione da un'applicazione
venente a mancare.
Realizzare l'alta disponibilità per le applicazioni
interoperable del NET del Java EE è complesso. Richiede
-
La rilevazione di condizione di disponibilità là
è un meccanismo da rilevare o osservare in su se il destinatario
dell'obiettivo (Java EE o applicazione del NET) è in linea oppure no.
-
La persistenza i dati di richiesta o di affari di servizio
può essere persista per resend più successivamente dopo che il
destinatario dell'obiettivo riprenda i funzionamenti da guasto di
servizio.
-
La disponibilità faccia a faccia per le applicazioni
interoperable distribuite del NET e del Java, disponibilità significa
che sia le applicazioni del NET che del Java dovrebbero essere in
linea e disponibili per servizio simultaneamente. Se il uno o il
altro lato è fuori linea o non disponibile, l'altro laterale deve
prendere le procedure di trattamento di eccezioni come persistenza la
richiesta di servizio per più successivamente resend.
-
La disponibilità uptime per le applicazioni interoperable
del NET del Java EE conta il uptime a entrambi i fini delle
applicazioni. Non è la percentuale media di disponibilità sia
degli assistenti di applicazione del NET che del Java. Per
esempio, se il mittente che fa funzionare le applicazioni del Java EE
è 99.99 per cento disponibili e l'applicazione corrente recettiva del
NET è 99.91 per cento disponibili, non può essere presupposto
semplicemente che la disponibilità per le applicazioni interoperable
del NET del Java EE sia 99.99 per cento o i 99.95 per cento in media.
-
Il middleware la disponibilità per le applicazioni
interoperable del NET e del Java per mezzo di un bus di servizio del
ponticello o di impresa di IIOP dipenderà altamente dalla
disponibilità della tecnologia del middleware. Così è critico
accertarsi che il ponticello sia altamente disponibile ed abbia il
recupero o caratteristiche autorigeneranti per sostenere l'alta
disponibilità. Alcune tecnologie del middleware del bus o del
ponticello usano il software che ragruppa, tolleranza di errori, o
recupero di applicazione per accertare la disponibilità.
Scalability e prestazioni
Java specifico EE o le applicazioni del NET può
essere sintonizzata solitamente per lo scalability e le prestazioni
migliori. Tuttavia, un'applicazione interoperable del NET del
Java EE dipende dal disegno di scalability e dalle prestazioni sia di
un Java che di un'applicazione del NET. Lo stessi disegno di
scalability e strategia di aumento di prestazioni necessariamente non
funzionano per entrambe le piattaforme.
Le applicazioni interoperable del NET di Scalable Java EE
possono maneggiare un grande volume delle richieste di servizio e
delle transazioni di affari o possono generare l'più alto rendimento
di transazione. Un piano d'azione ideale di scalability per
un'applicazione interoperable del NET del Java EE è che le
prestazioni dovrebbero potere regolare linearmente. Per esempio,
ci è una soluzione attuale di interoperability usando il metodo di
servizi di fotoricettore. Se la memoria fisica supplementare è
aggiunta (opinione, 2GB della memoria) o i fissaggi sono aggiornati
(forse al processor 3GHz dal processor 2GHz) agli assistenti attuali
di applicazione del NET e del Java, dovrebbero potere regolare
simultaneamente fino ai messaggi supplementari del SAPONE della
maniglia (tasso supplementare di elaborazione di transazioni di forse
20 per cento).
In realtà, ci sono fattori differenti di prestazioni e di
scalability per la soluzione di interoperability del NET del Java EE.
Questi includono:
-
Il fattore di memoria l'applicazione di interoperability
del NET del Java EE dovrebbe potere ottimizzare le prestazioni
leveraging la memoria fisica disponibile. Il NET e molti
assistenti di applicazione del Java oggi possono trarre beneficio
dalla memoria fisica con la regolazione adeguata dei parametri di
configurazione. Gli architetti e gli sviluppatori possono
desiderare vedere se la strategia di interoperability ha qualunque
disegno del nascondiglio per le prestazioni migliori del sistema.
-
Le applicazioni di interoperability di fattore del CPU che
richiedono le risorse di computazione intense dovrebbero potere
leverage l'alimentazione high-end del CPU per lo scalability lineare.
Per esempio, la crittografia del messaggio ed il decryption
(quale crittografia di XML) richiedono l'alta alimentazione di
elaborazione del CPU. Se l'applicazione di interoperability
utilizza un bus di servizio del ponticello o di impresa di IIOP con la
crittografia ed il decryption di XML, un processor high-end del CPU
contribuirà a migliorare le prestazioni del sistema.
-
Il fattore I/O o (dell'interfaccia) alcune soluzioni di
interoperability può usare una base di dati dell'oggetto o
relazionale per persist tutti i richiedenti di servizio. In tal
caso, l'applicazione di interoperability dovrebbe potere leverage la
tecnologia di fondo della base di dati per regolare su o per
aumentare le prestazioni dell'ingreso/uscita, invece di generazione
della relativa propria esecuzione di scalability.
-
Multi-Filettando il fattore il Java EE o l'applicazione
interoperable del NET dovrebbe potere comprendere la multi-filettatura
del supporto nel loro disegno in moda da poterli usare multi-filettino
per procedere un grande volume delle richieste di servizio. Non
tutto il disegno di applicazione sostiene la multi-filettatura per
difetto, poichè il disegno di applicazione deve maneggiare le
edizioni di sincronizzazione. Un esempio è quello che usando la
strategia asincrona di messaging per il interoperability del NET del
Java EE permette che i filetti multipli dell'applicazione procedano
più richieste di servizio.
-
Il fattore distribuito di architettura il disegno di
applicazione di interoperability deve sostenere i casi multipli sulla
stessa macchina o attraverso le macchine differenti. Questo
disegno distribuito di architettura permette simultaneamente i casi
multipli dell'applicazione di interoperability al funzionamento e può
regolare orizzontalmente in su per maneggiare simultaneamente un
grande volume delle richieste di servizio. Per esempio, la
strategia asincrona del messaggio che per mezzo del bus di servizio di
impresa può permettere i casi multipli dell'applicazione di
interoperability al funzionamento perché le richieste di servizio
sono incapsulate nei messaggi e può essere proceduta dagli abbonati
multipli (fornitori di servizio).
Manageability
Il manageability si riferisce ad una qualità
dell'attributo di servizio che un'applicazione o un servizio può
essere fornito, controllato ed essere recuperato se funziona in
un'eccezione. Poiché le applicazioni del Java possono sostenere
JMX (l'estensione APIs dell'amministrazione del Java) ma le
applicazioni del NET non, il manageability affinchè necessità
interoperable di applicazioni del NET del Java EE contino su una
misura comune e tecnologia di manageability (per esempio, procura
dell'amministrazione) o campione (per esempio, W-Amministrazione).
La strategia di interoperability per mezzo del bus di servizio
del ponticello e di impresa di IIOP può svolgere un ruolo importante
nel fornire il manageability perché possono bloccare le informazioni
in materia di gestione di sistema dall'applicazione centralmente.
Ci sono alcuni requisiti importanti di manageability che la
soluzione di interoperability dovrebbe sostenere:
-
La visibilità Il NET che del Java EE le applicazioni
interoperable dovrebbero potere esporre il loro funzionamento
dichiara (per esempio, attivo o errore) o le informazioni in
materia di gestione (per esempio, utilizzazione del CPU) per
strumentazione ed il controllo del sistema. Là dovrebbe
controllare la possibilità nella strategia di interoperability per
condizione in linea o per la segnalazione di servizio.
-
La rilevazione dei problemi la soluzione di
interoperability dovrebbe potere rilevare se ci è del guasto di
problema o del sistema di servizio sia nelle applicazioni del NET che
del Java. Ciò può richiedere la soluzione di interoperability
votare la condizione di sistema o l'applicazione in se per trasmettere
periodicamente il battito cardiaco del sistema. Per esempio,
alcune soluzioni di interoperability del bus di servizio di impresa
sostengono JMX e possono segnalare tutti i problemi di servizio dal
Java EE o dall'applicazione del NET all'assistente
dell'amministrazione (assistente funzionante di MBean).
-
Il remediation la possibilità per recuperare il sistema
venente a mancare o per eseguire le azioni correttive
dell'amministrazione è molto cruciale a controllare le applicazioni
interoperable del NET del Java EE.
-
L'adattabilità la soluzione dell'amministrazione dovrebbe
essere facilmente estesa alle applicazioni supplementari di impresa
senza riguardo alle loro origini, Java EE, NET, o eredità.
Ulteriormente, il manageability dovrebbe essere controllato
secondo l'ambiente, lo sviluppo, la garanzia della qualità, lo
staging e la produzione. Determinata applicazione permettente o
inabilitante o annotare system-level dovrebbe essere effettuato fuori
dell'applicazione reale, cioè, nelle lime di configurazione o nella
sezione comandi centralizzata dell'amministrazione.
-
L'efficacia là dovrebbe essere un equilibrio fra annotare
e l'applicazione dichiara seguire e le prestazioni del sistema
generale.
-
Le informazioni annotanti annotanti forniscono l'input di
base a controllare i punti di integrazione fra una soluzione del
interoperate del NET del Java EE. La soluzione dovrebbe potere
raccogliere le informazioni annotanti da Java specifico EE e dai
componenti di servizio del NET, come pure dai punti di integrazione
(quale il ponticello) e dalla componente per l'amministrazione di
applicazione della soluzione interoperable.
ciò è un articolo aggiunto da Blerick Tawman