Главное Авторские колонки Вакансии Образование
493 1 В избр. Сохранено
Авторизуйтесь
Вход с паролем

Работа над облачным решением

Мнение автора может не совпадать с мнением редакции


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

Я опишу одну из проблем, которую нам пришлось решать в процессе запуска облачного решения.

Бизнес такси состоит из двух основных компонентов, которые обеспечивают работу такси: телефония (без нее вы не сможете просто принять заказ) и
системы по обработке заказов и передаче их водителям.

Я не буду подробно описывать, как решают проблему с обработкой заказов таксопарки, а сразу перейду к облачному решению.

Мы должны были придумать решение, которое позволяло бы использовать продукт через облако и при этом максимально сократить издержки на ресурсы (сервера).

Первый вариант: мы берем машину (мощный сервер), разбиваем ее на виртуальные, и цепляем на одну машину до 5-7 клиентов. При этом есть возможность масштабировать (выделять доп. ресурсы для растущих клиентов). Но в этом случае мы получаем проблему с телефонией. Проблема с IP- адресами (дефицит), и делятся ими хостеры не особо охотно. Т.е. мы получаем на одну машину один IP- адрес. С точки зрения обработки заказов- это не проблема, сервер сможет разрулить, где чей заказ, но со стороны телефонии возникают сложности.

В идеале мы должны получить под каждого отдельного клиента свой ip, и тогда не думать над настройками телефонии и ее маршрутизацией.Но мы получаем один IP на всех клиентов, находящихся на этой машине. Тут можно было бы использовать связку нескольких ip-pbx (Asterisk), но сохранялся бы риск: когда бы основной астериск (который раскидывает звонки между дочерними) упал, то все клиенты, которые находились бы на одной машине, потеряли бы телефонию.

Второй вариант: изначально брать под каждого клиента виртуальную машину у хостера и на нее вешать серверный продукт СКАТА и телефонию. Тогда мы получаем на каждого клиента свой ip- адрес. Но тут возникают проблемы масштабирования. В случае роста бизнеса, клиента пришлось бы пересаживать на новую виртуалку с переносом всех баз, сменой ip- адреса и пр., что негативно бы сказалось на работе таксопарка. При использовании отдельного виртуального сервера под каждого клиента в несколько раз вырастает стоимость расходов.

И, в конечном итоге, мы пришли к третьему варианту: совместить два первых решения, но с доработками.

Мы взяли мощный сервер, как и предполагалось в первом варианте, и посадили на него несколько клиентов. Плюсы такого расположения описаны выше. Под телефонию взяли отдельные виртуальные машины у хостера с отдельным ip. ip-pbx практически не требователен к ресурсам, что позволило нам взять самые дешевые vps под телефонию.
В итоге, мы разделили продукт: сервер, на который ставится СКАТ , и телефонию, которую поставили на vps.

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

В след. статьях я расскажу о мобильном приложении (с цифрами и ценами) :) а так же о запуске проекта в сегменте b2c.
0
В избр. Сохранено
Авторизуйтесь
Вход с паролем