Cela peut également appartenir à serverfault. Il est une sorte de combo entre config serveur et le code (je pense)Application Jruby Rails sur les pics d'utilisation du processeur Tomcat
Voici ma configuration:
Rails 2.3.5 app running on jruby 1.3.1
Service Oriented backend over JMS with activeMQ 5.3 and mule 2.2.1
Tomcat 5.5 with opts: "-Xmx1536m -Xms256m -XX:MaxPermSize=256m -XX:+CMSClassUnloadingEnabled"
Java jdk 1.5.0_19
Debian Etch 4.0
Courir top
, chaque fois que je clique sur un lien sur mon site, je vois mon pic d'utilisation du processeur java
processus . Si c'est une petite page, c'est parfois seulement 10% d'utilisation, mais parfois sur une page plus compliquée, mon processeur va jusqu'à 44% (jamais au-dessus, je ne sais pas pourquoi). Dans ce cas, une demande peut prendre plusieurs minutes, alors que le load average
de mon serveur grimpe régulièrement jusqu'à 8 ou plus. C'est juste en cliquant sur un lien qui charge quelques demandes de certains services, rien de trop compliqué. La mémoire de processus Java tourne autour de 20% la plupart du temps.
Si je le laisse un peu, la moyenne de la charge redescend à zéro. En cliquant sur quelques liens supplémentaires, on remonte. Je cours une petite instance d'amazon pour le frontend de rails et une grande instance pour tous les services.
Maintenant, cela est évidemment inacceptable. Un seul utilisateur peut faire grimper la moyenne de la charge à 8 et avec deux personnes l'utilisant, il maintient cette moyenne de charge pour la durée de notre utilisation du site. Je me demande ce que je peux faire pour inspecter ce qui se passe? Je suis à une perte complète quant à la façon dont je peux déboguer cela. (il ne se produit pas localement lorsque je lance l'application rails via jruby, pas à l'intérieur du conteneur tomcat)
Quelqu'un peut-il m'éclairer sur la façon dont je pourrais inspecter sur mon application jruby pour savoir comment il pourrait éventuellement être utilisé ces énormes ressources? Remarque, j'ai remarqué cela un peu avant, apparemment au hasard, mais maintenant, après la mise à jour de Rails 2.2.2 à 2.3.5 je le vois tout le temps et il rend le site complètement inutilisable.
Des conseils sur l'endroit où regarder sont grandement appréciés. Je ne sais même pas par où commencer.
Merci pour le conseil. Je suis en fait le gars rubis sur le devant donc je travaille toujours ma tête autour de java/activemq mais je vais jeter un coup d'oeil quand j'aurai la chance – brad