Проекты

Почему выбрали Node. js для серверной части VPN-приложения

Почему выбрали Node. js для серверной части VPN-приложения

Коротко

  • 01
    Что за инструмент

    Node.js — платформа для веб-разработки на основе языка Java Script

  • 02
    Где используем

    Приложение c VPN для крупного сервиса развлечений

  • 03
    Какие задачи решаем с помощью технологии

    Настроили процесс приема оплаты

    Создали механизм сбора статистики

    Уменьшили нагрузку на сервера

  • 04
    Результаты работы системы для бизнеса

    50 000 раз приложение скачали в Google Play в первые три месяца

    6+ платформ на которых работает приложение

    6 месяцев — срок разработки приложения

Проект: приложение с VPN для крупного сервиса развлечений

Наш клиент — крупнейший контент-провайдер в Канаде. Один из его проектов — сервис развлечений: более 40 млн опубликованных роликов и 350 тысяч пользователей онлайн каждый день.

Кейс: VPN-приложение для сервиса развлечений

У пользователей сервиса из некоторых стран была проблема с доступом: они не могли смотреть контент из-за блокировок. OrbitSoft решил эту проблему: мы разработали VPN-приложение, которое можно устанавливать на 6 разных платформ и увеличили количество клиентов сервиса. Подробнее о разработке можно почитать в обзоре кейса.

Приложение локализовано более чем на 30 языков — оно доступно пользователям в разных странах.

Почему мы выбрали для разработки Node. js

Node.js — это среда выполнения JavaScript с открытым кодом вне браузера. Она работает на стороне сервера на основе ядра JavaScript V8 (Chrome).

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

Зачем мы оставили Node. js? Из-за следующих причин:

  • Асинхронность в сочетании с событийным подходом. Удобно программировать интерактивные приложения, которые зависят от действий пользователей.
  • Большая библиотека компонентов Java Script упрощает разработку. Библиотеки постоянно развиваются и создаются новые.
  • Более 500 тысяч пакетов решений с открытым исходным кодом — в Node. js встроен удобный менеджер пакетов npm. На платформу легко добавлять новые элементы, чтобы создавать любые функции.
  • Движок V8. Компилятор позволяет не терять в скорости разработки больших приложений.

Какие задачи решаем с помощью Node. js

Node.js используем для серверной части приложения: инструмент позволяет приложению выполнять несколько задач одновременно и не виснуть. Это важное преимущество. Богатая библиотека компонентов и опенсорсных решений дает возможность дорабатывать функции приложения под задачи бизнеса.

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

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

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

К приложению теперь можно подписаться без создания аккаунта

Наладили сбор статистики. Компания анализирует поведение своих пользователей: какие ролики популярны, а какие нет, какого возраста пользователи просматривают контент, как часто. Анализ поведения позволяет компании развиваться, увеличивать свой доход, наращивать конкурентное преимущество.

Мы наладили сбор статистики и создание отчетов на Node.js.

Клиент может задать любые интересующие его параметры и получить отчет по ним.

Защитили данные от нападений мошенников. У любого инструмента программирования есть свои уязвимости — мошенники могут воспользоваться ими, чтобы украсть данные пользователей, контент или разработку.

Мы учли уязвимости Node. js при создании приложения — данные и код в безопасности.

Это часть кода для настройки сервера и использование серверного софта

Результаты работы с Node JS

Запуск приложения на базе Node Js в App Store был в августе 2020. Исправленную версию мы выкатили всего через полгода — в январе 2021. Со всеми доработками и улучшениями проект занял около 10 месяцев.

Приложение можно устанавливать на 6 платформ: iOS, macOS, Android, Android TV, Fire OS, Windows.

На данный момент его установили более 250 тысяч раз.

Технический блок

Windows: все версии, начиная с Windows 7

  • Интегрированная среда разработки Microsoft Visual Studio 2019
  • Разработка дизайна Microsoft Expression Blend
  • Язык программирования C#
  • Windows Presentation Foundation (WPF)
  • NET Framework 4.7.2
  • WiX Toolset для создания инсталлера

iOS

  • Язык Swift
  • iPhone, iPad
  • Минимальная версия iOS — 12.0
  • Библиотеки: Firebase (Analytics, Messaging, DynamicLinks), Google IDFA Support, Facebook SDK, lottie, Toast-Swift, PlainPing
  • Система сборки CocoaPods

macOS

  • Язык Swift
  • macOS
  • Минимальная версия macOS — 10.14
  • Библиотеки: lottie, Toasts, PlainPing, SRTabBarController (с исправлениями), CustomSegue, CustomButton, FLOPageViewController
  • Системы сборки CocoaPods, Swift Package

Android

  • API level 21+
  • Android, Android TV, Fire OS
  • Phones, tablets, TV
  • Язык программирования Kotlin
  • Использованные паттерны — MVVM
  • Библиотеки: Firebase (Cloud Messaging, Analytic, Crashlytics), Google Play Billing Library, Leanback, AndroidX, Lottie

Frontend

  • React.js;
  • Vue.js
  • WordPress

Backend

  • Node.js
  • TypeScript
  • NoSQL (MongoDB)

Библиотеки

  • Express.js
  • Moment.js
  • Mongoose.js
  • Jsonwebtoken.js

Получите ответ по смс

Ваше сообщение успешно отправлено!
Представьтесь пожалуйста
Укажите номер, на который придет ответ
Нажимая на кнопку, вы даете согласие
на обработку персональных данных.

Перезвонить вам, чтобы ответить на вопросы?

Когда с вами связаться?

Связаться по телефону:+7 499 321-59-32

Нажимая на кнопку, я принимаю условия политики и пользовательского соглашения

Фото эксперта
Дмитрий

Проектный менеджер

Получите ответ на ваш вопрос в любимом мессенджере

Выберите удобный мессенджер и начните диалог прямо сейчас

Telegram WhatsApp

Рассчитать стоимость проекта

Расскажите о вашем проекте, чтобы мы могли проконсультировать вас.

Напишите ваше имя
Укажите ваш email

Выберите удобный для вас способ связи

Мы сразу получим ваш запрос и поможем в решении проблемы

Написать в Telegram

Написать в WhatsApp

Позвонить нам