一直想学点微服务的东西,关于微服务我觉得首要就是要解决单点登录的问题,在.net 领域提供的方案是IdentityServer,这个感觉学起来有点复杂,而且这个东西好像要收费,也做过一点时间java开发,项目里用redis做单点登录,感觉这种方案简单些,
所以想问大家你们做微服务怎么做单点登录?
用redis做单点登录的优缺点?
OAuth2 JWT SAML OpenID Connect 都是实现方案
redis做单点登录的优缺点:
优点:
基于内存性能快 (高性能)
redis支持数据分片、复制(可水平扩展)
redis支持节点数据持久化 (高可靠)
简单
Redis 可进行密码认证和 SSL/TLS 加密(安全)
缺点:
内存受限
数据一致性问题
如果 Redis 的单个节点崩溃,可能会影响整个单点登录系统的可用性,需要采取备份和故障转移等措施来保障系统的稳定性。(单点故障)