• Как написать вызов функции не требующий окончания вызываемой функции?

    @AlbertForest
    await self.count_TF(self, key)
    замени на
    asyncio.create_task(self.count_TF(self, key))

    time.sleep(5)
    замени на
    await asyncio.sleep(5)

    и вместо k = await self.send_message(destination, text)
    я бы сделал
    while True:
        for key in self.port:

    Не вижу смысла делать рекурсию там где можно обойтись без нее
    Ответ написан
    1 комментарий
  • Как лучше организовать работу базы данных и приложений в докерах?

    подскажите пожалуйста как лучше организовать работу микросервисов
    Это гооловная боль программистов. Задача девопс предоставить им среду исполнения и организовать сетевую связность. DDD и прочие шаблоны удел программистов.

    Стоит ли разворачивать БД в докере, или лучше на хосте, или вообще на другой машине, почему, и какие могут быть подводные камни?
    Тут многое зависит от проекта. Если это наколенный сайт, коих подавляющее большинство, можно сильно не заморачиваться и лепить всё на одном хосте. Но есть правило хорошего тона: разносить хранилище данных (СУБД) и среду обработки данных (обычно бэкенд). Потому что бэкенд может скалироваться горизонтально без особых проблем (но программисты и тут не дремлют), с базами такой номер далеко не всегда проходит. Второй момент: обновление кода (бекенда) не должно аффектить данные (СУБД). Но блин проклятые миграции, миграции, миграции.
    Поэтому когда есть возможность разделай код и базы по разным хостам, чтобы спать спокойно. Когда совсем хреново с деньгами и бизнес трясётся за каждую копейку (собственно как всегда), смело лепи на одном хосте (но только не в одном контейнере, не уподобляйся некоторым отечественным компаниям в сфере безопасности). И не парься это совершенно не твоя забота. Ты работаешь с тем что есть.
    Ответ написан
    1 комментарий