domanda su client/server
Thanks Thanks:  0
Pagina 1 di 3 123 UltimaUltima
Risultati da 1 a 10 di 25

domanda su client/server

  1. #1
    Partecipante SUPER-BIG!
    Data Registrazione
    Jun 2008
    Messaggi
    112

    Predefinito domanda su client/server

    ciao,
    da ignorante in materia,ho letto che un client e' un software che invia una richiesta di servizio ad un server il quale elabora i dati in ingresso restituendoli al client (mittente). Detto questo,mi pongo una domanda: si stabilisce una connessione tra i software? E i terminali non si connettono???? Non ho capito molto su questa cosa. Me la potete spiegare in modo elementare?
    grazie

  2. #2
    Partecipante SUPER-BIG!
    Data Registrazione
    Jun 2008
    Messaggi
    112

    Predefinito domanda su client/server

    ciao,
    da ignorante in materia,ho letto che un client e' un software che invia una richiesta di servizio ad un server il quale elabora i dati in ingresso restituendoli al client (mittente). Detto questo,mi pongo una domanda: si stabilisce una connessione tra i software? E i terminali non si connettono???? Non ho capito molto su questa cosa. Me la potete spiegare in modo elementare?
    grazie

  3. #3
    Il Sire L'avatar di AndreA
    Data Registrazione
    Apr 2003
    Località
    Rignano sull'Arno (FI)
    Messaggi
    26,232

    Predefinito

    su Wikipedia è spiegata in maniera veramente semplice (in troppo imho)

    Sistema client/server - Wikipedia


  4. #4
    Partecipante SUPER-BIG!
    Data Registrazione
    Jun 2008
    Messaggi
    112

    Predefinito

    CIAO Andrea,in realta' non mi e' chiaro questo concetto:

    "Un sistema client-server (letteralmente cliente-servente) è un'architettura di rete nella quale un computer client istanzia l'interfaccia utente di un'applicazione connettendosi ad una server application o ad un sistema di database."

    Che significa? Si connettono solo le applicazioni o anche i pc? In poche parole come funziona?

  5. #5
    Il Sire L'avatar di AndreA
    Data Registrazione
    Apr 2003
    Località
    Rignano sull'Arno (FI)
    Messaggi
    26,232

    Predefinito

    Citazione Originariamente Scritto da zorro28 Visualizza Messaggio
    Che significa? Si connettono solo le applicazioni o anche i pc? In poche parole come funziona?

    se mi fai queste domande mi sa che il problema è a monte...

    Guarda l'immagine, il "mezzo" di connessione è internet: programmi e computer sono nel sistema client/server, poi a sua volta un server è un'altra cosa hardware ovviamente. Si parla di un *sistema*, quale è il punto che ti manca?
    Lessicale o "fisico" (inteso come hardware)?

  6. #6
    Partecipante SUPER-BIG!
    Data Registrazione
    Jun 2008
    Messaggi
    112

    Predefinito

    ti spiego: quando parliamo di connessione,a cosa ci riferiamo? se un programma,per esempio,alle ore 12.00 deve inviare dei dati ad una app in esecuzione sul server,e' necessario che prima che lo faccia i due pc (client e server) siano collegati?

  7. #7
    Partecipante Logorroico L'avatar di gioi
    Data Registrazione
    May 2004
    Località
    Torino
    Messaggi
    3,545

    Predefinito

    Citazione Originariamente Scritto da zorro28 Visualizza Messaggio
    ciao,
    da ignorante in materia,ho letto che un client e' un software che invia una richiesta di servizio ad un server il quale elabora i dati in ingresso restituendoli al client (mittente). Detto questo,mi pongo una domanda: si stabilisce una connessione tra i software? E i terminali non si connettono???? Non ho capito molto su questa cosa. Me la potete spiegare in modo elementare?
    grazie
    Qui bisogna fare un distinguo tra "canale di comunicazione" ed "architettura di comunicazione".

    Il canale di comunicazione è quel mezzo fisico o virtuale mediante il quale è possibile far transitare l'informazione. Esempi tipici sono non solo i sistemi di fonia o internet, ma anche le poste, i piccioni viaggiatori ecc ecc

    Un'architettura di comunicazione invece è un insieme di regole che stabilisce come far interagire due "attori" (che possono tanto dispositivi, quanto persone reali), nell'ambito della comunicazione.

    Essenzialmente questo significa che il processo di controllo definito dall'architettura di comunicazione esula il controllo del canale di comunicazione. In parole semplici il canale di comunicazione deve esistere (e funzionare) indipendentemente dall'architettura, anche se questa non lo sta sfruttando. Ovviamente è possibile ricorrere a meccanismi di comunicazione su richiesta (in gergo "dial-up"), che provvedano ad attivare nel momento in cui un'applicazione ne faccia richiesta, ed a disattivarlo a comunicazione ultimata. Ma sono meccanismi esterni all'architettura di comunicazione (anche se possono essere, per comodità) integrati, almeno parzialmente, nell'applicazione.

    Andando nello specifico l'architettura di comunicazione stabilisce le regole di interazione tra due agenti. Si distinguono, tra le altre, due filosofie di base principali: Comunicazione Master/Slave e Comunicazione Client(Server. La differenza sostanziale tra le due filosofie è il "sincronismo". Nelle architetture Master/Slave un dispositivo alla volta impegna il canale, prendendo il ruolo di Master, trasmette un messaggio che viene ricevuto da uno o più slave che rispondono secondo una gerarchia prestabilita. La Comunicazione si conclude quando l'ultimo messaggio di risposta da uno slave giunge al Master o scade un timeout. Va sottolineato che in questo tipo di architettura il ruolo di Master o Slave è dinamico, in quanto in ogni "sessione" il Master è il dispositivo che inizia la comunicazione.
    Nelle architetture Client/Server invece il ruolo di Client e di Server è definito a priori, ed è legato al concetto di servizio. Il Server è l'agente o dispositivo che espone un determinato servizio su un canale di comunicazione ed i client sono gli agenti o dispositivi che ne usufruiscono, anche in maniera simultanea. La differenza sostanziale risiede appunto nel sincronismo della trasmissione: la comunicazione si considera conclusa ogni volta che uno dei due attori invia correttamente un messaggio oppure riceve un timeout di connessione. L'elaborazione dell'eventuale risposta (che non è obbligatoria) ed il successivo invio, dilazionato nel tempo, costituisce una nuova comunicazione.

    Quali sono i vantaggi dell'una o dell'altra?
    Tipicamente l'architettura Master/Slave si usa quando si devono stabilire comunicazioni, per così dire "vitali", in cui bisogna assicurarsi che le richieste vengano sempre evase dal dispositivo destinatario. Tutte le comunicazioni seriali a basso livello (Spi, I2c ecc ecc) sono di tipo Master/Slave.
    L'architettura Client/Server si usa tipicamente quando occorre servire più dispositivi simultaneamente, ovvero quando l'elaborazione da parte del server di una richiesta proveniente da un client, richiede un certo tempo, e non si vuole "bloccare" il canale di comunicazione rendendolo disponibile anche ad altre richieste. Tipicamente la maggior parte delle comunicazioni di rete si basano su architettura client/server.

    In tutto questo il canale di comunicazione è qualcosa di esterno, di cui bisogna però conoscere i parametri, per poterlo sfruttare.

    Viste le lacune dimostrate, per una migliore comprensione suggerisco uno sguardo al modello ISO/OSI, che, appunto, dà uno schema di base sul funzionamento delle comunicazioni in ambito informatico.

    Open Systems Interconnection - Wikipedia
    Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to build bigger and better idiots. So far, the universe is winning.
    My Blog: Antonio's WeBlog


  8. #8
    Partecipante SUPER-BIG!
    Data Registrazione
    Jun 2008
    Messaggi
    112

    Predefinito

    mammamia ora ho la testa ancora piu' confusa!!!!!
    Una domanda: se un cellulare e' gia' connesso ad internet e un'app ha bisogno di collegarsi alla rete,lo puo' fare?
    Ha senso dire che un'app si collega alla rete?

  9. #9
    Partecipante Mistico L'avatar di andrea76
    Data Registrazione
    Jun 2004
    Località
    ROMA
    Messaggi
    259

    Predefinito

    Detta in parole un po' più semplici...
    il server è quella macchina (computer) che contiene le informazioni o le funzioni necessarie al client (altro computer, cellulare, consolle o frigorifero che fa la spesa via internet che sia) affinchè quest'ultimo possa eseguire determinate operazioni; ad esempio, se da pc vuoi controllare il tuo estratto conto bancario, una volta inserite le credenziali di accesso (username e password) il server della banca verifica che queste siano corrette e permette al tuo pc (client) di avere accesso ai dati che ti servono.
    Se, a livello più piccolo, hai in casa o in ufficio 2 pc collegati fisicamente in rete tra loro (tramite cavo di rete o via wireless) ed, avendo la stampante collegata ad uno solo dei due, hai la necessita di stampare qualcosa dall'altro hai la possibilità di trasmettere da un pc (client) all'altro (server di stampa) i dati da stampare.
    Arrivando alla tua ultima domanda, il tuo telefono, se connesso ad internet, lo fa attraverso una serie differente di server ognuno con una funzione specifica (la parola stessa internet significa "collegamento tra reti") ed è quindi giusto affermare che il tuo telefono è un client connesso in rete ad altri server. Se poi usi un'applicazione i cui dati sono su internet (ad esempio facebook) il tuo telefono si collegherà attraverso l'app al server di Facebook e questo trasmetterà al tuo telefono (client) le informazioni e gli aggiornamenti che ti sono necessari.
    Spero di essere stato sufficientemente chiaro
    Se il tuo lume brilla più degli altri siine felice, ma non spegnere mai il lume degli altri per far brillare il tuo.
    Ci sono solo due cose infinite, l'universo e la stupidità umana; ma sul primo ho ancora dei dubbi. (Albert Einstein)

  10. #10
    Partecipante Logorroico L'avatar di gioi
    Data Registrazione
    May 2004
    Località
    Torino
    Messaggi
    3,545

    Predefinito

    Citazione Originariamente Scritto da andrea76 Visualizza Messaggio
    Detta in parole un po' più semplici...
    il server è quella macchina (computer) che contiene le informazioni o le funzioni necessarie al client (altro computer, cellulare, consolle o frigorifero che fa la spesa via internet che sia) affinchè quest'ultimo possa eseguire determinate operazioni; ad esempio, se da pc vuoi controllare il tuo estratto conto bancario, una volta inserite le credenziali di accesso (username e password) il server della banca verifica che queste siano corrette e permette al tuo pc (client) di avere accesso ai dati che ti servono.
    Se, a livello più piccolo, hai in casa o in ufficio 2 pc collegati fisicamente in rete tra loro (tramite cavo di rete o via wireless) ed, avendo la stampante collegata ad uno solo dei due, hai la necessita di stampare qualcosa dall'altro hai la possibilità di trasmettere da un pc (client) all'altro (server di stampa) i dati da stampare.
    Arrivando alla tua ultima domanda, il tuo telefono, se connesso ad internet, lo fa attraverso una serie differente di server ognuno con una funzione specifica (la parola stessa internet significa "collegamento tra reti") ed è quindi giusto affermare che il tuo telefono è un client connesso in rete ad altri server. Se poi usi un'applicazione i cui dati sono su internet (ad esempio facebook) il tuo telefono si collegherà attraverso l'app al server di Facebook e questo trasmetterà al tuo telefono (client) le informazioni e gli aggiornamenti che ti sono necessari.
    Spero di essere stato sufficientemente chiaro
    Scusami se mi permetto, ma la tua spiegazione è errata, soprattutto dove dici che il telefono è un client connesso a server.

    Il Telefono non è un client, il telefono è un terminale, e come tale può comportarsi allo stesso tempo sia da Server che da Client.

    Se è vero che la maggior parte delle applicazioni installate sui cellulari agiscono da client, che si collegano verso Server (ad esempio il browser è un client http, facebook è un client social ecc ecc), un terminale mobile contiene al suo interno una serie di "Server" indispensabili per l'operatività

    Ad esempio, parlando di smartphone Android, tutte le informazioni personali sono registrate in un substrato "server" che funge da DataBase SQL (un motore sqlite, per l'esattezza), ed è questo substrato server che, alla fine, si connette ai server remoti, sincronizzando le applicazioni, e rendendole disponibili anche in modalità offline.

    Ed il meccanismo di sincronizzazione, come si può facilmente intuire, fa si che entrambi gli "attori" in gioco si scambino i ruoli Client/Server secondo le informazioni che si devono scambiare!

    iOS e Winphone (ma anche Blackberry) non sono differenti (cambia il motore, ma il principio è lo stesso: il terminale ha un cuore "server" che si occupa della sincronizzazione dei dati).

    Un Telefonino è un terminale, non è in sé né un client né un server... è l'applicazione specifica che funge da client o server secondo l'utilizzo che se ne fa...

    Qualche esempio?

    - Il bluetooth: vivavoce e stream audio si connettono ad un server audio gestito dal telefonino.
    - Servizi di condivisione dei contenuti multimediali (DLNA, Condivisione File Smb/Cifs, ObexFTP)... sono tutti basati su server presenti sul terminale.
    - SMS/MMS/Mail in uscita: gestiti dal server di posta in uscita.
    - Il Layer grafico: è un server cui le applicazioni si connettono per disegnare l'interfaccia ecc ecc
    - Il layer audio/video: idem come sopra.

    Dire quindi che un terminale è un client è essenzialmente sbagliato... Anche perché il terminale è un mezzo fisico/virtuale, mentre i client/server sono applicazioni che girano sui terminali (o su mainframe ed altri dispositivi).

    Quello che l'utente non ha chiaro è che la connessione client/Server non implica necessariamente la connessione ad un terminale remoto, ma nella stragrande maggioranza dei casi, è riferita a connessioni a servizi (da cui Server) presenti sul medesimo terminale, che in qualche maniera si "sincronizzano" con il mondo esterno.

    Per essere più precisi alla domanda:

    Una domanda: se un cellulare e' gia' connesso ad internet e un'app ha bisogno di collegarsi alla rete,lo puo' fare?
    Ha senso dire che un'app si collega alla rete?
    Dunque un terminale (smartphone/cellulare) non è connesso ad internet, ma ad una "cella" (da cui rete cellulare), che funge da "porta di accesso" (gateway) alla rete Internet. Il cellulare non è perciò "connesso ad internet" (a meno, ovviamente di non usare il wifi), ma ad una rete che "media" la connessione ad internet.
    Un Applicazione (client) che ha bisogno di accedere ad un determinato servizio, fa una richiesta al sistema di gestione delle connessioni del cellulare che decide se e come instradare la richiesta (rete cellulare o wireless).
    L'applicazione non si collega cmq alla rete, ma ad un servizio interno che, in gergo, fa da "proxy" alla connessione. Questo gli permette, per esempio, di accedere alle informazioni pur non essendo online.
    Le applicazioni mobile sono diverse da quelle del pc, e raramente sono concepite per un accesso diretto alla rete. C'è sempre un substrato (più o meno controllabile) che decide se e quando fare accesso alla rete per cercare i dati richiesti dall'applicazione.

    Esempio classico? Google Maps, che si basa su una cache locale... quando però si effettua una ricerca di un oggetto al di fuori della cache locale, deve "aggiornarla" per permettere al client di soddisfare la richiesta dell'utente.
    Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to build bigger and better idiots. So far, the universe is winning.
    My Blog: Antonio's WeBlog


Permessi di Scrittura

  • Tu non puoi inviare nuove discussioni
  • Tu non puoi inviare risposte
  • Tu non puoi inviare allegati
  • Tu non puoi modificare i tuoi messaggi
  •  
Mondo3 Social