Cita: siendo el servidor el que devuelva la info cuando se haya producido algun cambio en el
mas o menos te lo imaginas bien
el tema de las notificaciones no se como funcionará no me he fijado nunca, pero fijate en el chat por ejemplo
como bien dices no podemos estar realizando para cada usuario conectado y cada conversación abierta consultas continuas a la base de datos, saturariamos el servidor con peticiones superfluas, para eso tienes una cosa llamada sockets xml eso hace mas o menos lo que he citado ahí arriba.
http://en.wikipedia.org/wiki/XMLSocket
con html y javascript así a secas no podras crearlo, para eso necesitarás flash haciendo de puente (a no ser que lo quieras desarrollar directamente en flash), en el de facebook no lo llegué a encontrar pero en otras webs con chats que parecían en html puedes encontrar un swf de 1x1 bien escondido.
aqui hay un ejemplo sencillito de como crear un chat utilizando sockets, no es exactamente lo que deseas pero el principio es el mismo.
http://www.kirupa.com/developer/flas...ets_flash8.htm
está un poco anticuado ya, pero te servirá para iniciarte y una vez hayas comprendido como funcionan buscarte otros ejemplos ya mas actuales y adaptar lo que has aprendido a lo que deseas realizar.
suerte