【发布时间】:2017-03-19 15:59:51
【问题描述】:
我们的应用程序基于 API 优先架构,目前基于单个域/服务:
api.todos.com
API 的使用者是:
- 我们的网络前端
- 我们的移动应用程序
- 其他业务/公众
我们将为同一个应用程序构建用不同语言编写的新微服务。例如,我们可能会为以下对象开发 API 服务:
- 统计数据
- 博客/内容
- RSS 提要
- 搜索
我的问题是关于处理域。最好将每个服务拆分为不同的子域,例如
api.todos.comstats.todos.comcontent.todos.comrss.todos.comsearch.todos.com
或者最好有一个统一的 API 域,我们在其中执行 HTTP(第 7 层)路由以到达我们的端点。例如
api.todos.com/todosapi.todos.com/statsapi.todos.com/contentapi.todos.com/rssapi.todos.com/search
不确定哪个更适合公共 API?拥有多个子域会更容易,而不必处理中间路由层/代理。
【问题讨论】:
标签: node.js api docker kubernetes microservices