14) Come
sono classificati i servizi nel modello cliente/servitore?
Servizio sequenziale vs servizio concorrente
- servizio sequenziale
- i clienti vedono i servizi effettuati uno alla volta
- il servitore considera le richieste una alla volta
- conseguenza: ritardi nel servizio stesso
- servizio concorrente
- i clienti vedono i servizi effettuati in modo concorrente
- il servitore considera le richieste insieme
- maggiore complessità progettuale del server
- NON è necessario il parallelismo nel server
Servizio con connessione (reliability) vs
servizio senza connessione
- servizio con connessione
- (usando TCP) la relazione tra la applicazione ed il servitore
garantisce continuità ed affidabilità
- costo superiore della realizzazione
- servizio senza connessione
- (usando UDP) la relazione tra la applicazione ed il servitore
è senza garanzia di continuità
- se si vogliono garantire ordinamento dei messaggi
e reliability, devono essere realizzate
Servizio con stato (stateful) vs servizio
senza stato (stateless)
- servizio con stato
- il servitore tiene traccia dello stato di interazione
dei servizi con i clienti
- maggiore complessità progettuale del server
- NON facile decidere lo stato in situazioni di concorrenza
- servizio senza stato
- il servitore considera le richieste e le dimentica appena
fornite
- i clienti devono tenere conto della interazione di servizio
- problemi nella gestione di richieste replicate senza
rieseguire il servizio