SSO 系统分析、SSO工程搭建、单点登录接口文档分析及Service层接口开发并发布、单点登录检查数据是否可用-Controller层及测试

SSO 系统分析

一、什么是SSO系统?
SSO英文全称Single Sign On,单点登录。SSO是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。它包括可以将这次主要的登录映射到其他应用中用于同一个用户的登录的机制。它是目前比较流行的企业业务整合的解决方案之一。

二、为什么要有单点登录系统?
2.1 传统的登录实现方式
登陆后—》session《—访问别的页面
这种登录方式对只有一个web工程的情况下是没有问题的,但是对于分布式系统来说,由于牵扯到多个系统,如果每访问一个系统都要输入一遍用户名、密码的话那将非常麻烦,也是用户所不能忍受的,这时单点登录便派上用场了。

2.2 集群模式下的登录方式
用户—》负载均衡服务器nginx—〉1.访问用户中心要求用户登陆(tomcat1. webapp[session User1])
—》2.刷新页面,要求用户再次登陆(tomcat2. webapp[session User1])

集群和分布式的区别在于,集群是多台设备干同一件事情,而分布式是不同的设备干不同的事情。传统模式的工程当用户访问量大的时候就难以招架了,这时首先考虑到的是使用集群来增加网站的吞吐量,一个tomcat可以处理大约300个并发,多个tomcat就可以处理更多的并发。但是tomcat集群有一个致命的瓶颈,那就是session共享,由于不同的tomcat之间要以广播的方式来进行session共享,当tomcat数量较多时,广播便占据了绝大多数带宽,从而使真正的请求难以被处理,一般来说,tomcat集群中tomcat的个数不要超过5个。

2.3 集群与分布式架构
用户—》负载均衡服务器nginx—〉1.访问用户中心要求用户登陆(tomcat1. webapp[session User1])
—》2.刷新页面,要求用户再次登陆(tomcat2. webapp[session User1])
—》登陆处理 session服务器(SSO系统)登陆页面【Session User1】. ---->Redis服务器

与单纯的集群相比,把登录单独拿出来,可以使用Session服务器,保存Session信息,使每个节点是无状态。需要模拟Session。单点登录系统是使用redis模拟Session,实现Session的统一管理。登录独立的好处便是解决了session共享的问题,这样集群便可以几乎不受限制的进行扩展。

SSO工程搭建

首先,我们还是再看一下淘淘商城的系统架构,到目前

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值