微服务架构基于java中的RESTful API

时间:2017-05-16 11:30:28

标签: java rest design-patterns microservices

实施 WebService 的最佳架构,它从一方接收请求,保存并增强它,然后使用新参数调用另一项服务。 这有什么特别的ActionNameAttribute吗?

3 个答案:

答案 0 :(得分:1)

要做的事情不是很多,但是从你所说的话来看,这听起来像是"pipes and filters"的工作!

要获得更准确的答案,您可能想问自己一些更详细的问题:

如果您需要对传入消息进行任何验证或转换?您是否希望以相同的方式处理所有请求,或者是否有不同的类型?外部服务是否可能发生变化,如果是这样,他们会经常这样做吗?如果最终的Web服务调用失败,您想要做什么(应该回滚数据库记录吗?)?您想如何报告失败/回复 - 您需要报告这些吗?您是否需要一种机制来跟踪特定请求的进度?

答案 1 :(得分:0)

由于您正在寻找设计模式,我想您可能希望比较在项目环境中使用微服务编排与编排的优缺点。

答案 2 :(得分:0)

如果您不需要立即响应呼叫系统,我建议您使用event-driven方法,如果可行的话。因此,您将拥有一个消息代理,而不是REST服务,您的服务将订阅某些事件。这将使您的消费者隐藏在消息代理之后,这将使您的系统更少耦合。

这可以通过 Spring Cloud Stream 来实现,在那里您将拥有一个Sink(微服务生成事件,变换器 - 微服务,使中间转换成为可能)和源 - 微服务,接收最终结果进一步处理)。

另一种可能的情况可能是 Camel 。它基本上内置了所有集成模式,因此基于REST API或事件实现解决方案应该不是问题。

相关问题