Qual è l'origine delle sessioni, da chi e quando sono state create?

3

So che le sessioni sono in PHP, ASP, ASP.NET e probabilmente in molte altre lingue. Nella maggior parte dei casi la sessione risolve un problema che il linguaggio stesso non riesce a risolvere. Mi chiedo

  1. Chi ha creato le sessioni e quando sono state introdotte per la prima volta?
  2. Era prima una caratteristica di una determinata lingua?
  3. L'uso di sessioni è limitato ai soli browser Web? Oppure sono utilizzati anche nelle applicazioni desktop?
posta Noname 07.02.2012 - 19:47
fonte

2 risposte

10

I client Web (browser) comunicano con i server Web utilizzando un protocollo chiamato HTTP . HTTP è stato deliberatamente progettato per essere un protocollo stateless. , ovvero ogni richiesta e risposta è indipendente, il server non lo fa t mantenere alcun record di risposte completate e non collega le serie di richieste di un singolo utente. Perché HTTP è stato progettato per essere apolidi? In primo luogo perché rende i server HTTP molto più facili da progettare e codificare, e li rende molto meno impegnativi per la memoria. HTTP è stato progettato principalmente come sistema di memorizzazione delle informazioni e non esisteva quasi nessuna idea di utilizzarlo come piattaforma di programmazione delle applicazioni. Ancora oggi la maggior parte del traffico HTTP consiste di semplici richieste e risposte senza necessità di stato.

Intorno al 1992-93 la gente ha iniziato a scrivere applicazioni web (a differenza delle semplici pagine web). Si sono immediatamente imbattuti nella necessità di memorizzare lo stato dell'applicazione su più pagine. Hanno iniziato a scrivere estensioni al server web che potevano memorizzare e gestire lo stato utilizzando i cookie e la riscrittura degli URL per associare le richieste HTTP a sessioni particolari. Per quanto sia imbarazzante, ha la virtù della flessibilità. Se la gente che progettava HTTP avesse tentato di specificare un meccanismo di stato di uso generale, probabilmente avrebbe sbagliato e sarebbe rimasto bloccato come parte dello standard. ASP, PHP, JSP e gli altri linguaggi di scripting lato server sono la prole di quelle vecchie estensioni del server web.

Molte altre applicazioni di rete usano la nozione di una sessione (SSH e SMTP per esempio), ma i contenuti della sessione sono cablati ai dettagli di tale applicazione.

    
risposta data 07.02.2012 - 20:28
fonte
-2

Le sessioni sono una risposta a HTTP che è un protocollo terribile per la maggior parte del traffico internet. Le sessioni sono un mezzo per mantenere lo stato, che deve essere gestito in questo modo perché HTTP è un protocollo stateless, a differenza della maggior parte degli altri protocolli comunemente usati. È il risultato di una scelta sbagliata fatta molto tempo fa, che ha funzionato bene per quello che Internet era in quel momento, ma da allora ha causato molti più problemi, ma è troppo tardi per cambiare.

    
risposta data 07.02.2012 - 20:01
fonte

Leggi altre domande sui tag