forum.bitel.ru http://forum.bitel.ru/ |
|
Server на порту 8443 виснет http://forum.bitel.ru/viewtopic.php?f=22&t=5842 |
Страница 1 из 2 |
Автор: | jack7 [ 01 сен 2011, 20:47 ] |
Заголовок сообщения: | Server на порту 8443 виснет |
Перенес биллинг на 64-битную систему Java на сервере Цитата: java version "1.6.0_18" OpenJDK Runtime Environment (IcedTea6 1.8.7) (6b18-1.8.7-2~squeeze1) OpenJDK 64-Bit Server VM (build 14.0-b16, mixed mode) Биллинг Цитата: Клиент: вер. 5.1 сборка 569 от 11.07.2011 18:42:55 os:Linux; java:Sun Microsystems Inc., v.1.6.0_18 Сервер: вер. 5.1 сборка 690 от 11.07.2011 18:42:40 os:Linux; java:Sun Microsystems Inc., v.1.6.0_18 После неопределенного времени работы зависает порт 8443, то есть на него не идут соединения (админка на порт 8443 висит) С консоли при попытке подключения такая картина Цитата: OpenSSL> s_client -host 192.168.x.x -port 8443 -verify -debug verify depth is 0 CONNECTED(00000003) server.error.log пуст ps Правиться (временно) рестартом биллинга |
Автор: | jack7 [ 01 сен 2011, 22:36 ] |
Заголовок сообщения: | Re: Server на порту 8443 виснет |
возможно проблема появилась из-за того что утром обновился пакет системы "ca-certificate" ps apache2 на https работает без пролем, как и биллинг через порт 8080 |
Автор: | skyb [ 02 сен 2011, 03:01 ] |
Заголовок сообщения: | Re: Server на порту 8443 виснет |
стоп, а зачем админка то на 8443 порт? это ж для коннекта клиентов с сервером |
Автор: | jack7 [ 02 сен 2011, 08:23 ] |
Заголовок сообщения: | Re: Server на порту 8443 виснет |
8443 порт - порт для клиентской части биллинга (админка), с помошью которой биллинг управляется в отличии от 8080 данные по нему передаются с использованием SSL. Абоненты могут заходить на любой из этих портов через браузер. |
Автор: | skyb [ 02 сен 2011, 09:39 ] |
Заголовок сообщения: | Re: Server на порту 8443 виснет |
просто есть порт управления (по умолчанию 2005) я думал вы про него. |
Автор: | dimOn [ 02 сен 2011, 14:20 ] |
Заголовок сообщения: | Re: Server на порту 8443 виснет |
OpenJDK официально не поддерживается, даже если проблема этого топика и не в этом. |
Автор: | jack7 [ 05 сен 2011, 22:13 ] |
Заголовок сообщения: | Re: Server на порту 8443 виснет |
предполагаю дело не в jdk, сервер работал больше недели нормально до дня Х проблема скорее всего связана с обновлением ca-certificate ca-certificate-java |
Автор: | georgdts [ 06 сен 2011, 11:09 ] |
Заголовок сообщения: | Re: Server на порту 8443 виснет |
В первую очередь все дело в ![]() хоть и офтоп... |
Автор: | snark [ 06 сен 2011, 15:48 ] |
Заголовок сообщения: | Re: Server на порту 8443 виснет |
Мопед Ваш или просто разместили объяву? |
Автор: | jack7 [ 14 сен 2011, 16:27 ] |
Заголовок сообщения: | Re: Server на порту 8443 виснет |
dimOn писал(а): OpenJDK официально не поддерживается, даже если проблема этого топика и не в этом. документация писал(а): Замечание Вместо JRE вы можете использовать JDK (Java-машина + набор утилит для разработки). В случае возникновения проблем с серверными приложениями JDK предоставляет набор инструментов для отладки и локализации проблемы. Новости писал(а): 09.09.2011 Уважаемые клиенты, настоятельно не рекомендуем вам использовать Java 1.7.х для наших продуктов, т.к. возможна некорректная работа. Рекомендуемая версия Java - 1.6.0, последние обновления. Нигде не нашел про рекомендацию не использовать JDK |
Автор: | skyb [ 15 сен 2011, 03:03 ] |
Заголовок сообщения: | Re: Server на порту 8443 виснет |
Не JDK (sun JDK) а OpenJDK использовать нельзя, это разные реализации. |
Автор: | stark [ 15 сен 2011, 13:08 ] |
Заголовок сообщения: | Re: Server на порту 8443 виснет |
Да, openjdk не стоит пользоваться |
Автор: | jack7 [ 15 сен 2011, 13:51 ] |
Заголовок сообщения: | Re: Server на порту 8443 виснет |
в таком случае это надо четко указать в документации |
Автор: | skyb [ 15 сен 2011, 13:53 ] |
Заголовок сообщения: | Re: Server на порту 8443 виснет |
jack7 писал(а): в таком случае это надо четко указать в документации а я вот загружал яву с ссылки на офф сайте разработчиков и не парился ![]() |
Автор: | jack7 [ 15 сен 2011, 13:59 ] |
Заголовок сообщения: | Re: Server на порту 8443 виснет |
устанавливать на сервер стороннее ПО в обход системных менеджеров пакетов для меня моветон если это необходимо - конечно установлю, только обновления прийдется делать руками и при общем обновлении пакетов любые обновления java пройдут стороной укажите, пожалуйста, момент с openjdk в документации, чтобы другие не тратили свое время спасибо |
Автор: | skyb [ 15 сен 2011, 14:26 ] |
Заголовок сообщения: | Re: Server на порту 8443 виснет |
jack7 писал(а): если это необходимо - конечно установлю, только обновления прийдется делать руками и при общем обновлении пакетов любые обновления java пройдут стороной ага, а ещё я помню кажется 26 апдейт, када если его все установив поломалось, и вот седьмая ява тоже....ну да ладно, это ваше дело, по мне так обновлятся только при необходимости и все, а иначе пусть работает нетрож (с) |
Автор: | stark [ 16 сен 2011, 11:16 ] |
Заголовок сообщения: | Re: Server на порту 8443 виснет |
jack7 писал(а): устанавливать на сервер стороннее ПО в обход системных менеджеров пакетов для меня моветон если это необходимо - конечно установлю, только обновления прийдется делать руками и при общем обновлении пакетов любые обновления java пройдут стороной Скажите спасибо ораклу, я ставил у себя в убунту sun-кую яву из репозитория , но судя по новостям они запретили это недавно . jack7 писал(а): укажите, пожалуйста, момент с openjdk в документации, чтобы другие не тратили свое время спасибо Цитата: 3) Установите (если нет) JRE (JAVA машина), последнюю версию можно найти по адресу http://java.sun.com/j2se, либо вы можете загрузить её с нашего сайта. JAVA - язык на котором написан биллинг является интерпретируемым и запускается с помощью специальной программы JAVA - машины. Для нормальной работы необходимо JRE версии 1.6.0 либо выше. http://bgbilling.ru/v5.1/doc/ch01s04.html так не напиcано что можно ставить openjdk. |
Автор: | jack7 [ 16 сен 2011, 11:26 ] |
Заголовок сообщения: | Re: Server на порту 8443 виснет |
ок, попробую перейти на Цитата: java version "1.6.0_27"
Java(TM) SE Runtime Environment (build 1.6.0_27-b07) Java HotSpot(TM) 64-Bit Server VM (build 20.2-b06, mixed mode) |
Автор: | jack7 [ 29 сен 2011, 17:56 ] |
Заголовок сообщения: | Re: Server на порту 8443 виснет |
переход на рекомендуемую java ничего не дал в результате наблюдения за работой биллинга выяснилось что такие зависания имеют временный характер - предположил что связаны с работой базы данных биллинг начинает тормозить когда приходит большое количество UPDATE на базу данных (в моем случае `show process list` показывает около 1200 записей) Код: 36 2388204 bill localhost:55014 bgbilling Query 1 update INSERT INTO bgs_query_log_201109 (dtime, uid, ip, cid, action, query, mid_aid, c_title, u_name, m_ti 37 2388542 bill localhost:55352 bgbilling Sleep 1 NULL 38 2388552 bill localhost:55362 bgbilling Sleep 1 NULL 39 2394197 bill localhost:39393 bgbilling Sleep 6197 NULL 40 2398636 bill localhost:36273 bgbilling Query 1 Locked UPDATE session_detail_2_201109 SET amount=amount + 110884 WHERE session_id=653517 AND sid=23 AND dt 41 2399802 bill localhost:34952 bgbilling Query 3 Locked UPDATE session_detail_2_201109 SET amount=amount + 54 WHERE session_id=656716 AND sid=16 AND dtime= 42 2400060 bill localhost:35210 bgbilling Query 1 Locked UPDATE session_detail_2_201109 SET amount=amount + 62 WHERE session_id=641124 AND sid=16 AND dtime= 43 2400075 bill localhost:35225 bgbilling Query 3 Locked UPDATE LOW_PRIORITY log_session_2_201109 SET session_stop='2011-09-29 16:13:49', session_time=TIME_T 44 2400723 bill localhost:35880 bgbilling Query 3 Locked UPDATE session_detail_2_201109 SET amount=amount + 63 WHERE session_id=654251 AND sid=16 AND dtime= 45 2400777 bill localhost:35934 bgbilling Query 1 Locked UPDATE session_detail_2_201109 SET amount=amount + 32651 WHERE session_id=655366 AND sid=23 AND dti 46 2400925 bill localhost:36086 bgbilling Query 3 Locked UPDATE session_detail_2_201109 SET amount=amount + 30842084 WHERE session_id=659788 AND sid=23 AND 47 2401014 bill localhost:36181 bgbilling Query 3 Locked UPDATE session_detail_2_201109 SET amount=amount + 9580113 WHERE session_id=660067 AND sid=24 AND d 48 2401073 bill localhost:36242 bgbilling Sleep 3 NULL 49 2401130 bill localhost:36301 bgbilling Query 1 Locked UPDATE session_detail_2_201109 SET amount=amount + 62 WHERE session_id=654347 AND sid=16 AND dtime= 50 2401299 bill localhost:36479 bgbilling Query 3 Locked UPDATE session_detail_2_201109 SET amount=amount + 59 WHERE session_id=654727 AND sid=16 AND dtime= 51 2401384 bill localhost:36568 bgbilling Query 1 Locked INSERT INTO session_detail_2_201109 (session_id, sid, cid, dtime, amount) VALUES (662127, 5, 658, '2 52 2401398 bill localhost:36586 bgbilling Query 3 Locked UPDATE session_detail_2_201109 SET amount=amount + 653 WHERE session_id=649602 AND sid=25 AND dtime 53 2401417 bill localhost:36606 bgbilling Query 3 Locked UPDATE session_detail_2_201109 SET amount=amount + 19625 WHERE session_id=652931 AND sid=25 AND dti 54 2401426 bill localhost:36615 bgbilling Query 3 Locked UPDATE session_detail_2_201109 SET amount=amount + 59 WHERE session_id=658217 AND sid=16 AND dtime= 55 2401428 bill localhost:36617 bgbilling Query 3 Locked UPDATE session_detail_2_201109 SET amount=amount + 57 WHERE session_id=659787 AND sid=16 AND dtime= 56 2401430 bill localhost:36619 bgbilling Query 1 Locked UPDATE session_detail_2_201109 SET amount=amount + 64 WHERE session_id=650215 AND sid=16 AND dtime= 57 2401434 bill localhost:36624 bgbilling Query 3 Locked UPDATE session_detail_2_201109 SET amount=amount + 33 WHERE session_id=653857 AND sid=16 AND dtime= 58 2401440 bill localhost:36631 bgbilling Query 3 Locked UPDATE session_detail_2_201109 SET amount=amount + 59 WHERE session_id=659459 AND sid=16 AND dtime= 59 2401450 bill localhost:36641 bgbilling Query 3 Locked UPDATE session_detail_2_201109 SET amount=amount + 1079700 WHERE session_id=640742 AND sid=23 AND d 60 2401453 bill localhost:36644 bgbilling Query 3 Locked UPDATE session_detail_2_201109 SET amount=amount + 62 WHERE session_id=659595 AND sid=16 AND dtime= 61 2401459 bill localhost:36650 bgbilling Query 3 Locked UPDATE session_detail_2_201109 SET amount=amount + 1037743 WHERE session_id=662039 AND sid=23 AND d 62 2401469 bill localhost:36660 bgbilling Query 1 Locked UPDATE LOW_PRIORITY log_session_2_201109 SET session_stop='2011-09-29 16:13:34', session_time=TIME_T 63 2401478 bill localhost:36668 bgbilling Query 1 Locked UPDATE session_detail_2_201109 SET amount=amount + 58193 WHERE session_id=653119 AND sid=23 AND dti 64 2401483 bill localhost:36673 bgbilling Query 1 Locked UPDATE session_detail_2_201109 SET amount=amount + 3176 WHERE session_id=659115 AND sid=25 AND dtim 65 2401486 bill localhost:36676 bgbilling Query 3 Locked UPDATE session_detail_2_201109 SET amount=amount + 1448 WHERE session_id=655549 AND sid=6 AND dtime 66 2401492 bill localhost:36682 bgbilling Query 3 Locked UPDATE session_detail_2_201109 SET amount=amount + 592819 WHERE session_id=661982 AND sid=24 AND dt 67 2401499 bill localhost:36689 bgbilling Query 1 Locked UPDATE LOW_PRIORITY log_session_2_201109 SET session_stop='2011-09-29 16:13:35', session_time=TIME_T база данных файлами лежит на отдельном разделе диска ( интерфейс диска еще имеет запас) data.properties писал(а): db.maxIdle=1000 db.maxActive=10000 netflow_ipn.properties писал(а): db.maxActive=600 db.maxIdle=200 my.cnf писал(а): max_connections = 20000 open_files_limit = 20000 Есть какие нибудь идеи как решить проблему? |
Автор: | snark [ 29 сен 2011, 18:36 ] |
Заголовок сообщения: | Re: Server на порту 8443 виснет |
jack7 писал(а): my.cnf писал(а): max_connections = 20000 Оно работает? Там же вроде кажется баг есть что можно до какого-то определенного значения увеличить, а потом мускулу уже пофиг - он игнорирует большое кол-во разрешенных соединений и ставит какое-то мальенькое, не? jack7 писал(а): my.cnf писал(а): open_files_limit = 20000 Это уберите, т.к. мускул сам все расчитает MySQL manual писал(а): mysqld may attempt to allocate more than the requested number of descriptors (if they are available), using the values of max_connections and table_open_cache to estimate whether more descriptors will be needed.
|
Автор: | jack7 [ 29 сен 2011, 19:24 ] |
Заголовок сообщения: | Re: Server на порту 8443 виснет |
Цитата: open_files_limit = 20000 не думаю, что это критично ни mysql, ни система не ругаются на эту переменную и ее я добавил уже когда наблюдал проблемы с "задумчивостью" биллинга по поводу max_connections у меня версия сервера 5.1.49 Цитата: max_connections
Command-Line Format --max_connections=# Option-File Format max_connections Option Sets Variable Yes, max_connections Variable Name max_connections Variable Scope Global Dynamic Variable Yes Permitted Values (<= 5.1.14) Type numeric Default 100 Permitted Values (>= 5.1.15) Type numeric Default 151 Range 1 .. 16384 Permitted Values (>= 5.1.17) Type numeric Default 151 Range 1 .. 100000 |
Автор: | jack7 [ 29 сен 2011, 19:37 ] |
Заголовок сообщения: | Re: Server на порту 8443 виснет |
написал скрипт, который при числе процессов mysql > 1000 пишет в лог все запросы и состояние интерфейсов диск как и предполагалось не особо нагружен Цитата: PRC | sys 48h16m | user 83h55m | #proc 235 | #zombie 0 | #exit 0 | CPU | sys 8% | user 24% | irq 2% | idle 745% | wait 20% | cpu | sys 1% | user 3% | irq 0% | idle 92% | cpu000 w 3% | cpu | sys 1% | user 3% | irq 0% | idle 94% | cpu004 w 2% | cpu | sys 1% | user 3% | irq 0% | idle 91% | cpu001 w 4% | cpu | sys 1% | user 3% | irq 0% | idle 94% | cpu005 w 2% | cpu | sys 1% | user 3% | irq 0% | idle 92% | cpu002 w 3% | cpu | sys 1% | user 3% | irq 0% | idle 93% | cpu003 w 3% | cpu | sys 1% | user 3% | irq 0% | idle 94% | cpu006 w 2% | cpu | sys 1% | user 3% | irq 0% | idle 94% | cpu007 w 1% | CPL | avg1 1.81 | avg5 0.48 | avg15 0.23 | csw 262437e5 | intr 93360e5 | MEM | tot 15.7G | free 1.9G | cache 6.8G | buff 107.6M | slab 440.8M | SWP | tot 6.1G | free 4.7G | | vmcom 8.3G | vmlim 13.9G | PAG | scan 2140e6 | stall 0 | | swin 369325 | swout 761749 | DSK | sda | busy 5% | read 48683e3 | write 1961e5 | avio 0 ms DSK | sdg | busy 1% | read 17413e3 | write 1279e4 | avio 1 ms | DSK | sdb | busy 1% | read 8532960 | write 4120e4 | avio 0 ms | DSK | sdd | busy 1% | read 5183989 | write 7369e3 | avio 1 ms | DSK | sde | busy 0% | read 211878 | write 102313 | avio 1 ms | DSK | sdf | busy 0% | read 92907 | write 2148 | avio 4 ms | DSK | sdc | busy 0% | read 1897 | write 126 | avio 1 ms | NET | transport | tcpi 67590e5 | tcpo 67175e5 | udpi 23863e5 | udpo 27783e4 | NET | network | ipi 913482e4 | ipo 699759e4 | ipfrw 0 | deliv 9135e6 | NET | eth1 0% | pcki 20463e5 | pcko 35530e4 | si 6365 Kbps | so 76 Kbps | NET | eth0 0% | pcki 14454e5 | pcko 12332e5 | si 1622 Kbps | so 1769 Kbps | NET | lo ---- | pcki 56599e5 | pcko 56599e5 | si 2567 Kbps | so 2567 Kbps | есть предположение, может стоить конвертировать такие большие таблицы (detail*) с MyISAM в InnoDB? |
Автор: | snark [ 29 сен 2011, 21:10 ] |
Заголовок сообщения: | Re: Server на порту 8443 виснет |
jack7 писал(а): есть предположение, может стоить конвертировать такие большие таблицы (detail*) с MyISAM в InnoDB? У Вас еще таблицы еще не в InnoDB? Тогда мы идем к Вам! ))) |
Автор: | jack7 [ 29 сен 2011, 21:33 ] |
Заголовок сообщения: | Re: Server на порту 8443 виснет |
snark писал(а): jack7 писал(а): есть предположение, может стоить конвертировать такие большие таблицы (detail*) с MyISAM в InnoDB? У Вас еще таблицы еще не в InnoDB? Тогда мы идем к Вам! ))) а в следующем месяце таблицы session_detail_* автоматом будут созданы с типом InnoDB ? ![]() |
Автор: | snark [ 29 сен 2011, 21:59 ] |
Заголовок сообщения: | Re: Server на порту 8443 виснет |
jack7 писал(а): а в следующем месяце таблицы session_detail_* автоматом будут созданы с типом InnoDB ? ![]() Если сделаете так: Код: # grep default-storage-engine my.cnf default-storage-engine = InnoDB то да ![]() |
Автор: | jack7 [ 29 сен 2011, 22:09 ] |
Заголовок сообщения: | Re: Server на порту 8443 виснет |
ок, это вариант а что скажут разработчики, может ли быть причиной таких таймаутов тип больших таблиц? |
Автор: | snark [ 29 сен 2011, 22:19 ] |
Заголовок сообщения: | Re: Server на порту 8443 виснет |
100% это тип таблиц, т.к. у MyISAM табличный лок при SELECT/UPDATE, а у InnoDB этого Г нету. |
Автор: | jack7 [ 29 сен 2011, 22:48 ] |
Заголовок сообщения: | Re: Server на порту 8443 виснет |
похоже на правду так как Цитата: MyISAM uses table-level locking on updates and deletes to any existing row, with an option to append new rows instead of taking a lock and inserting them into free space. InnoDB uses row-level locking. завтра утром перенастрою Mysql и в следующем месяце будет результат =) |
Автор: | snark [ 29 сен 2011, 23:14 ] |
Заголовок сообщения: | Re: Server на порту 8443 виснет |
jack7 писал(а): в следующем месяце будет результат Результат увидите сразу же как только конвертнете в InnoDB ![]() |
Автор: | Администратор [ 30 сен 2011, 13:56 ] |
Заголовок сообщения: | Re: Server на порту 8443 виснет |
Памяти добавьте MySQL ю только, InnoDB её хорошо умеет использовать в отличие от MyIsam. Часто используемые данные кэшируются. |
Страница 1 из 2 | Часовой пояс: UTC + 5 часов [ Летнее время ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |