L'efficacité de while(true) ServerSocket Écouter

Je me demande si une typique while(true) ServerSocket écouter en boucle prend un ensemble de base d'attendre et d'accepter un client de connexion (Même lors de la mise en œuvre de exécutables, et à l'aide de Thread .start())

Je me suis mise en œuvre d'un type de l'informatique distribuée cluster et chaque ordinateur a besoin de tous les cœurs qu'il a pour le calcul. Un nœud Maître a besoin de communiquer avec ces ordinateurs (en invoquant des méthodes statiques qui modifie l'algorithme de fonctionnement).

La raison pour laquelle je besoin pour utiliser des sockets est due à la croix de plate-forme /croix capacités linguistiques. Dans certains cas, PHP va être l'appel de ces java des méthodes statiques.

J'ai utilisé un java profiler (YourKit) et je peux voir ma course ServerSocket écouter fil et il ne dort jamais et il est toujours en cours d'exécution. Est-il une meilleure approche de faire ce que je veux? Ou bien, l'impact sur les performances être négligeable?

N'hésitez pas à proposer des suggestions, si vous pouvez penser à une meilleure façon (j'ai essayé de RMI, mais il n'est pas pris en charge inter-langue.

Merci à tous

Donc ne devrait pas se produire si vous utilisez "accepter". Pouvez-vous mettre un peu de code?
erickson était sur place avec le code, il a affiché while (true) { Socket socket = server.accept(); /* Faire quelque chose avec socket... */ }
Combien de connexions/seconde gérez-vous?
Droit maintenant, pas beaucoup. Cependant, cela pourrait facilement se transformer en une douzaine. L'information transmise est très petite, donc il ne devrait pas être beaucoup actives simultanées sockets

OriginalL'auteur Submerged | 2010-05-17