Задать вопрос
@MAGistr_MTM
Учусь программировать

Какую архитектуру выбрать для веб-аукциона?

Доброго времени суток.

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

И так, мне нужно сделать что-то типа аукциона с веб интерфейсом(логин, роли, уведомления). Вся логика для аукциона уже готова и к ней будем доступатся по API(назовем ее AUCTION API), а сами аукциона сохраняются в ЦБД. AUCTION API - открытая(почти), поэтому мой сайт не буде единственный, который работает с базой аукционов(поэтому и доступ к логике только через API). На сайте должна быть регистрация, распредиление по ролях(закажчик, участник, админ), личный кабинет, поиск по аукционах, и тд.

На сайте буде своя БД, в которой будет держаться информация об юзерах, и основная информация об аукционах(полная инфо - в ЦБД).

Как будет происходить аукцион - пользователь(закажчик) создает аукцион на сайте. На бек-енде, идет запрос в AUCTION API на создание аукциона. Потом на участие в нем могу подать заявку другие пользователи(также запрос к API). Аукцион имеет несколько этапов: реестрация участников, вопросы, сам аукцион, жалобы, победа и другие.

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

Думаю что все сложно, но понять можно) Перейдем к архитектуре, и что у меня нарисовалось.

В качестве бек-енда плану использовать Django Rest Framwork + PostgreSQl + ElasticSearch. Для фронта - React/Vue. А вот для комуникации к AUCTION API, планирую использовать Dramatiq(так как запросы могуть обрабатыватся около 2х сек), а для изменений на фронте(после респонсов от API или других тасок по времени) - Django channels.

Поскольку проэкт может быть очень большим(относительно), и это первое задание для меня в плане придумывания архитектуры, то у меня есть несколько вопросов к Вам:
  • Имеет ли такая архитектура право на жизнь?
  • Какие подводные камне меня могут ожидать?
  • Достаточную нагрузку выдержить ли эта архитектура?
  • Какие другие библитеки/фреймворки/подходи спользовать?
Имеет ли такая архитектура право на жизнь?

Заранее благодарен за помощь.
П.С. извините за плохой русский язык.
  • Вопрос задан
  • 738 просмотров
Подписаться 4 Средний 13 комментариев
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы