LINUX.ORG.RU

как деплоить Flask мирсервисы

 


1

2

допустим есть куча микросервисов, который в debug работают каждый на своём порту

а как это запделоить? в смысле что должны быть сверху?

можно сделать кучу урлов для каждого микросервиса через один адрес и один порт nginx

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

или как можно выставить в инет, каждый на своём порту. но опять же как выставлять в инент? не уж для каждого отдельный субдомен в нгинксе делать?

★★

Ответ на: комментарий от deterok

Вообще часто есть только внешний интерфейс, а внутренние сервисы скрыты за ним. Ты наверное немного не так понял сути микросервисов.

deterok ★★★★★ ()

если твои сервисы это отдельные эндпоинты основного урла то явно

можно сделать кучу урлов для каждого микросервиса через один адрес и один порт nginx

sfio ()

Ну так же через uwsgi на разные socketы вешай. Постучи в лс. Сам с утюга не удобно.

ggrn ★★★★★ ()
Ответ на: комментарий от ggrn

ты про схему в которой основное приложение главным блюпринтом настроено на / через конфиг nginx

а микросервисы в рамках этого же домена и порта через подключение в nginx через дополнительные proxy_pass http://backend/;

fMad ★★ ()
Ответ на: комментарий от anonymous

почему б не заюзать докер + докер компоуз?

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

Беда при этом не в самом докере, а в том, что бы заставтить ЭТО работать, надо подпереть его кучей костылей. docker-gen, docker-compose, docker-whatever ...

И при первом чихе всё это нагромождение валится в тар-тарары.

Молчу уже о том, что с каждым релизом добавляются новые костыли и выламываются старые.

beastie ★★★★★ ()
Последнее исправление: beastie (всего исправлений: 1)
Ответ на: комментарий от beastie

Увы и ах, не скажу. У нас в трипердяевске смузи не пьют, молескины и доккеры не используют.

fMad так что решил? Как реалиозвал?

ggrn ★★★★★ ()
Ответ на: комментарий от ggrn

вот шас у меня в debug есть директория services, там каждый файл это микросервис, который запускает несколько представлений на отдельном порту http сервер

но в этом случае нужно хардкорить в JS номера портов и имена сервисов, что весьма не круто когда в руках есть blueprint+url_for

а затем, при деплое эти номера портов надо выкидывать

плюсом к этом проблеме добавляется изолированность сессий на разных портах

и как бы автоматом получается, что эти микросервисы, можно через декораторы в зависимость от режима запуска debug/deploy запускаются либо как микросервисы либо как обычные блюпринты в контексте главного приложения и тогда вообще ни каких проблем не возникает

но тогда теряется смысл в этих микросервисах

у меня и так получается, что при запуске основгого flask приложения, запускается базовый минимум

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

в общем пока так наверно будет

fMad ★★ ()
Последнее исправление: fMad (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.