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

Elasticweb — самый демократичный хостинг

Заголовок прозвучал, вероятно, через-чур амбициозно, но после ознакомления тарифных планов десятков хостеров мы просто вынуждены так думать. В Elasticweb не существует минимальной и максимальной стоимости. Клиенты платят только за использованные аппаратные ресурсы сервера.
Мнение автора может не совпадать с мнением редакции

Тарификация

Месячное обслуживание n-ого количества сайтов с общей посещаемостью 1000 человек в сутки может стоить ~30 рублей в месяц и меньше. Соориентироваться по стоимости содержания ваших проектов поможет наш калькулятор.

Хостинг

PHP версии 5.6 с Opcache. По умолчанию на каждом сервере установлены Git, Composer, Drush, wpcli, антивирус и брандмауэр. А самое пикантное это то, что в качестве веб-сервера используется Nginx. Безусловно, в этом есть как плюсы, так и минусы, но дабы не создать очередной холивар на тему “Apache vs Nginx”, я не буду заострять внимание на факторах данного выбора. По понятным причинам .htaccess файлы работать не будут, поэтому мы написали и автоматизировали выбор конфигураций для наиболее распространенных CMS и фреймворков: Wordpress 4, Drupal 7-8, Yii, Joomla 2-3, Octobercms, OpenCart 1.5, ZenCart 1.5, CMS Made Simple, KodiCMS, MaxSite CMS, MODx Revolution, Zend Framework, Symfony, Laravel, Codeigniter, Kohana, phpBB3, MediaWiki, Asgard CMS. Также мы работаем над созданием полноценного редактора конфигураций Nginx с интерактивными подсказками и автодополнениями. А на данный момент готовы абсолютно за бесплатно помочь каждому в переносе существующего проекта на Elasticweb.

Сервер статистики

Все наши сервера работают на Debian. Демон статистики, с необходимой для ресурса периодичностью, опрашивает каждый процесс пользователя и формирует отчет, который отправляется на сервер статистики. Такой демон есть на каждом сервере. После чего полученные данные группируется по серверам и аккаунтам, и представляется в виде графиков в панели управления. Чтобы обеспечить отсутсвие задержек мы реализовали экспорт по расписанию в отдельном потоке.

Мы мониторим все процессы системы, будь то активность веб-сервера, активность в командной строке или работа интерпретатора. Доктрина системы статистики — любое взаимодействие с сервером должно быть учтено ( CPU %, RAM Memory usage, IO operations, Disk usage, Web bandwidth, MySQL bandwidth). Иными словами учитывается даже открытая SSH сессия.

Сам демон написан на Python, с использованием библиотек daemon, psutil, pwd, os, time, requests, json, datetime, MySQLdb, threading, re, platform, а для аналаза трафика используется сторонний модуль nginx-module-vts.

Панель управления

Вместо CPanel и ISPmanager было принято решение изобрести собственный велосипед. Во-первых: адаптация существующих продуктов под “эластик” показалась нам очень объемной задачей, для выполнения которой потребовалось бы множество костылей. Во-вторых: у нас есть еще масса идей и реализовывать их намного проще на собственной платформе.

Основной целью при проектировании и разработке серверного менеджера было обеспечение отказоустойчивости. Нами была реализована система очередей с приоритетами и логической очередностью выполнения задач. Все команды выполняются только после сверки ключей безопасности и заточены сугубо на взаимодействие с сервером панели управления. В случае невыполнения какой-либо операции администраторам приходит информативное сообщение о проблеме.

Мы написали демон на Python для прослушки комманд, которые передаются от панели управления в формате JSON. Сама панель написана на PHP. Нам было важно получить начальную архитектуру и минимальный набор базовых функций, поэтому мы отказались от больших фреймворков вроде Symfony или Zend и за основу взяли Codeigniter 3 + HMVC ( для создания модулей ).

Изначально проект должен был появиться на русском и английском. Мы переписали дефолтные функции CodeIgniter для работы с URI, чтобы они могли учитывать язык. Говоря о самой локализации, способ хранить переводы в файлах и обращаться к ним в виде ключей нам не понравился. Поэтому, мы используем английский как базовый язык в коде и загоняем его в функцию, которая в свою очередь подключается к базе данных и ищет нужный перевод для этой строки с учетом выбраного на сайте языка.

Панель управления подразумевает под собой множество форм, их код и обработка занимала слишком много места в контроллерах. Плюс ко всему некоторые формы необходимы выводить несколькоо раз. Поэтому мы написали Formbuilder для CodeIgnitor и выложили его на GitHub, пологая что для кого-то данный инструмент будет полезен. А вообще наша команда очень альтруистически относится к OpenSource движению и мы планируем сохранить подобную практику.

Система оплаты

При разработке биллинга, мы ушли от счетов/инвойсов и месячных платежей. По аналогии с абонентами сотовой связи, у клиентов Elasticweb есть персональный баланс, с которого и происходит оплата услуг. Баланс может быть отрицательным в течении 7 дней, после чего сайты будут заблокированы, а через месяц удалены. В будущем планируется разработать систему кредита доверия к пользователям. А уже сейчас у нас работает реферальная программа для наших партнеров, условия которой можно узнать тут.

Апофеоз

Первая мысль об Elasticweb пришла совершенно случайно в обычном разговоре про железо, сервера, облачные технологии и хостинги. Разработка длилась почти 3 месяца в свободное от основной работы время. Еще месяц мы потратили на тестирование продукта и вот подошло время к одному из самых важных и значимых для нас тестов — пройти через мнение широкой публики.

Ждем вас на Elasticweb.

+2
В избр. Сохранено
Авторизуйтесь
Вход с паролем