Lato client, Javascript e Ajax.
Lato server, una miriade di stack tecnologici diversi ... Come Raynos ha eluso nel suo commento, praticamente qualsiasi cosa può essere usata per costruire un'applicazione web in tempo reale ...
Potresti usare un server web (come Apache) per mediare la comunicazione tra i tuoi clienti e i dati, ma non necessariamente. Puoi anche scrivere la tua gestione HTTP su un server piuttosto che occuparti del sovraccarico dell'utilizzo di un server web di terze parti. Alcuni esempi potrebbero essere (supponiamo Javascript / AJAX lato client per ciascuno):
Language / Interface / Server
-------------------------------
Python / WSGI / nginx
Javascript / - / node.js
C++ / FastCGI / Apache
Erlang / - / Yaws (embedded)
PHP / mod_php / Apache
Ancora una volta, questi sono solo alcuni esempi di possibilità. Le possibili permutazioni di stack tecnologici per l'implementazione di soluzioni lato server sono praticamente infinite.
Modifica
Silly me. HTML5 è probabilmente la più grande aggiunta allo stack tecnologico sul lato client che consente applicazioni web ricche al giorno d'oggi. L'aggiunta di funzionalità come l'audio (Firefox ha persino esposto i dati audio per consentire visualizzazione di uno spettro audio tramite Javascript ), video , database (WebSQL, IndexedDB), filesystem (sandbox sulla maggior parte dei browser, accesso completo al sistema disponibile in Firefox tramite componenti XPCOM), WebGL e WebSockets sono solo alcune delle grandi aggiunte che HTML5 ha portato con sé.