是否有可能从不同来源的API进行查询?即,来自多个API的一个查询
在传统的web开发如果我有以下几个模块:
- 客户:clientID的,CLIENTNAME
- 订单:ordersID,ClientID的
我会在一个数据库中创建两个表和外键与连接并使我的查询。
我想要做的是用一个数据库来创建2个数据库,每个模块一个(这样我可以更容易地扩展每个模块,因为它更容易),并通过API“绑定”2个数据库。
因此,我仍然会使用“外键”(即订单表中的clientID)来“绑定”客户和订单,但由于它们不在同一个数据库中,因此我无法“加入”它们。
所以,在我的界面我想有一个:
- 客户端API,如http:mysite.com/showallClientsAPI
- OrdersAPI如http:mysite.com/showallOrdersAPI
将如何我做了一个查询(或有可能),虽然模块之间的API来获得此响应:
- SaleA
- CLIENTNAME 1
- CLIENTNAME 2
- 等
- SaleB
- CLIENTNAME 1
- CLIENTNAME 3
我可以告诉所有订单(http://mysite.com/showSalesAPI)客户端ID = 1,但这会给我一个json响应与clientID而不是客户端。
这有道理吗?你可能会问为什么我会这么做,这是一个多模块应用程序的一部分,它可以保持模块独立,而不是作为庞大数据库的一部分,用于将来的开发或与其他应用程序的交互)
有什么想法?
谢谢您的回复。将多个服务器分开的原因是我想将“订单”或“客户端”或其他任何东西视为独立模块。这样,如果我想在订单模块中更改某些内容,它不会直接影响应用程序的其余部分。我明白,虽然我必须付出“表现价格”。也许复制是一个更好的解决方案。我会看着骡子。它看起来很有趣。 – user2062455 2013-02-13 03:23:13
如果我将这些实体放在同一个服务器上但不同的数据库实例中,性能会受到很大影响吗? – user2062455 2013-02-13 08:20:11
没有,那很好。如果你问我,那将是非常高效的。 – ryan1234 2013-02-13 16:07:20