2016-09-06 20 views
10

Я только что установил SmartFoxServer.Темы всегда растут

Количество потоков в пуле потоков в панели мониторинга постоянно увеличивается после перезапуска Sfs и никогда не уменьшается до следующего перезапуска. Если я увеличиваю лимит пула потоков, количество потоков увеличивается до этого предела.

Любое расширение или услуги еще не запущены, а количество потоков увеличивается до 1232 за 10 минут. Таким образом, это не похоже на утечку памяти, потому что не используется код расширения, просто SmartFox.

Я пробовал версию 2.9, но результаты не менялись.

Что может привести к потокам Sfs такого поведения, даже не запустив расширение?

+0

У вас есть код, который вы используете? –

+0

@HorsSujet Даже если я не использую расширение, используется минимум 1040 потоков. –

ответ

1

У вас есть утечки памяти.

»утечки памяти

В Java утечка памяти происходит, когда объекты в памяти не не отпускают , даже если само приложение больше не нуждается в них. Обычный пример - это неиспользуемые прослушиватели событий, которые не удаляются из их события источник.

Если программа продолжает добавлять новые объекты-слушатели, но никогда не избавляется от тех, которые больше не используются, мы получим потенциально много отходов памяти. GC не сможет восстановить такую ​​память, потому что неиспользуемые прослушиватели по-прежнему ссылаются. Если эти объекты сохраняют нагромождение , мы увидим прогрессивную деградацию производительности, которая может закончиться сбоем JVM в .

Утечки памяти не всегда очень очевидны, чтобы найти, скрываясь в коде в течение довольно долгого времени, прежде чем они будут замечены. В других случаях утечки могут стать очень неприятными очень быстро, вызывая серьезные всплески в использовании памяти и, в конечном счете, в результате гибели процесса.
Источник: http://docs2x.smartfoxserver.com/AdvancedTopics/troubleshooting-live-server#mem

+0

Не следует ли это «утечка ресурсов» в этом контексте или «утечка памяти», достаточно обобщенная для покрытия этого сценария? – Av4t4r

+0

Я подумал об этом и переустановил сервер SmartFox без добавления какого-либо расширения или swf. Я даже не использую какой-либо код, но чистая установка SmartFox2 поставляется с 1040 потоками. –

+0

Вы пытались изменить config.xml? ' 5' –

0

Хорошее начало было бы попытаться определить, что все нити. Вы можете использовать jstack (включенный в JDK), чтобы получить дампы стека всех потоков, которые должны помочь вам открыть их цель и, надеюсь, уменьшить количество.

jstack -l JAVA_PID > jstack.out