Microservices 如何在Consor中的同一服务实例之间交换数据?

Microservices 如何在Consor中的同一服务实例之间交换数据?,microservices,spring-cloud,consul,Microservices,Spring Cloud,Consul,我正在尝试SpringCloud和Concur的组合,我想知道是否有办法在同一个微服务实例之间交换数据和状态 例如,我有AuthenticationService1(AS1)和AuthenticationService2(AS2)。当用户来到AS1时,他会登录,收到一个令牌,下次他来时,它只会被验证。但此时AS2并不知道AS1的状态 我看到了使用存储用户会话信息的数据库表的想法,但AS1可能有更简单的方法与AS2共享其状态或发送有关登录的消息?Consor是一个服务管理(发现、配置等),而不是缓

我正在尝试SpringCloud和Concur的组合,我想知道是否有办法在同一个微服务实例之间交换数据和状态

例如,我有AuthenticationService1(AS1)和AuthenticationService2(AS2)。当用户来到AS1时,他会登录,收到一个令牌,下次他来时,它只会被验证。但此时AS2并不知道AS1的状态


我看到了使用存储用户会话信息的数据库表的想法,但AS1可能有更简单的方法与AS2共享其状态或发送有关登录的消息?

Consor是一个服务管理(发现、配置等),而不是缓存/发布子系统

对于您的用例,您可能希望在场景后面使用共享缓存。AS1服务对用户进行身份验证,然后将令牌放入缓存。AS2可以在缓存中检索令牌。为此,您可以使用如下应用程序

  • 雷迪斯
  • 黑兹卡斯特
  • 英菲尼斯潘
  • 。。。其他东西,比如在数据库中存储数据

您还可以为每个ASx使用发布子系统和本地缓存,但在启用AS restart(缓存丢失)时可能会出现问题。所以在我看来,共享缓存更好。

谢谢!我还考虑过共享缓存,但想检查一下是否缺少一种更简单的方法。