Apache Dubbo |ˈdʌbəʊ| 是一款高性能、轻量级的开源Java RPC框架,它提供了三大核心能力:面向接口的远程方法调用,智能容错和负载均衡,以及服务自动注册和发现。nginx
说明:接口项目通常定义公共的部分,而且被第三方依赖redis
答:因为zk的帮助,使得程序永远能够访问正确的服务器.而且当服务重启时,duboo有服务的自动发现功能,消费者不须要重启便可以访问新的服务.json
答: 用户的访问不受影响,因为消费者在本地存储服务列表信息,当访问故障机时,自动的将标识信息改成down属性.服务器
1.客户端负载均衡
Dubbo/SpringCloud等微服务框架cookie
2.服务端负载均衡
说明:客户端发起请求以后,必须由统一的服务器进行负载均衡,全部的压力都在服务器中.
NGINX负载均衡
说明:在zk中数据的存储采用树形结构的方式保存
命令: [root@localhost bin]# sh zkCli.sh
查询命令: ls /…框架
说明:若是采用SESSION的方式实现用户的登陆操做,因为nginx负载均衡的策略,用户能够访问不一样的服务器.可是Session不能共享,因此致使用户频繁的登陆. 用户的体验很差.微服务
单点登陆(SingleSignOn,SSO),就是经过用户的一次性鉴别登陆。当用户在身份认证服务器上登陆一次之后,便可得到访问单点登陆系统中其余关联系统和应用软件的权限,同时这种实现是不须要管理员对用户的登陆状态或其余信息进行修改的,这意味着在多个应用系统中,用户只需一次登陆就能够访问全部相互信任的应用系统。这种方式减小了由登陆产生的时间消耗,辅助了用户管理,是目前比较流行的性能
实现步骤:
1.当用户输入用户名和密码点击登陆时,将请求发送给JT-WEB消费者服务器.
2.JT-WEB服务器将用户信息传递给JT-SSO单点登陆系统完成数据校验.
3.若是登陆成功,则动态生成密钥信息,将user数据转化为json.保存到redis中. 注意超时时间的设定.
4.JT-SSO将登陆的凭证 传给JT-WEB服务器.
5.JT-WEB服务器将用户密钥TICKET信息保存到用户的cookie中 注意超时时间设定.
6.若是登陆不成功,则直接返回错误信息便可.spa