24 October 2019

Управление серверами с телефона: мобильный клиент сервиса RUVDS

RUVDS.com corporate blogHostingServer AdministrationSoftware
Контролировать работу VDS со смартфона не всегда удобно. Маленькие экраны не позволяют нормально работать с сайтом хостера и в этом случае на выручку приходит приложение.



Оптимизация сайта для мобильных телефонов — задача непростая. Небольшая диагональ экрана серьезно ограничивает возможности веб-разработчика, к тому же сценарии использования одного и того же сервиса с разнотипных устройств существенно отличаются между собой. Мы решили развивать сайт с прицелом на браузеры для настольных компьютеров и планшетов, а для смартфонов создать отдельное приложение. Такой подход сейчас популярен и он неплохо себя зарекомендовал. Пока доступна только программа для Android, в которой реализованы самые необходимые клиентам функции — со временем их станет больше. 

Установка и подключение


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



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

Возможности программы


Пока в RuVDS Client реализована только самая необходимая функциональность. В приложении можно быстро узнать баланс лицевого счёта, посмотреть историю пополнений и списаний, а также проверить состояние серверов и управлять их работой.



Помимо основных характеристик сервера, в мобильном клиенте RuVDS доступна статистика использования ресурсов процессора, накопителей и сети. С помощью специальной вкладки администратор может увидеть, как чувствуют себя подопечные машины, в какое время с ними возникали проблемы и из-за чего они возникали. Ещё одна вкладка позволяет выполнять основные команды: останавливать и перезапускать сервер, в т.ч. аварийно, если он не откликается. Создание и удаление VPS мы пока добавлять в приложение не стали по соображениям безопасности — это лучше делать в личном кабинете на сайте.



Стек технологий


В основе RuVDS Client лежит паттерн MVP, реализованный с помощью библиотеки Moxy. Такой подход мы сочли оптимальным, хотя можно также использовать MVVM или MVI — это вопрос личных предпочтений и наличия у корпоративных разработчиков необходимого опыта. Наш продукт построен на Single Activity Application: главный плюс здесь — жизненный цикл приложения равен жизненному циклу activity, а кроме того работать с фрагментами гораздо удобнее. Навигация реализована при помощи Cicerone — это одна из лучших подобных библиотек, пригодная для создания мобильных программ любой сложности. Также важным для нас стал вопрос выбора DI: поскольку приложение написано на Kotlin, рассматривались Dagger2 и Koin. В итоге мы остановились на последнем варианте, поскольку хотелось попробовать что-то более простое.

Перспективы


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


Only registered users can participate in poll. Log in, please.
Какие функции нужно добавить в приложение в первую очередь?
60.61% Двухфакторную аутентификацию 20
33.33% Заказ и удаление серверов 11
39.39% Изменение конфигурации серверов 13
57.58% Доступ к консоли 19
15.15% Версию для планшетов 5
42.42% Более детальную статистику нагрузки 14
12.12% Работу с финансовыми данными и документами 4
0% Свой вариант 0
33 users voted. 9 users abstained.
Tags:RuVDSмобильное приложение
Hubs: RUVDS.com corporate blog Hosting Server Administration Software
+32
4.3k 14
Comments 6
Top of the last 24 hours