Биллинг медленно работает

Ключ
Эта строка удалена.
Это слово было удалено. Это слово было добавлено.
Эта строка добавлена.

Изменения (15)

просмотр истории страницы
h1. Как понять почему биллинг работает медленно?
Проверьте биллинг по следующему алгоритму:
# Разработчики *CarbonSoft* постоянно оптимизируют работу биллинга повышая его призводительность. [Обновите биллинг на свежую версию|Обновление биллинга].
# Возможно, причина медленной работы в проблеме внутри БД. Попробуйте сделать [резервное коприрование БД с последующим восстановлением|CarbonBilling:Восстановление БД биллинга из резервной копии.#Создание резервной копии БД с последующим восстановлением].
# Проверьте соответсвует ли сервер биллинга [системным [требованиям|Системные требования#Carbon Billing 5].
# Проверьте, возможно, причиной замедления является одна из проблем описанных в разделе "[Частые причины медленной работы биллинга|Биллинг медленно работает#Частые причины медленной работы биллинга]".
# Если вы не пользуетесь Userside, [отключите фоновую выгрузку|Настройки (в файле)#Настройка демона фоновых задач].
ISQL Version: LI-V2.5.9.27156 Firebird 2.5
{code}
Если используется Firebird 2, и в биллинге более 25000 абонентов перейдите на Firebird 5. Для этого создайте заявку на [портале|https://helpdesk.carbonsoft.ru/login.php].
# Проверьте скорость работы ядра биллинга, и при необходимости [настройте|Настройки (в файле)#Включение и настройка] ядро [настройте ядро|Worker (ядро биллинга)#Многопоточность#Тонкая настройка многопоточности] для оптимальной производительности.
# Если не получилось найти причину самостоятельно, создайте заявку на [портале|https://helpdesk.carbonsoft.ru/login.php].

h3. Причина

Проверьте, что БД не слишком большого размера - если она превышает 10Гб, это уже достаточно много, система мониторинга создаст автоматическую заявку по этой проблеме [ALARM Превышен лимит размера БД|https://docs.carbonsoft.ru/51019784#Системамониторинга-checkbillingdbsize.sh] БД|Система мониторинга#check_billing_db_size.sh]

В среднем, 10Гб достаточно чтобы хранить данные нескольких десятков тысяч абонентов без дополнительных оптимизаций или активной работы механизма партиционирования.
По выводу видно что под таблицау EVENTS_STACK в базе отведенено существенно больше места, чем под все прочие.
# Дальнейшие шаги зависят от конкретных таблиц - суть в том, чтобы TOP3 были примерно одного порядка)
# Решив проблему переполнения таблиц, сделайте резервную копию и восстановление из неё - таким образом работает механизм "сборки мусора". Это описано в статье по системе мониторинга в [тесте размера БД|https://docs.carbonsoft.ru/pages/viewpage.action?pageId=51019784#Системамониторинга-checkbillingdbsize.sh] БД|Система мониторинга#check_billing_db_size.sh]

h4. EVENTS_STACK

В общих чертах описание возможных проблем переполнения стека команд для оборудования можно найти в статье по [системе мониторинга|https://docs.carbonsoft.ru/pages/viewpage.action?pageId=51019784#Системамониторинга-checkeventsstackcount.sh]. мониторинга|Система мониторинга#check_events_stack_count.sh].

Описание подсистемы отправки команд и пути отладки описаны в статье [https://docs.carbonsoft.ru/display/CarbonBilling/nas_event_daemon|nas_event_daemon] [статье|nas_event_daemon]

Проблема чаще всего возникает, если используется авторизация по RADIUS.
* Медленный диск, в результате чего при перезагрузке оборудования происходит массовая авторизация абонентов, но события не отправляются достаточно быстро, поэтому абоненты продолжают авторизоваться и стек продолжает пополняться
* Проблемы оборудования: возможно, что-то не так с NAS-сервером, в результате чего постоянно отпадают RADIUS-сессии и абоненты переавторизуются, стек копится, например NAS-сервер слишком медленно отвечает биллингу
* Ошибки в [скрипте управления NAS|https://docs.carbonsoft.ru/pages/viewpage.action?pageId=51708724#Интеграцияоборудованияинтернет-Управлениесессиямиабонентовнаоборудовании]: NAS|Интеграция оборудования интернет#Управление сессиями абонентов на оборудовании]: команды отправляются с ошибкой, а в скрипте событий описана обработка этих ошибок, но не слишком оптимально, это так же может замедлять отправку событий и приводить к "снежному кому" в стеке

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

Возможные причины и решения:
# У Вас включена опция [сохранять движения всего трафика|https://docs.carbonsoft.ru/pages/viewpage.action?pageId=63242421#Глобальныенастройкибиллингаиоператора-Глобальныенастройкиоператора] трафика| Глобальные настройки биллинга и оператора#Глобальные настройки оператора] в настройках оператора связи, чтобы предоставлять подневную (или почасовую) детализацию объёмов трафика абонентам.
Решить можно следующими способами:
#* Уменьшите частоту отправки данных по трафику. В статье о [службах сбора статистики|https://docs.carbonsoft.ru/pages/viewpage.action?pageId=126484488] статистики|Описание работы служб сбора статистики] Вы найдёте информацию по настраиваемым параметрам частоты отправки - уменьшите частоту в 5-10 раз.
#* Настройте [период хранения исторических данных в базе|https://docs.carbonsoft.ru/pages/viewpage.action?pageId=107577360]. Так [детализация расхода|https://docs.carbonsoft.ru/pages/viewpage.action?pageId=50660208] станет доступна за менее длительный период, но база будет работать быстрее
#* Настройте [период хранения исторических данных в базе|Настройка периода хранения исторических данных в базе]. Так [детализация расхода|Детализация расхода] станет доступна за менее длительный период, но база будет работать быстрее
# Возможно, это проводки за списания и тогда через [конструктор отчётов|CarbonBilling:Конструктор отчетов] постарайтесь понять структуру расхода: у каких абонентов больше всего проводок, по каким операциям и тд. Возможно, где-то в настройках услуг или ведении абонентов допущена ошибка.

h4. RADIUS_SESSIONS

В таблице хранится история RADIUS-авторизаций. Если таблица слишком разрослась, настройте [период хранения исторических данных в базе|https://docs.carbonsoft.ru/pages/viewpage.action?pageId=107577360] базе|Настройка периода хранения исторических данных в базе] - уменьшите его. Если это не помогло - возможно, проблема так же где-то в авторизациях или оборудованиии и, вероятно, помимо таблицы с историей авторизаций, у Вас так же разрастётся EVENTS_STACK.

h2. Медленно работает веб-интерфейс администратора