我们的应用程序基于API第一体系结构,目前基于单个域/服务:API设计 - 分裂成不同的子域(微服务)
api.todos.com
API的消费者分别是:
- 我们网络的前端
- 我们的移动应用
- 其他业务/公共
我们将建立新的微服务为不同的语言编写的相同的应用程序。例如,我们可以开发API服务:
- 统计
- 博客/内容
- RSS订阅
- 搜索
我的问题是围绕处理领域。最好是将每个服务分成不同的子域,例如
api.todos.com
stats.todos.com
content.todos.com
rss.todos.com
search.todos.com
或者是它最好有我们做一个统一的API域HTTP(第7层)路由到达到我们的终点。例如
api.todos.com/todos
api.todos.com/stats
api.todos.com/content
api.todos.com/rss
api.todos.com/search
不知道这是最好的公共API?拥有多个子域会更容易,不必处理中间路由层/代理。