| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 网络协议 -> Dubbo -> 正文阅读 |
|
[网络协议]Dubbo |
一.dubbo环境搭建1.安装zookeeper并配置?2.官网下载incubator-dubbo-ops-master? ?(1)下载后的目录名为:incubator-dubbo-ops-master,下图是incubator-dubbo-ops-master里的结构。 ?(2)进入dubbot-admin,并到src\main\resources\aapplcation.properties中确认zookeeper的配置 ?(3)打包dubbbo-admin。下图路径下cmd,然后运行:mvn clean package ?(4)?然后退出cmd窗口,发现还在上图目录下找到target中 有一个jar包剪切到下图目录下(截切到下一个目录下是为了方便,没其他意思): ?(5)运行dubbo-admin:java -jar dubbo-admin ????????切记:运行下方时一定要启动了zookeeper的服务端和客户端。 浏览器地址输入:????????http://localhost:7001/ ? ? ? ? 账号密码都为:root (6)点击如图,可见一些已经运行的服务 3.incubator-dubbo-ops-master下使用dubbo-monitor-simple(1)进入下图目录,确认配置 ? (2)下图目录下:进入cmd窗口:mvn clean package (3)上一步完成后,在同一级目录发现了target,进入target,这里我们找到那个压缩包,解压。 ?????????为了方便使用放到外面:() ?(4)进入下图目录,双击start.bat启动服务。注意请确保zookeeper的服务端与客户端已启用。 dubbo-monitor-simple-2.0.0-assembly端口默认为8080。启动后见下图。 ?4.监控中心?(1)dubbo-admin 图形化的服务管理页面;安装时需要指定注册中心地址,即可从注册中心中获取到所有的提供者/消费者进行配置管理 (2)dubbo-monitor-simple 简单的监控中心; 二.整合springboot先运行zookeeper的服务端与客户端,再运行dubbo-admin和dubbo-monitor-simple 见springboot-demo的springboot-dubbo模块。gmall-interface子模块为公共模块。 product和consumer模块都配置好后: 第一,可见下图 ?第二,可见下图: 三.高可用1、zookeeper宕机与dubbo直连(1)现象:zookeeper注册中心宕机,还可以消费dubbo暴露的服务。 (2)原因: ? ? ? ? a.注册中心全部宕掉后,服务提供者和服务消费者仍能通过本地缓存通讯 ? ? ? ? b.dubbot直连,绕过注册中心。如下图 ? 2、集群下dubbo负载均衡配置在集群负载均衡时,Dubbo 提供了多种均衡策略,默认为 random 随机调用。
?(2)下图为在线修改权重? 3、整合hystrix,服务熔断与降级处理(1)服务降级 什么是服务降级? 当服务器压力剧增的情况下,根据实际业务情况及流量,对一些服务和页面有策略的不处理或换种简单的方式处理,从而释放服务器资源以保证核心交易正常运作或高效运作。 向注册中心写入动态配置覆盖规则:
其中: ? ? ? ? a.mock=force:return+null 表示消费方对该服务的方法调用都直接返回 null 值,不发起远程调用。用来屏蔽不重要服务不可用时对调用方的影响。(下图屏蔽) ? ? ? ? b.还可以改为 mock=fail:return+null 表示消费方对该服务的方法调用在失败后,再返回 null 值,不抛异常。用来容忍不重要服务不稳定时对调用方的影响。(下图容错) ? ? ? ? 见下图: (2)集群容错 ?????????在集群调用失败时,Dubbo 提供了多种容错方案,默认为 failover 重试。 集群容错模式:
(3)整合hystrix ????????Hystrix 旨在通过控制那些访问远程系统、服务和第三方库的节点,从而对延迟和故障提供更强大的容错能力。Hystrix具备拥有回退机制和断路器功能的线程和信号隔离,请求缓存和请求打包,以及监控和配置等功能。 ? ? ? ? 见springboot-demo和dubbo.docx。由于现在Hystrix现在不怎么用,就不写了,有空整合Sentinel,整合方法可参考dubbo.docx中的整合Hystrix部分 四.Dubbo原理可以用netty和动态代理自己写一个dubbo也不难 |
|
网络协议 最新文章 |
使用Easyswoole 搭建简单的Websoket服务 |
常见的数据通信方式有哪些? |
Openssl 1024bit RSA算法---公私钥获取和处 |
HTTPS协议的密钥交换流程 |
《小白WEB安全入门》03. 漏洞篇 |
HttpRunner4.x 安装与使用 |
2021-07-04 |
手写RPC学习笔记 |
K8S高可用版本部署 |
mySQL计算IP地址范围 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 9:56:33- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |