Хочу узнать, использовал ли кто-нибудь решения для мусора в C++, и если да, то какие, и стоит ли затрачивать на это усилия, или проще будет самому управлять памятью?
Приветствую! Ситуация такая:
Есть 2 сервера, на каждом крутится по JBoss'у 4.2. На каждом JBoss'е вертится по приложению (пусть будут А и Б). Приложение А ходит к Б по EJB. Всё работает как надо.
Однако есть проблема:
У первого JBoss'а постепенно растёт время выполнения GC для young generation. Вскоре после запуска это время составляет 0.1 секунды, а через три дня уже 1.1 секунды. В результате чего растет нагрузка на сервер и уменьшается пропускная способность приложения. О настройках:
Используется -XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:NewSize=1024M -XX:MaxNewSize=1024M
При этом на JBoss'е с приложением Б всё хорошо.
Есть подозрение, что такой рост вызван тем, что А подключено к Б, т.к. подобная ситуация повторялась и на других JBoss'ах и приложениях.
Подскажите, пожалуйста, из-за чего могут расти эти паузы?