Объяснение принципов этапов работы ТЗ на Golang

5 000 руб. за проект
29 ноября 2023, 22:11 • 3 отклика • 49 просмотров
Необходимо разработать демонстрационный сервис с простейшим интерфейсом, отображающий данные о заказе. Модель JSON прилагается к заданию.

  1. Разработать сервис

    1. Реализовать подключение и подписку на канал в nats-streaming
    2. Полученные данные записывать в БД
    3. Реализовать кэширование полученных данных в сервисе (сохранять in memory)
    4. В случае падения сервиса необходимо восстанавливать кэш из БД
    5. Запустить http-сервер и выдавать данные по id из кэша
Советы
  1. Данные статичны, исходя из этого подумайте насчет модели хранения в кэше и в PostgreSQL. Модель в файле model.json
  2. Подумайте как избежать проблем, связанных с тем, что в канал могут закинуть что-угодно
  3. Чтобы проверить работает ли подписка онлайн, сделайте себе отдельный скрипт, для публикации данных в канал
  4. Подумайте как не терять данные в случае ошибок или проблем с сервисом
  5. Nats-streaming разверните локально (не путать с Nats)