8
votes

c # alternative à socket.io pour node.js

y a-t-il quelque chose comme socket.io (nœud.js) pour C #? J'ai besoin d'une version serveur de celui-ci.

Merci pour votre aide!


0 commentaires

6 Réponses :


-3
votes

Je ne pense pas qu'il n'y ait aucun cadre dans .NET qui a suscité l'assistance IO, comme Node.js ou EventMachine ou Python de Ruby Twisted: - (.


1 commentaires

@KAZIMANZURASHIDID: VAN CODING Demandait à un équivalent à Socket.io, pas nœud.js ...



8
votes

.NET a un certain nombre de façons de mettre en œuvre une conception 100% asynchrone similaire à node.js.

voir socket 's Beginsend / Remue- et plus performance SendAsync ou stream 's beginread / Débutwrite méthodes. Celles-ci sont toutes très similaires à node.js.

C # 5.0 apporte une nouvelle conception asynchronisation avec un soutien linguistique qui sera beaucoup plus facile à utiliser que ceux ci-dessus. Vous pouvez jouer avec une version bêta dans le ASYNC CTP .


2 commentaires

Les délégués et le nouveau C # async ne sont pas identiques que le cadre que j'ai mentionné. Ces cadres utilisent un seul thread non bloquant de l'autre côté de .NET Chaque client est traité par un fil séparé et c'est la différence fondamentale.


Oups, j'ai oublié ce nœud.js utilise un seul fil. Cependant, .NET ne gère pas chaque client sur un thread séparé - il utilise une piscine de thread et ne bloque jamais. Si vous vous verrouillez lorsque vous accédez à l'état mondial, vous devriez aller bien. En outre, le C # ASYNC CTP utilise tout le contexte d'exécution que vous démarrez les E / S IN - si votre contexte est uniformisé, il n'utilisera que ce thread unique pour toutes vos connexions.



0
votes

Cela vient d'être publié, une documentation et des exemples sont sur la route!

https://github.com/kayak/kayak https://groups.google.com/forum/#!topic/kayak-http/LXS_XH0QURM

Vous pouvez également vouloir vérifier http://superwebsocket.codeplex.com/

Je ne suis pas sûr que cela utilise un seul fil ou une piscine thread-piscine. Mais cela ne posera qu'un problème une fois que vous souhaitez avoir 1000 de connexions à la fois.


0 commentaires

4
votes

Il suffit de voir une vidéo de Mix11, où ils ont parlé de Manos de Mono. C'est un cadre C # modélisé après Tornadoweb avec une inspiration des cadres comme Node.js.

https://github.com/jacksonh/manos


0 commentaires

29
votes

Signalr

bibliothèque de signalisation Async pour .NET Pour créer des applications Web interactives multi-utilisateurs en temps réel.

https://github.com/signalr/signalr

Vous pouvez voir un exemple en direct de cela en jeu ici http://jabbr.net/

Vous aurez besoin d'IIS 8.0 pour obtenir des sockets Web, il utilise un interrogation long sur IIS 7.

Je pense qu'ils travaillent peut-être sur l'utilisation de https://github.com/davidfowl/fleck et https://github.com/davidfowl/signalr.fleck pour montrer comment utiliser Fleck Web Web Sacle Server avec SignalR


0 commentaires

3
votes

Il y a aussi une autre bibliothèque appelée xsockets

http://xsockets.net/

Ils comprennent également une baisse des navigateurs qui ne mettent pas en œuvre le Websocket protocole de recaisse via Flash


0 commentaires