Фрилансеры предложат решение вашей задачи уже через несколько минут!
Публикация заказа не займет много времени.
Арсений Попов
23 года, Россия
8 месяцев в сервисе
Был онлайн 1 месяц назад

Добрый день! 

Задача — Написать микросервис для регистрации и хранения учётных записей пользователей приложения.

Предпочтительный стек nodejs-typescript.
Кодовую базу микросервиса необходимо покрыть unit тестами: предпочтительно использовать chai mocha.

Ко всем методам сервиса необходимо написать документацию: что принимают, что возвращают, коды ошибок: документация в формате markdown.

Предпочтительно использовать:

  • SESE подход к написанию функций.
  • Иммутабельность Методов
Для микросервиса необходимо настроить докер контейнер в двух вариантах: dev с логгированинм и отладкой и production.

Методы микросервиса
  • Login
  • Logout
  • Auth
  • Check token
  • User get
  • User update
  • User delete
  • Get users
  • get users online
  • Get activity
  • Get credentials
  • start session
  • end session
  • check session

Микросервис будет иметь встроенную базы данных.
  1. для пользователей
  2. для хранения токенов
Возможны варианты для пользователей:
  • SQLite
  • Maria dB
Возможные варианты для токенов:
  • redis
  • memcached

Микросервис будет общаться по tcp/ip протоколу.
Предпочтительно использовать net (nodejs).Микросервис состоит из нескольких частей:
  • Бд пользователей
  • Бд для токенов
  • Почтовый сервис
  • Основная бизнес логика
  • Провайдер для общения с внешним миром (tcp/ip)
Примечания
  1. Необходимо оставить возможность для тестирования: несколько тестовых почт, токенов, пользователей.
  2. Необходимо оставить возможность заменить tcp провайдер на rabbit или иной не вмешиваясь в основную логику приложения
  3. На микросервисе не хранятся картинки avatar пользователей, а только ссылки на них. Перед сохранением ссылки проверить её валидность: места информацию и вес
  4. Микросервис не поднимает почтовый map или smtp сервер, а подключается через сторонний и реализует только логику отправки писем.
  5. Шаблоны писем хранятся статическими файлами на сервере
В откликах прошу указывать ссылки на код с релевантным опытом, количество свободных рабочих часов в неделю.