Page 1 of 1

Помогите с логической задачей

Posted: Sun Oct 23, 2016 5:27 am
by abo
Доброго времени суток. Прошу у вас помощи в решении скорее всего для вас простой логической задачи.

Начну издалека. В планах для собственных клиентов поднять хостинг с биллингом. Для этой задачи вполне подходит Веста - достаточно функциональный продукт с очень хорошим дизайном (за это отдельное спасибо разработчикам и дизанерам) и достаточным API. Но вот с терпимыми по внешнему виду биллингами огромный трабл. Плюс есть особенности местного эквайринга. В общем биллинг хотим пилить сами - выбора нет, да и просто интересно. В последствии хотим торговать хостингом для всех. Рано или поздно возможности сервера по вертикальному масштабированию закончатся и придется задумываться о горизонтальном.

Теперь сама задача.
Биллинг общается с панелью через API. Мы купим второй сервер, поставим на него Весту.
Как реализовать в биллинге логику того, на каком сервере у конкретного клиента будет создаваться аккаунт согласно связке тариф-шаблон и с каким сервером в последствии работать?

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

Заранее спасибо за ваши комментарии и решения.

Re: Помогите с логической задачей

Posted: Tue Oct 25, 2016 7:42 am
by Deeryo
Привет, можно использовать LoadAverage. На Veste есть график нагрузки процессора с данными о LoadAverage, соответственно имеется база rrd /usr/local/vesta/web/rrd/la/la.rrd
Можно вычислить среднее значение примерно так

Code: Select all

rrdtool graph dummy -s -1week -e start+1week DEF:test=/usr/local/vesta/web/rrd/la/la.rrd:LA:AVERAGE PRINT:test:AVERAGE:'average - %5.4lf'

Re: Помогите с логической задачей

Posted: Tue Oct 25, 2016 9:18 am
by abo
Deeryo wrote:Привет, можно использовать LoadAverage. На Veste есть график нагрузки процессора с данными о LoadAverage, соответственно имеется база rrd /usr/local/vesta/web/rrd/la/la.rrd
Можно вычислить среднее значение примерно так

Code: Select all

rrdtool graph dummy -s -1week -e start+1week DEF:test=/usr/local/vesta/web/rrd/la/la.rrd:LA:AVERAGE PRINT:test:AVERAGE:'average - %5.4lf'
Как думаете, стоит проверять нагруженность сервера только в момент регистрации нового пользователя или "обзванивать" их сторонним процессом постоянно, чтобы потом использовать эти данные например для настройки автоматической миграции учеток пользователей на менее нагруженные серверы?

Re: Помогите с логической задачей

Posted: Thu Oct 27, 2016 1:37 pm
by Deeryo
Тут нет совета. Автоматическая миграция это круто, но похоже гораздо труднее реализовывается.

Re: Помогите с логической задачей

Posted: Thu Oct 27, 2016 9:06 pm
by Mr.Erbutw
abo wrote:
Теперь сама задача.
Биллинг общается с панелью через API. Мы купим второй сервер, поставим на него Весту.
Как реализовать в биллинге логику того, на каком сервере у конкретного клиента будет создаваться аккаунт согласно связке тариф-шаблон и с каким сервером в последствии работать?
в сторону https://hopebilling.com/ru билинга что-то похожие там уже есть.