Django и микросервисы - Как я могу проектировать микросервисы в django

Я изучаю микросервисы и есть требование разработать фильтр типа Amazon filter и другие фильтры. Как я могу сделать это с помощью микросервисов.

Дизайн пользовательского интерфейса специально располагает фильтры справа, когда пользователь выбирает фильтр, конкретный элемент, содержащий строку, должен отображаться в правой части таблицы.

Для проектирования микросервисов могу ли я взять все данные, которые предоставляются в микросервисах и отфильтровать в другом микросервисе. Я просто застрял с частью фильтрации, как я могу разработать в django это должно быть сделано с фронтальной стороны? Или это может быть разработано через микросервисы.

Я разрабатываю только api с микросервисами или я делаю back end функциональность для этого. У меня есть большие сомнения, если я разрабатываю только api, как я могу вызвать в шаблоне django?

Является ли микросервисом только создание api. Например, есть проект django, где пользователь может поставить лайк и прокомментировать пост. Например, есть проект django, в котором пользователь может поставить лайк и прокомментировать сообщение, и проект comment, в котором пользователь может прокомментировать сообщение. И оба проекта докеризованы. Оба связаны через микросервисы для того, чтобы получить лайк и комментарий вместе на веб-странице home.html. Должен ли я создать только api для них или также я должен создать функциональность бэкенда? Как я могу вызвать это в шаблоне django для фронтэнда?

Вы можете создавать определенные пакеты.

Что я делаю, и вы можете следовать этому:

1. Способ создания микросервиса django

Django разделен по приложениям, вот так вы можете создать каждый сервис в каждом приложении:

ex:

your_main_project/
      |
      |_main_folder/
      |   settings.py
      |   urls.py
      |   ...
      |
      |_app_1/ <--------- app that will become a package/service :)
      |
      |_app_2/

2.Создать пакет

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

Например, ваш app_1 - это услуга, которую вы хотите продавать отдельно своим клиентам, вы можете создать (допустим) app_1_package.

Вот ссылка непосредственно из документации django, которая объясняет, как именно это сделать.

После создания просто инициируйте git-репозиторий для пакета, который вы уже создали, и вы можете установить его с помощью команды pip, например:

pip install git+https://github.com/your_username/app_1_package.git

Поначалу это может быть трудно, но это только для вашего личного использования и/или ваших клиентов, вам не нужно загружать, например, в Pypi.

3. Удаленное добавление пакетов

Это часть, которую я не очень хорошо понимаю, но я могу сказать, что там, где я работаю, ребята из Infra делают так: добавляют команду pip install внутри команды .sh как команду оболочки, чтобы установить ее автоматически.

Все шаги, необходимые для создания микросервисов, я знаю в двух словах.

Вернуться на верх