Comment sont les threads Java lourd par rapport à la Scala / Akka acteurs?

Je viens de comparer la performance de la scala acteurs vs les threads java.

J'ai été étonné de voir la différence, j'ai observé qu'avec mon système, j'ai pu frayer maximum de ~2000 threads (live à un moment), Mais avec le même système, j'ai pu frayer ~de 500 000 acteurs de la scala.

Les deux programmes utilisés autour de 81MB de mémoire dans la mémoire de la JVM.

Pouvez-vous expliquer Comment le fil de java sont à présent beaucoup de poids lourds que scala /akka acteurs?
Quel est le facteur clé qui a fait scala-acteur de cette quantité de lumière du poids?

Si je veux atteindre une meilleure extensibilité, dois-je aller pour l'acteur serveur web au lieu de java traditionnelle basée sur le web/serveur d'application comme JBoss ou Tomcat?

Grâce.

  • Quant à votre serveur web en question, cela dépend de ce que vous avez besoin. Il y a vraiment des solutions évolutives wrt à haut débit, basé sur NIO comme Netty, et qu'ils n'utilisent pas les acteurs. Avez-vous besoin d'une véritable serveur web? haut services de la circulation? D'intégration élevé avec la connaissance de cadres (jee, spring,...)? Les acteurs en général, et Akka 2.1 notamment avec la prise en charge des clusters, ou jouer! qui est basé sur akka, sont un "évolutif" de la solution, trop, mais il n'y a pas de solution miracle pour tous les scénarios. Cela dépend vraiment de vos besoins.