编程语言
首页 > 编程语言> > java – 在微服务中使用会话是错误的吗?

java – 在微服务中使用会话是错误的吗?

作者:互联网

我已经读过,会话违反了RESTfulness的概念.

Do sessions really violate RESTfulness?

Session Management in microservices

RESTful Authentication

由于微服务不可避免地使用REST,这同样适用于此吗?如果是这样,为什么我们有春季会议?它甚至列出了’Spring Session允许在头文件中提供会话ID以使用RESTful API’作为其功能之一.

解决方法:

除了Scaling作为微服务的优势之外,它还为您提供了选择多语言架构的灵活性,即(使用正确的编程语言,框架,数据库以获得正确的工作).

如果你使用spring会话(off-course提供跨节点的会话复制),在内部它使用redis / gemfire / hazelcast作为复制会话存储,但你必须坚持使用一种编程语言&所有服务的框架,即Java& Spring resp.(你可以用其他语言编写你自己的实现来从会话存储中读取,但它重新发明了轮子)这将带走Ployglot Architecture的好处.

因此,通常在微服务架构中,您具有令牌服务(并且它应该能够单独扩展)实现以生成用于认证和扩展的令牌(也称为sessionIds).在每个服务中授权,您应该尽量避免存储会话信息.它还有助于避免“单点故障”.

标签:java,spring-security,spring-boot-2,microservices,spring-session
来源: https://codeday.me/bug/20190714/1458015.html