实现微服务最佳实践的关系

时间:2018-07-29 09:41:00

标签: relationship microservices soa lumen best-fit

我正在尝试使用Lumen(微框架)来实现微服务。经过一些重新学习之后,我才知道微服务 使用SOA(面向服务的体系结构)。

由于使用SOA,因此应用程序必须具有多个松耦合且独立的模块。

我发现很好,例如汤姆先生(Mr.Tom)在git上撰写博客的帖子:https://github.com/tongtastic/lumen-blog。但是在这里我发现只有一个 实体是“发布”。

我需要知道实现微服务的最佳实践是什么,如果我们得到一个实体以上,并且它们之间存在“一对多”或“多对多”的关系。我们将如何使用该关系并获取一些数据。一般来说,一种简单的方法是 通过数据库联接。这种情况适用于Monolithic应用程序(传统应用程序)。

当我需要关联数据时,我应该在代码之间进行API调用吗?

例如我对自己的帖子发表了评论,两者都是不同的实体。我决定将帖子及其API端点放在一台服务器上,并将评论放在另一台服务器上。因此,当有人需要针对特定​​帖子的评论时,我的功能将运行什么?

function getComments($post_id){
   return api_endpoint_to_retrive_comments_againts_post($post_id); // ?
   // OR 
   return retrive_comments_from_db($post_id); // if we are sharing same DB.
}

0 个答案:

没有答案