2010-02-24 6 views
0

Je développe un système qui comprend une application serveur & une application client, note: le nombre de clients peut être de millions. Ce sont mes exigences:Aidez-moi une solution pour une application en temps réel .NET

  • Le client doit s'authentifier (nom d'utilisateur & mot de passe) au serveur pour être accepté connexion. Et le client écoutera le serveur et recevra toutes les données envoyées par le serveur.
  • Lorsque le serveur contient des données, le serveur les envoie à tous les clients connectés.

S'il vous plaît aidez-moi une solution. Remarque: le client est une application WinForm et le serveur est n'importe quel type d'application auquel il peut envoyer des données à tous les clients connectés. P/S: Pour l'instant, mon projet utilise .NET Remoting mais il ne convient pas à mes besoins car le serveur ne peut pas envoyer de données aux clients. Je fais un tour: Chaque client enverra une requête au serveur toutes les 2 secondes une fois pour vérifier que le serveur a de nouvelles données ou non. Si oui, le client recevra des données. J'ai besoin d'une nouvelle solution à remplacer.

Merci.

+0

J'ai modifié ma question. Peut-être que tout le monde peut comprendre. Désolé pour mon mauvais anglais. –

Répondre

0

Si vous utilisez des services Web, je pense que cela ne peut pas être accompli car il est toujours synchrone.

+0

Ils peuvent être asynchrones avec un peu de travail. –

2

Eh bien, vous devez commencer par vous poser une question importante, est-ce qu'un intervalle d'interrogation de 2 secondes est vraiment une exigence? Pouvez-vous le rendre moins fréquent. Voulez-vous utiliser une interrogation fréquente, ou préférez-vous utiliser une autre technique, telle que l'interrogation longue (si une connexion est maintenue ouverte jusqu'à ce qu'il y ait de nouvelles données, puis qu'elle soit fermée et recréée) ou une vraie comète/Configuration PUSH où la connexion est toujours ouverte.

Une autre question importante est de savoir à combien va se situer ce site, quelques utilisateurs? cent, un million ?!

+0

Je pensais totalement à l'application web, mais si c'est une application winforms/wpf, alors je m'en remets à willbt. –

+0

Je préfère utiliser une longue interrogation. Lorsque le client est connecté au serveur, il écoute et lorsque le serveur a de nouvelles données, le serveur envoie au client et le client fonctionne avec ces nouvelles données. P/S: Mon application est un terminal boursier en temps réel, avec un million d'utilisateurs. Le client est une application WinForm. Le serveur est un service de fenêtre. Évident, en temps de négociation, le serveur aura toujours de nouvelles données (données en temps réel). Mais après les heures de négociation, le serveur n'aura pas de nouvelles données. –

0

Avez-vous regardé Jabber (XMPP)? Votre besoin semble sur mesure, c'est-à-dire que vous pouvez déclencher un envoi en fonction de certains événements, etc., plus un transfert de données avec état, etc.

+0

pas besoin de polling ... – Mikos

Questions connexes