0

我们正在构建一个相当大的系统,它将公开几个不同的 REST API,包含一个 Mongodb 数据库、一个 Redis 缓存层和一个后端计算库。目前我们正在使用 Flask-Restful 来构建我们的 API,但由于各种原因,我们还需要运行另一个提供数据库资源的 Flask 实例,以及在前端站点之上的另一个层。蓝图并不是真正的解决方案,因为我们可能希望在 ec2 中的不同机器上解耦这些不同的服务。

我们计划使用 Apache+WSGI 作为生产服务器,但是每个烧瓶服务器都需要一个唯一的端口,管理所有这些微服务是一场噩梦。我听说过网关 API 的概念,但我真的找不到关于如何实现一个或在实践中看起来如何的文档。

如今,微服务/SOA 似乎是一笔巨大的交易,从某种意义上说,我们的架构就是围绕它设计的。但是我很难找到有关如何在实践中执行此操作的任何信息,尤其是在我们的特定设置中。管理所有这些服务器似乎是一场潜在的噩梦。感觉使用 Docker 可以解决我们大部分的头痛问题,但我真的很想知道人们在使用容器之前做了什么。

TLDR:有很多烧瓶服务器构成了我们的微服务架构。不知道如何管理。

4

1 回答 1

2

你可以看看在 Emperor 模式下使用 uWSGI。它旨在处理此类情况。这是来自文档的引用:

如果您需要在单个服务器或一组服务器上部署大量应用程序,Emperor 模式就是您的选择。它是一个特殊的 uWSGI 实例,它将监视特定事件并根据需要生成/停止/重新加载实例(称为附庸,当由皇帝管理时)。

如果您不限于使用 mod_wsgi,那么我会看看 uWSGI。

于 2015-02-20T17:55:14.987 回答