En temps réel des applications web avec mongodb et nodejs

J'ai pensé à la façon de faire en temps réel de l'application web à l'aide de nodejs/socket.io/mongodb. L'idée est assez similaire à google docs, où les objets édités sur une page sont émis et réaffichées sur tous les navigateurs clients.

Quelle est la meilleure façon de faire cela? De ce que j'ai lu, je pense, de 3 façons:

1) à l'Aide de mongodb oplogs

Ajouter un "auditeur" à mongodb collections, rerender parties de la page à chaque fois que des modifications sont apportées à la collecte (inconvénients: lent?)

2) à l'Aide de local json

Récupérer mongodb données en json fichier, utilisez la fs pour le modifier, l'enregistrer sur mongodb et supprimer json fois terminé (le contre: encombrant d'avoir couche supplémentaire entre la base de données et l'application réelle)

3) à l'Aide purement socket.io

Rerender sans stocker, enregistrer seulement après que toutes les modifications ont été apportées (cons: les fichiers sont probablement pas rendus correctement dans tous les navigateurs)

Est-il un meilleur moyen pour y parvenir? (Comment est-ce que google docs travail de toute façon?) Serait vraiment reconnaissant de toute aide n'importe qui peut offrir!

OriginalL'auteur Poh Zi How | 2016-12-29