44 votes

SignalR vs. Extensions Réactives

Est-ce que SignalR est la même chose que Reactive Extensions? Pouvez-vous expliquer pourquoi ou pourquoi pas?

98voto

Pavel Gatilov Points 4334

Non, ce ne sont vraiment pas la même chose.

Reactive Extensions est une bibliothèque permettant de créer et de composer des flux observables de données ou d'événements (qui sont en fait assez similaires). Elle ne sait en gros rien des connexions client-serveur ou autres choses. Elle se concentre uniquement sur les Observable et est capable d'encapsuler n'importe quelle collection, flux, événement, méthode asynchrone, etc. dans l'interface commune des Observable.

SignalR est une boîte à outils permettant de créer des connexions duplex persistantes (c'est-à-dire actives) entre le client et le serveur. Elle fonctionne via HTTP et son but est d'encapsuler 3 techniques de bas niveau: le long polling, les événements côté serveur et les web sockets dans une API de haut niveau pour un développement confortable. Ainsi, elle se concentre sur la communication.

Donc, les composants eux-mêmes sont assez indépendants les uns des autres, et ont des préoccupations complètement différentes.

En revanche, ces 2 excellentes bibliothèques se complètent mutuellement : on peut utiliser SignalR pour envoyer des événements du serveur aux clients, puis encapsuler les événements côté serveur dans les Observable de RX pour créer des expériences utilisateur réactives complexes.

MISE À JOUR

Rx est comme LINQ, il vous aide à spécifier 'ce qui se passe', sans s'attarder sur 'comment'. SignalR est une bibliothèque pour implémenter le 'comment' pour la communication en réseau en temps réel – Paul Betts

La différence entre 'LINQ sur les objets' et RX est que dans 'LINQ sur les objets' vous extrayez les prochains éléments d'une chose énumérable, tandis que dans RX ils vous sont poussés depuis une chose observable.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X