10.20

1.Dubbo
1.1Dubbo介绍

Apache Dubbo |ˈdʌbəʊ| 是一款高性能、轻量级的开源Java RPC框架,它提供了三大核心能力:面向接口的远程方法调用,智能容错和负载均衡,以及服务自动注册和发现。nginx

1.2Dubbo特色

image.png

2 Dubbo入门案例
2.1 定义公共接口项目

说明:接口项目通常定义公共的部分,而且被第三方依赖
image.pngredis

2.2服务提供者介绍
2.2.1提供者代码结构

image.png

2.2.2编辑实现类

image.png

2.2.3编辑提供者配置文件

image.png

2.3服务者消费介绍
2.3.1编辑controller

image.png

2.3.2编辑YML配置文件

image.png

2.4关于Dubbo框架知识点
2.4.1问题1:### 若是其中一个服务器宕机 用户访问是否受限?

答:因为zk的帮助,使得程序永远能够访问正确的服务器.而且当服务重启时,duboo有服务的自动发现功能,消费者不须要重启便可以访问新的服务.json

问题2:若是ZK集群短期宕机,用户访问是否受限?

答: 用户的访问不受影响,因为消费者在本地存储服务列表信息,当访问故障机时,自动的将标识信息改成down属性.服务器

2.5Dubbo负载均衡策略
2.5.1负载均衡种类

1.客户端负载均衡
Dubbo/SpringCloud等微服务框架
image.pngcookie

2.服务端负载均衡
说明:客户端发起请求以后,必须由统一的服务器进行负载均衡,全部的压力都在服务器中.
NGINX
image.png负载均衡

2.5.2Dubbo负载均衡方式

image.png

关于ZK数据存储结构

说明:在zk中数据的存储采用树形结构的方式保存
命令: [root@localhost bin]# sh zkCli.sh
查询命令: ls /…
image.png框架

用户单点登陆原理介绍
4.3.1传统方式登陆存在的问题

说明:若是采用SESSION的方式实现用户的登陆操做,因为nginx负载均衡的策略,用户能够访问不一样的服务器.可是Session不能共享,因此致使用户频繁的登陆. 用户的体验很差.
image.png微服务

SSO

单点登陆(SingleSignOn,SSO),就是经过用户的一次性鉴别登陆。当用户在身份认证服务器上登陆一次之后,便可得到访问单点登陆系统中其余关联系统和应用软件的权限,同时这种实现是不须要管理员对用户的登陆状态或其余信息进行修改的,这意味着在多个应用系统中,用户只需一次登陆就能够访问全部相互信任的应用系统。这种方式减小了由登陆产生的时间消耗,辅助了用户管理,是目前比较流行的性能

京淘项目单点登陆设计

image.png
实现步骤:
1.当用户输入用户名和密码点击登陆时,将请求发送给JT-WEB消费者服务器.
2.JT-WEB服务器将用户信息传递给JT-SSO单点登陆系统完成数据校验.
3.若是登陆成功,则动态生成密钥信息,将user数据转化为json.保存到redis中. 注意超时时间的设定.
4.JT-SSO将登陆的凭证 传给JT-WEB服务器.
5.JT-WEB服务器将用户密钥TICKET信息保存到用户的cookie中 注意超时时间设定.
6.若是登陆不成功,则直接返回错误信息便可.spa

相关文章
相关标签/搜索