forum.bitel.ru
http://forum.bitel.ru/

[6.0] BGDHCP_IPN стал подвисать (CRM)
http://forum.bitel.ru/viewtopic.php?f=7&t=8790
Страница 1 из 1

Автор:  crez [ 24 дек 2013, 16:22 ]
Заголовок сообщения:  [6.0] BGDHCP_IPN стал подвисать

Стал подвисать dhcp сервер. (BGDHCP_IPN_6.0_160.zip)

dhcp.out
Код:
ok
Exception in thread "Thread-9170" java.lang.OutOfMemoryError: Java heap space
        at java.io.BufferedReader.<init>(Unknown Source)
        at java.io.BufferedReader.<init>(Unknown Source)
        at javax.xml.parsers.FactoryFinder.findJarServiceProvider(Unknown Source)
        at javax.xml.parsers.FactoryFinder.find(Unknown Source)
        at javax.xml.parsers.SAXParserFactory.newInstance(Unknown Source)
        at ru.bitel.common.XMLUtils.parseDocument(XMLUtils.java:393)
        at bitel.billing.server.ext.dhcp.DHCPRelayProcessor.adminCommand(DHCPRelayProcessor.java:1091)
        at bitel.billing.server.ext.dhcp.DHCPAdminSocketThread.run(DHCPAdminSocketThread.java:45)
Exception in thread "Thread-9171" java.lang.OutOfMemoryError: Java heap space
        at java.io.BufferedReader.<init>(Unknown Source)
        at java.io.BufferedReader.<init>(Unknown Source)
        at javax.xml.parsers.FactoryFinder.findJarServiceProvider(Unknown Source)
        at javax.xml.parsers.FactoryFinder.find(Unknown Source)
        at javax.xml.parsers.SAXParserFactory.newInstance(Unknown Source)
        at ru.bitel.common.XMLUtils.parseDocument(XMLUtils.java:393)
        at bitel.billing.server.ext.dhcp.DHCPRelayProcessor.adminCommand(DHCPRelayProcessor.java:1091)
        at bitel.billing.server.ext.dhcp.DHCPAdminSocketThread.run(DHCPAdminSocketThread.java:45)
Exception in thread "Thread-9172" java.lang.OutOfMemoryError: Java heap space
        at java.nio.HeapByteBuffer.<init>(Unknown Source)
        at java.nio.ByteBuffer.allocate(Unknown Source)
        at sun.nio.cs.StreamDecoder.<init>(Unknown Source)
        at sun.nio.cs.StreamDecoder.<init>(Unknown Source)
        at sun.nio.cs.StreamDecoder.forInputStreamReader(Unknown Source)
        at java.io.InputStreamReader.<init>(Unknown Source)
        at javax.xml.parsers.FactoryFinder.findJarServiceProvider(Unknown Source)
        at javax.xml.parsers.FactoryFinder.find(Unknown Source)
        at javax.xml.parsers.SAXParserFactory.newInstance(Unknown Source)
        at ru.bitel.common.XMLUtils.parseDocument(XMLUtils.java:393)
        at bitel.billing.server.ext.dhcp.DHCPRelayProcessor.adminCommand(DHCPRelayProcessor.java:1091)
        at bitel.billing.server.ext.dhcp.DHCPAdminSocketThread.run(DHCPAdminSocketThread.java:45)

При этом dhcp.log бежит (видно через tailf). Адреса выдаются, но вяло.
В такой момент перестают отвечать шлюзы (свитчи), т.к. они все дочерние к этому dhcp.
Попытка посмотреть статус (dhcp_status.sh) или остановить (dhcp_stop.sh) сервер невозможно.
Помогает лишь kill -9
Добавил в настройки нитей до 20 и памяти до 512 - проработал почти 3-е суток.
Вот конфиг:
Код:
[root@home BGDHCP_IPN]# cat ./dhcp.properties
processor.class=bitel.billing.server.ext.dhcp.DHCPRelayProcessor

admin.port=1868

dhcp.thread.count=20

dhcp.data.save.delay=3600
dhcp.data.save.period=3600

dhcp.server.identifier=193.169.62.2
#dhcp.option.42=C1A93E11
dhcp.option.42=0A000001

#▒▒▒▒▒ ▒▒▒ ▒▒▒▒ 193.169.62.32/27
#net.1.ip=193.169.62.32
#net.1.bits=27
#net.1.dhcp.router=193.169.62.33
#net.1.dhcp.subnetMask=255.255.255.224

#▒▒▒▒▒ ▒▒▒ ▒▒▒▒ 193.169.63.0/24
net.2.ip=193.169.63.0
net.2.bits=24
net.2.dhcp.router=193.169.63.1
net.2.dhcp.subnetMask=255.255.255.0

#▒▒▒▒▒ ▒▒▒ ▒▒▒▒ 176.114.48.0/24
net.3.ip=176.114.48.0
net.3.bits=24
net.3.dhcp.router=176.114.48.1
net.3.dhcp.subnetMask=255.255.255.0

#▒▒▒▒▒ ▒▒▒ ▒▒▒▒ 176.114.51.0/24
net.4.ip=176.114.51.0
net.4.bits=24
net.4.dhcp.router=176.114.51.1
net.4.dhcp.subnetMask=255.255.255.0

Сам dhcp.sh
Код:
[root@home BGDHCP_IPN]# cat ./dhcp.sh
#!/bin/sh

JAVA_HOME=/opt/java/jdk
#JAVA_HOME=/usr

if [ -z "$JAVA_HOME" ]; then
 echo "The JAVA_HOME environment variable is not defined"
 echo "This environment variable is needed to run this program"
 exit 1
fi

BGDHCP_IPN_HOME=.
CLASSPATH=${BGDHCP_IPN_HOME}:$BGDHCP_IPN_HOME/lib/*

for i in "$BGDHCP_IPN_HOME/lib"/*.jar; do
 CLASSPATH="${CLASSPATH}":"$i"
done

if [ "$1" = "start" ]; then
 nohup ${JAVA_HOME}/bin/java -Djava.net.preferIPv4Stack=true -Xmx1024m -cp ${CLASSPATH} bitel.billing.server.ext.dhcp.DHCP $1 $2 $3 $4 $5 $6 > ./log/dhcp.out 2>&1 &
 else
 ${JAVA_HOME}/bin/java -Djava.net.preferIPv4Stack=true -Xmx1024m -cp ${CLASSPATH} bitel.billing.server.ext.dhcp.DHCP $1 $2 $3 $4 $5 $6
fi

Я теперь памяти еще побольше дал ему.

В чем может быть причина?

ADD:
Код:
[root@home BGDHCP_IPN]# /opt/java/jdk//bin/java -version
java version "1.6.0_45"
Java(TM) SE Runtime Environment (build 1.6.0_45-b06)
Java HotSpot(TM) 64-Bit Server VM (build 20.45-b01, mixed mode)

Автор:  stark [ 21 янв 2014, 12:51 ]
Заголовок сообщения:  Re: [6.0] BGDHCP_IPN стал подвисать (CRM)

покажите еще статус в тот момент, когда он памяти много отъел ..И снимите в этот момент jstack
http://wiki.bitel.ru/index.php/%D0%92%D ... 0%B8%D0%B9

Снять jstack надо снять несколько раз с интервалом несколько минут и прикрепите результаты сюда.

Автор:  stark [ 21 янв 2014, 13:41 ]
Заголовок сообщения:  Re: [6.0] BGDHCP_IPN стал подвисать (CRM)

проверил у себя, просто от dhcp запросов память не течет .Возможно нужно будет снять еще и jmap(по той же ссылке описание), но его лучше сюда не прекрепелять. Вы бы написали лучше в helpdesk.

Автор:  crez [ 29 янв 2014, 12:58 ]
Заголовок сообщения:  Re: [6.0] BGDHCP_IPN стал подвисать (CRM)

Эх, жаль, что только сегодня в тему заглянул. Как раз 27-го был снова подвис.
Постараюсь снять jstack, как только снова произойдет.

Страница 1 из 1 Часовой пояс: UTC + 5 часов [ Летнее время ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/