> более 20 тис установок по всему миру
> от мелких хотспотов до провайдеров 200 000+ Нет, правда? Ухтыжздоровохэштэг.
Работал в провайдере ~100k абонентов с этим поделием. Такого трэша в жизни не видел. Знающие и умеющие perl могут сами оценить. Глобальные переменные, фукции-простыни на несколько экранов, велосипеды даже не c квадратными, а с треугольными колёсами - работа с http запросами, шаблонизатор, и даже, о боги, свой DBI. (Вот не пойму, чем DBI не угодил, нафик его было заменять на свою реализацию, размеется, с поддержкой sql injection). ООП не завезли. (Ну, сейчас-то уже подвезли, но такое, как в несмешных анекдотах про perl). В общем, посмотрите в исходники, порадуйтесь за автора. (Театр начинается с вешалки. Вешалка начинается с libexec/periodic. Зайдите в lib/, посмотрите на конструкторы в классах. Abills::HTML. Abills::Base, во где щасте. Дальше самостоятельно. :] ).
Далее. Логика списания абонентской платы - вешалка. Периоды - через дупу (пересчёт сессий невозможен в принципе; в душе не ведаю, как выдали лицензию на такое). Реализация тарифов - "за такое надо убивать из рогатки" (ц). Отдельный трэш - поддержка оборудования. Например, все роутеры выводились одним списком. На одной странице. Все стопицот, Карл! (К вопросу об установках у провайдров с 200k+. Может и установили, но сильно об этом жалеют). Авторизация на nas'ах - по три-пять минут, клиенты были безумно рады.
Судя по, автор до 2013-4-5 года лабал в стиле четвёртого перла. Тут, наверное, смешалось два принципа: 1) я художник, я так вижу, 2) нуашо, работает же. Плюс аутсорсинг совсем безмозглым макакам, у которых первый принцип в работе - "откоитируйтесь".
(Чорт, в db/ все .sql с 755!)
Матерились все. Переезд на что-либо более вменяемое был затруднён из-за наличия огромного количества костылей, соединяющих это с oss и остальными системами. (Ну, это уже не проблема автора, а откровенно колхозного менеджмента, не понимающего, зачем тратиться на софт. Это отдельный плач Яровславны за колхозтелекомы). За полтора года работы это глюкало просадило мне нервы до уровня студента-неврастеника на сессии и чуть не сделало алкоголиком.
Вам мало? Ну хорошо, внедряйте. Но заранее запастись седативным в клинических масштабах.