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

После обновления Bgbilling 6.0 увеличилась нагрузка на MySQL (CRM)
http://forum.bitel.ru/viewtopic.php?f=22&t=9963
Страница 1 из 1

Автор:  Unior [ 25 ноя 2014, 13:13 ]
Заголовок сообщения:  После обновления Bgbilling 6.0 увеличилась нагрузка на MySQL

Здравствуйте. Есть Bgbilling 6.0 на Centos 6.5. Обновил Bgbilling неделю назад. После чего начались проблемы с базой.

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
11813 mysql 20 0 3342m 1.3g 13m S 198.4 34.7 13:42.54 mysqld
1856 root 20 0 2649m 284m 13m S 3.7 7.5 3:36.37 java
1760 root 20 0 2517m 126m 16m S 0.3 3.3 0:11.38 java
1764 root 25 5 2387m 106m 16m S 0.3 2.8 0:10.85 java
1845 root 20 0 3493m 172m 14m S 0.3 4.5 0:19.13 java
1 root 20 0 19232 1504 1224 S 0.0 0.0 0:00.52 init

Пергрузка не спасла. Повторяется снова сразу.
SHOW PROCESSLIST;
Id | User | Host | db | Command | Time | State | Info |
+----+------+-----------------+-----------+---------+------+--------------+------------------------------------------------------------------------------+
| 2 | userbg | 127.0.0.1:33367 | billing | Sleep | 2 | | NULL |
| 3 | userbg | 127.0.0.1:50212 | billing | Sleep | 1 | | NULL |
| 4 | userbg | 127.0.0.1:54810 | billing | Query | 5 | Sending data | SELECT SUM(session_cost) FROM log_session_1_201411 WHERE cid=1763 AND sid=15 |
| 5 | userbg | 127.0.0.1:57850 | billing | Query | 4 | Sending data | SELECT SUM(session_cost) FROM log_session_1_201411 WHERE cid=1763 AND sid=15 |
| 6 | userbg | 127.0.0.1:54996 | billing | Query | 5 | Sending data | SELECT SUM(session_cost) FROM log_session_1_201411 WHERE cid=1763 AND sid=15 |
| 7 | userbg | 127.0.0.1:45903 | billing | Query | 6 | Sending data | SELECT SUM(session_cost) FROM log_session_1_201411 WHERE cid=1763 AND sid=15 |
| 8 | userbg | 127.0.0.1:34452 | billing | Sleep | 1 | | NULL |
| 9 | userbg | 127.0.0.1:41261 | billing | Query | 4 | Sending data | SELECT SUM(session_cost) FROM log_session_1_201411 WHERE cid=1763 AND sid=15 |
| 10 | userbg | 127.0.0.1:52920 | billing | Query | 2 | Sending data | SELECT SUM(session_cost) FROM log_session_1_201411 WHERE cid=1763 AND sid=15 |
| 11 | userbg | 127.0.0.1:34101 | billing | Query | 1 | Sending data | SELECT SUM(session_cost) FROM log_session_1_201411 WHERE cid=1763 AND sid=15 |
| 12 | userbg | 127.0.0.1:43244 | billing | Sleep | 1 | | NULL |
| 13 | userbg | 127.0.0.1:39388 | billing | Query | 5 | Sending data | SELECT SUM(session_cost) FROM log_session_1_201411 WHERE cid=1763 AND sid=15 |
| 14 | userbg | 127.0.0.1:38560 | billing | Sleep | 1 | | NULL |
| 15 | userbg | 127.0.0.1:43444 | billing | Sleep | 1 | | NULL |
| 16 | userbg | 127.0.0.1:36295 | billing | Query | 2 | Sending data | SELECT SUM(session_cost) FROM log_session_1_201411 WHERE cid=1763 AND sid=15 |
| 17 | userbg | 127.0.0.1:47187 | billing | Query | 4 | Sending data | SELECT SUM(session_cost) FROM log_session_1_201411 WHERE cid=1763 AND sid=15 |
| 18 | userbg | 127.0.0.1:33986 | billing | Query | 5 | Sending data | SELECT SUM(session_cost) FROM log_session_1_201411 WHERE cid=1763 AND sid=15 |
| 19 | userbg | 127.0.0.1:51688 | billing | Query | 6 | Sending data | SELECT SUM(session_cost) FROM log_session_1_201411 WHERE cid=1763 AND sid=15 |
| 20 | userbg | 127.0.0.1:33587 | billing | Sleep | 1 | | NULL |
| 21 | userbg | 127.0.0.1:35689 | billing | Query | 2 | Sending data | SELECT SUM(session_cost) FROM log_session_1_201411 WHERE cid=1763 AND sid=15 |
| 22 | userbg | 127.0.0.1:53082 | billing | Query | 6 | Sending data | SELECT SUM(session_cost) FROM log_session_1_201411 WHERE cid=1763 AND sid=15 |
| 23 | userbg | 127.0.0.1:50303 | billing | Query | 2 | Sending data | SELECT SUM(session_cost) FROM log_session_1_201411 WHERE cid=1763 AND sid=15 |
| 24 | userbg | 127.0.0.1:45967 | billing | Query | 2 | Sending data | SELECT SUM(session_cost) FROM log_session_1_201411 WHERE cid=1763 AND sid=15 |
| 25 | userbg | 127.0.0.1:46255 | billing | Query | 2 | Sending data | SELECT SUM(session_cost) FROM log_session_1_201411 WHERE cid=1763 AND sid=15 |
| 27 | userbg | 127.0.0.1:51512 | billing | Query | 2 | Sending data | SELECT SUM(session_cost) FROM log_session_1_201411 WHERE cid=1763 AND sid=15 |
| 28 | userbg | 127.0.0.1:54498 | billing | Query | 2 | Sending data | SELECT SUM(session_cost) FROM log_session_1_201411 WHERE cid=1763 AND sid=15 |
| 29 | userbg | 127.0.0.1:37975 | billing | Query | 1 | Sending data | SELECT SUM(session_cost) FROM log_session_1_201411 WHERE cid=1763 AND sid=15 |
| 37 | userbg | 127.0.0.1:48158 | billing | Sleep | 4 | | NULL |
| 44 | userbg | 127.0.0.1:53351 | billing | Sleep | 8 | | NULL |
| 58 | userbg | 127.0.0.1:39965 | billing | Sleep | 8 | | NULL |
| 59 | userbg | localhost | NULL | Query | 0 | NULL | SHOW PROCESSLIST
Этот запрос постоянно генерируется системой(почему-то). В чем проблема. Только из-за этого запроса?..


./server_status.sh
BGBillingServer v 6.0 build 1811 from 13.11.2014 18:45:59
Started: 25.11.2014 09:35:53 Uptime: 0 d 01:48:23
Memory total: 66 060 288; max: 238 551 040; free: 22 018 896
Memory pools:
Non-heap memory[Code Cache]: max: 50 331 648; used: 3 780 608; peek: 3 786 688
Heap memory[PS Eden Space]: max: 83 361 792; used: 8 699 672; peek: 48 758 784
Heap memory[PS Survivor Space]: max: 2 621 440; used: 917 536; peek: 6 068 024
Heap memory[PS Old Gen]: max: 178 782 208; used: 34 424 184; peek: 34 424 184
Non-heap memory[PS Perm Gen]: max: 134 217 728; used: 39 258 960; peek: 39 258 960
Thread count: 35
Connections pool to Master status Idle: 5; Active: 1; maxActive: 300; maxIdle: 20

Автор:  stark [ 25 ноя 2014, 13:35 ]
Заголовок сообщения:  Re: После обновления Bgbilling 6.0 увеличилась нагрузка на M

а с местом на диске и винтом все хорошо?

Автор:  Unior [ 25 ноя 2014, 13:37 ]
Заголовок сообщения:  Re: После обновления Bgbilling 6.0 увеличилась нагрузка на M

да
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg_bgbilling-lv_root 30G 1,8G 27G 7% /
tmpfs 1,9G 0 1,9G 0% /dev/shm
/dev/md0 485M 54M 407M 12% /boot
/dev/mapper/vg_bgbilling-lv_home 5,0G 139M 4,6G 3% /home
/dev/mapper/vg_bgbilling-lv_tmp 2,0G 532M 1,4G 28% /tmp
/dev/mapper/vg_bgbilling-lv_var 25G 3,6G 20G 16% /var
/dev/mapper/vg_bgbilling-lv_mysql 389G 24G 346G 7% /var/lib/mysql

Сервер абсолютно новый 5 мес. До обновления работало все как часы.

Автор:  stark [ 25 ноя 2014, 19:06 ]
Заголовок сообщения:  Re: После обновления Bgbilling 6.0 увеличилась нагрузка на M

1 - это код модуля voiceip ?

Автор:  stark [ 25 ноя 2014, 19:07 ]
Заголовок сообщения:  Re: После обновления Bgbilling 6.0 увеличилась нагрузка на M

покажите что выдает sql-запрос
Код:
show create table log_session_1_201411

Автор:  Amir [ 25 ноя 2014, 19:21 ]
Заголовок сообщения:  Re: После обновления Bgbilling 6.0 увеличилась нагрузка на M

По коду это установка баланса, которая вызывается если в типе логина стоит обсчет баланса при каждом звонке.
Может быть в каком-то операторском логине раньше не был указан обсчет при каждом звонке, а сейчас указан?

Автор:  Amir [ 25 ноя 2014, 19:23 ]
Заголовок сообщения:  Re: После обновления Bgbilling 6.0 увеличилась нагрузка на M

Или с индексами что-то в этой таблице, к этому предыдущий вопрос.

Автор:  Unior [ 26 ноя 2014, 12:35 ]
Заголовок сообщения:  Re: После обновления Bgbilling 6.0 увеличилась нагрузка на M

Да, это модуль VoiceIP. Причем, этот клиент обсчитывается через sip транк в связке Asterisk+Bgbilling делал по статье из Wiki. Как только закрываю транк, данные запросы прекращаются, ну соответсвенно и ресурсы процессора не выжираются уже. Клиент какое-то время обсчитвается нормально, потом начинаются ошибки на Asterisk:
[Nov 25 14:15:18] ERROR[6780]: cdr_radius.c:214 radius_log: Failed to record Radius CDR record!
[Nov 25 14:15:22] ERROR[6781]: cdr_radius.c:214 radius_log: Failed to record Radius CDR record!
[Nov 25 14:15:23] ERROR[6784]: cdr_radius.c:214 radius_log: Failed to record Radius CDR record!
[Nov 25 14:15:23] ERROR[6785]: cdr_radius.c:214 radius_log: Failed to record Radius CDR record!
После появления этих ошибок, начинаются эти лавинные запросы.

Автор:  Unior [ 26 ноя 2014, 12:37 ]
Заголовок сообщения:  Re: После обновления Bgbilling 6.0 увеличилась нагрузка на M

show create table log_session_1_201411

| log_session_1_201411 | CREATE TABLE `log_session_1_201411` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`type` int(11) NOT NULL,
`nas_id` int(11) NOT NULL,
`lid` int(11) NOT NULL,
`cid` int(11) NOT NULL,
`session_start` datetime NOT NULL,
`session_time` int(11) NOT NULL,
`round_session_time` int(11) NOT NULL,
`from_number` char(16) NOT NULL,
`to_number` char(16) NOT NULL,
`dest_code` int(11) NOT NULL,
`zone` int(11) NOT NULL,
`min_cost` float(10,5) NOT NULL,
`session_cost` decimal(10,5) NOT NULL,
`oper_id` int(11) NOT NULL DEFAULT '0',
`oper_round_session_time` int(11) NOT NULL DEFAULT '0',
`oper_session_cost` decimal(10,5) NOT NULL DEFAULT '0.00000',
`sid` int(11) NOT NULL,
`h323_id` char(40) NOT NULL,
`dc` char(4) DEFAULT NULL,
`lr` int(11) NOT NULL,
PRIMARY KEY (`id`),
KEY `nas` (`nas_id`),
KEY `lid` (`lid`),
KEY `zone` (`zone`),
KEY `cid_sid` (`cid`,`sid`),
KEY `oper_id` (`oper_id`),
KEY `session_start` (`session_start`)
) ENGINE=InnoDB AUTO_INCREMENT=762579 DEFAULT CHARSET=cp1251 |

Автор:  Unior [ 26 ноя 2014, 12:39 ]
Заголовок сообщения:  Re: После обновления Bgbilling 6.0 увеличилась нагрузка на M

обсчет баланса при каждом звонке, где это указывается?

Автор:  stark [ 26 ноя 2014, 16:16 ]
Заголовок сообщения:  Re: После обновления Bgbilling 6.0 увеличилась нагрузка на M

Unior писал(а):
обсчет баланса при каждом звонке, где это указывается?

http://bgbilling.ru/v6.1/doc/ch37s04.html
Цитата:
3. Обсчёт баланса (при каждом звонке/никогда) - опция никогда не стоит у операторских логинов для снижения нагрузки на радиус. При этом после каждого звонка не обновляется наработка в балансе пользователя. Для обычных логинов стоит режим обсчёта после каждого звонка.

Автор:  Unior [ 26 ноя 2014, 17:36 ]
Заголовок сообщения:  Re: После обновления Bgbilling 6.0 увеличилась нагрузка на M

Спасибо, причина была в этом.

Автор:  Unior [ 26 ноя 2014, 18:07 ]
Заголовок сообщения:  Re: После обновления Bgbilling 6.0 увеличилась нагрузка на M

Еще вопрос, а как обсчитать баланс один раз в месяц. В планировщике есть такая опция, но он обсчитывает для всех, а для конкретного договора?

Автор:  Unior [ 26 ноя 2014, 18:11 ]
Заголовок сообщения:  Re: После обновления Bgbilling 6.0 увеличилась нагрузка на M

Я так понимаю в параметрах запуска: код модуля mid=1, а как указать код договора

Автор:  stark [ 26 ноя 2014, 18:25 ]
Заголовок сообщения:  Re: После обновления Bgbilling 6.0 увеличилась нагрузка на M

Unior писал(а):
Еще вопрос, а как обсчитать баланс один раз в месяц. В планировщике есть такая опция, но он обсчитывает для всех, а для конкретного договора?

такой возможности нет.

Автор:  Unior [ 08 дек 2014, 11:35 ]
Заголовок сообщения:  Re: После обновления Bgbilling 6.0 увеличилась нагрузка на M

Здравствуйте, возвращаюсь к теме. Проблема не решилась, с увеличением количества звонков запросы появляются, не смотря на то, что в типе логинов убрал обсчет баланса после каждого звонка.
Запросы следующего типа:

SHOW PROCESSLIST;

SELECT SUM(session_cost) FROM log_session_1_201411 WHERE cid=1763 AND sid=15

Автор:  stark [ 13 дек 2014, 01:20 ]
Заголовок сообщения:  Re: После обновления Bgbilling 6.0 увеличилась нагрузка на M

Unior писал(а):
Здравствуйте, возвращаюсь к теме. Проблема не решилась, с увеличением количества звонков запросы появляются, не смотря на то, что в типе логинов убрал обсчет баланса после каждого звонка.
Запросы следующего типа:

SHOW PROCESSLIST;

SELECT SUM(session_cost) FROM log_session_1_201411 WHERE cid=1763 AND sid=15



а вы radius перезагружали после смены типа логина ? сменили точно у того, который используется на договоре с Id = 1763 ? Потому как это запрос не должен вызываться .

Автор:  stark [ 30 янв 2015, 19:54 ]
Заголовок сообщения:  Re: После обновления Bgbilling 6.0 увеличилась нагрузка на M

в итоге проблема решилась?

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