Перейти до

~AsmodeuS~

Сitizens
  • Всього повідомлень

    729
  • Приєднався

  • Останній візит

  • Дней в лидерах

    7

Все, що було написано ~AsmodeuS~

  1. ~AsmodeuS~

    Билинг для 300-500 абонентов.

    Вы забыли добавить "Обновите биллинг!".)))) можно просто проверить что изменилось если не хотите обновлять или патч загрузить с git или просто помедитировать может само пофиксится
  2. ~AsmodeuS~

    Билинг для 300-500 абонентов.

    Дедлок не должен появляться. Ибо лок вызывается только в auth.pm, в одном месте кода, и сразу на всю таблицу сессий. А дедлок вылезает в acct.pm - где нет ни локов, ни транзакций, ибо нет сложных операций. проблема оказалась на много тривиальней и связана было с innodb уже поправлено
  3. ~AsmodeuS~

    Билинг для 300-500 абонентов.

    ну то есть вы считаете, что проблем с вашей тех поддержкой и тех особенностями вести проект нет? тех поддержка полностью регламентирована, и учтены все возможные пожелания
  4. ~AsmodeuS~

    Билинг для 300-500 абонентов.

    Auth.pm из вашего cvs. только за этот год более 10 раз был изменён так что нужно конкретную дату Auth.pm из вашего cvs. То есть проблеме имеет место быть. Диадлок будет появляться и это очевидно, или я что то не так понимаю. да подтвердилось на старом опенсорсном дистрибутиве буду тестировать и отпишись по ситуации
  5. ~AsmodeuS~

    Билинг для 300-500 абонентов.

    так ведь все пакеты в пакетных дистрах это скомпиленные проги. только вот они в пакетах, красиво завернутые и легко обновляемые.а у вас не так. но сам биллинг - это не беда. но вот тот же радиус из исходников - уже проблема. и еще: ваша привычка обновлять биллинг днем, в процессе работы тысяч клиентов, тоже напрягает. неужели нельзя было обновлять ночью его? ответ от вас удивил: так вы не заказывали. так это не было нигде не написано, а очевидность обновления не в рабочее время оказывается для вас не очевидна. очевидно, что вам все равно, что юзеры уменьшат карму прову. обновление
  6. ~AsmodeuS~

    Билинг для 300-500 абонентов.

    http://search.cpan.org/search?query=AnyEvent+mysql&mode=allhttps://www.npmjs.org/search?q=mysql http://twistedmatrix.com/documents/current/core/howto/rdbms.html https://code.google.com/p/go-wiki/wiki/SQLDrivers Все давно переписано. Вообще разговор ни о чем уже. Вы с чего-то вдруг решили, что планировщик на sql костылях - это нормально. Пилите, имеете проблемы, но продолжаете жрать кактус. Ваше дело. Но это говнокод и ламерство. Асмодеус, вы такой программист, как я балерина, молчали бы уже Да уже заметили что программирование вы учили в балетной школе. Предполагаю что В
  7. ~AsmodeuS~

    Билинг для 300-500 абонентов.

    На 2к согласен, даже может на 3к, только последствия после лавинообразных авторизаций будут! проверил у себя 25 независимых потоков в каждом по 100 000 запросов не одного дедлока, думаю проблема где то у Вас просьба выслать мне Auth.pm так будет легче найти ошибку
  8. ~AsmodeuS~

    Билинг для 300-500 абонентов.

    Из этой темы и показанных костылей Если нет логики в СУБД, то при нормальной работе в СУБД должны только сохраняться конфиг/пулы/изменения_в_пулах раз в сколько-то секунд и все. Покажите статус процесса радиус сервера, на select/epoll/kqueue висит? Если да, то он асинхронный. Если у вас не упирается в СУБД, то это далеко не большие нагрузки Но речь сейчас не об этом, а о том, что неадекватно реализовано, из-за чего локи, пиление и прочие проблемы даже на микронагрузках. мне одному кажется что это полная чушь не одно из Ваших высказываний не выдерживает и малешей критики. Все у
  9. ~AsmodeuS~

    Билинг для 300-500 абонентов.

    Так а что неправильно с точки зрения клиентов? Они заплатили деньги за то, что вы поставите им НОРМАЛЬНО сервак с биллингом. ВЫ им собрали с исходников, а далее они админят дистр по МАНУАЛУ от создателей дистра и попадают на проблемы с вашими собранными радиусами.Так в чем они виноваты? Повторюсь, вам нужно всего лишь выкатать инсталяху на 2 основных дистра и усё! при попытке обновить дистр - неразрешенные зависимости. и пробовать трогать это - страшно! (так же как и обновлять биллинг). исходя из Вашей логики все прекомпилированные биллинговые системы зло потому что нельзя обновить си
  10. ~AsmodeuS~

    Билинг для 300-500 абонентов.

    И? А логика зачем-то в СУБД. Очень умно. Точнее, большего маразма трудно представить (а вообще я не смотрел радиус, может он там через одно место писан, с prefork моделью, а не асинхронно, потому маленький сервис может быть очень хорошей идеей) ждём ваше решение как это нужно сделать
  11. ~AsmodeuS~

    Билинг для 300-500 абонентов.

    Вынести раздачу адресов в отдельный сервис или это слишком сложно для асмодеусов? Задача вообще-то совсем не для СУБД и использовать СУБД в качестве планировщика ресурсов - тот еще маразм. о все как раз ждали Ваш профффесиональный подход, а ну покажите как же это сделать
  12. ~AsmodeuS~

    Билинг для 300-500 абонентов.

    тут немного другой принцип заносятся все адреса по одной записи в таблицу а что делает этот блок ? `u`.`lastBlock` <= %s
  13. ~AsmodeuS~

    Билинг для 300-500 абонентов.

    Что интересно - образовываться ему там не с чего, транзакций явных нет... так вот по этому и интересно
  14. ~AsmodeuS~

    Билинг для 300-500 абонентов.

    Да генерировал я базу с имитацией 30к сессий. А вот запросы она обслуживает только одного тестового хоста. очень странная ситуация, думаю стоит Вам написать как Вы это делаете, а то что то не так у Вас. можете в личку написать или в аську
  15. ~AsmodeuS~

    Билинг для 300-500 абонентов.

    все верно Вы разрешили в системе для одного абонента неограниченное число сессий судя из базы вы подняли дял одного абонента 30 тис онлайн сессий, если бы у Вас было 1 сессия на абонента то всегда для него была бы одна сессия
  16. ~AsmodeuS~

    Билинг для 300-500 абонентов.

    или кто то где то о них читал, так как пока не подтверждены. Если бы они были их очень просто найти в ABillS кстати
  17. ~AsmodeuS~

    Билинг для 300-500 абонентов.

    Альтернативы? Ну кроме заведения отдельной таблицы для всех адресов пулов, и апдейта записей в ней (что чревато)? А с чего бы ему образовываться? Как еще гарантировать атомарность выделения ип адреса? SQL процедурой, выполняющей идентичные действия в которой тоже будет использоваться лок таблицы? Ну и да, 2к онлайна без особого напряга тянет тазик 5-летней давности с 2-головым атлоном... не обращайте внимание я думаю это всё просто предположения пока нет ни одного факта что будет плохо, а тем более как сделать оптимальней. Если бы были то можно было бы на стенде протестиро
  18. ~AsmodeuS~

    Билинг для 300-500 абонентов.

    Чукча не читатель, чукча писатель. Вы читали выше о блокировке адресов на определённое время после авторизации? Самокритика это позитивно, только есть куча нюансов 1 время блокировки записи большое между авторизацией и аккаунтингом более 0.05 секунду 2 вы делаете 2 раза идентичные запросы к базе 1 во время авторизации а потом во время аккаунтинга чтобы получить данные абонента 3 некоторые сервера доступа (cisco,juniper) отправляют Start и сразуже Alive и иногда выходит ситуация что алайв быстрее обрабатывается чем стоп и еще много нюансов насчёт обновления если админы не могу
  19. ~AsmodeuS~

    Билинг для 300-500 абонентов.

    Получается, что вы даже не пытались. А достаточно 2 дистра основных проверить - и все.А в результате имеем сервак, который хрен обновишь, потому что кому что-то лень делать. Это похоже на профессионализм? Это у вас такая "реклама"? Ну сессия создается при авторизации, занимая ип. Если аккаунтинг не пришел - сессия умирает. Если я ничего не попутал в алгоритме (давно ковырял код). А должна создаваться при первом Accounting.Когда-то с этим была проблема; был даже от тебя патч. У я себя решил так: есть с IP-адресами, где записывается время последней выдачи адреса. Адрес считается
  20. ~AsmodeuS~

    Билинг для 300-500 абонентов.

    Ну сессия создается при авторизации, занимая ип. Если аккаунтинг не пришел - сессия умирает. Если я ничего не попутал в алгоритме (давно ковырял код). А должна создаваться при первом Accounting.Когда-то с этим была проблема; был даже от тебя патч. У я себя решил так: есть с IP-адресами, где записывается время последней выдачи адреса. Адрес считается свободным, если его нет в dv_calls и последняя выдача была больше n секунд назад. Таблица полностью сразу заполняется адресами и update-ится только время выдачи. Из всех рассмотренных вариантов этот оказался самым быстрым. Коллизии возможны, н
  21. ~AsmodeuS~

    Билинг для 300-500 абонентов.

    Получается, что вы даже не пытались. А достаточно 2 дистра основных проверить - и все. Мы пытались но список дистрибутивов не вели так как ситуация когда не стратует или после обновление все просто падает, а клиенты в большинстве случаев не разбераются в проблеме, а сразу наезд идёт что все плохо биллинг не работает и все и клиент звонит 10 раз в "час что всепропало" потом оказывается он просто переустановил биллинг или обновил его и не посмотрел как все собрано. И это у каждого 3 клиента с линуксом такая ситуация. И выходило что по пару часов день нужно просто объяснять клиентам чт
  22. ~AsmodeuS~

    Билинг для 300-500 абонентов.

    во всех дистрах такое ? (centos, debian, ubuntu). в дебиан и в убунту так в других были прицеденты но точно не могу сказать, решили во всех линуксах по одному образцу делать
  23. ~AsmodeuS~

    Билинг для 300-500 абонентов.

    dv_calls не наполняется... dv_log - да, но туда записи попадают уже сильно опосля... Давно появился сброс клиентов с дублирующимися адресами? Я что-то не замечал такого в коде... CentOS - все прекрасно работает искаропки. Debian - тоже все завелось искаропки в более-менее актуальной версии (в старых типа 0.51 - там да, радиус крашился по причине того что используются глобальные переменные типа $db, в то время как $db должна быть уникальной для каждого потока). 1 проверка дубликатов ИП появилась ее летом billd смотрите 2 было более десятка прицидентов по этому
  24. ~AsmodeuS~

    Билинг для 300-500 абонентов.

    да можно но при обновлении опять начинаются цирки с этой проблемой и клиенты долго потом не могут понять почему радиус у них не стартует, по этому его ставим для линуксов отдельно и все. Его очень редко нужно обновлять можно сказать вообще не нужно
  25. ~AsmodeuS~

    Билинг для 300-500 абонентов.

    хм. а когда мы были у вас на ком поддержке (где то год-полтора назад), об этом скрипте никто ничего не сказал/не сделал..... возможно у Вас было какое то другое решение этой проблемы
×
×
  • Створити нове...