自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(20)
  • 收藏
  • 关注

原创 13. dubbo分析

RoundRobinLoadBalance 的最终形态前文我们介绍了RoundRobinLoadBalance的多次重构,接下来即RoundRobinLoadBalance 先版本的最终形态public class RoundRobinLoadBalance extends AbstractLoadBalance { public static final String NAME = "roundrobin"; private static int RECYCLE_PERIOD

2021-12-27 13:05:09 61

原创 12.dubbo分析

2021SC@SDUSCRoundRobinLoadBalance 的改进上文说到,RoundRobinLoadBalance对invoker的返回时机有问题,会造成性能缺陷。以下是社区对该问题的改进方法。public class RoundRobinLoadBalance extends AbstractLoadBalance { public static final String NAME = "roundrobin"; private final ConcurrentMap

2021-12-19 21:56:12 186

原创 11.dubbo分析

2021SC@SDUSCRoundRobinLoadBalance先来了解一下什么是加权轮询。所谓轮询是指将请求轮流分配给每台服务器。举个例子,三台服务器 A、B、C。s将第一个请求分配给服务器 A,第二个请求分配给服务器 B,第三个请求分配给服务器 C,第四个请求再次分配给服务器 A。这个过程就叫做轮询。轮询是一种无状态负载均衡算法,实现简单,适用于每台服务器性能相近的场景下。但现实情况下,我们并不能保证每台服务器性能均相近。如果我们将等量的请求分配给性能较差的服务器,这显然是不合理的。因此,这个时候

2021-12-19 21:50:25 80

原创 10.dubbo分析

2021SC@SDUSCConsistentHashLoadBalance一致性 hash 算法的工作过程是这样的,首先根据 ip 或者其他的信息为缓存节点生成一个 hash,并将这个 hash 投射到 [0, 232 - 1] 的圆环上。当有查询或写入请求时,则为缓存项的 key 生成一个 hash 值。然后查找第一个大于或等于该 hash 值的缓存节点,并到这个节点中查询或写入缓存项。如果当前节点挂了,则在下一次查询或写入缓存时,为缓存项查找另一个大于其 hash 值的缓存节点即可。大致效果如下图所

2021-12-06 11:20:28 141

原创 9.dubbo分析

2021SC@SDUSC

2021-11-28 23:41:29 47

原创 8.dubbo分析

2021SC@SDUSC

2021-11-28 23:40:43 153

原创 7.dubbo分析

2021SC@SDUSCFailsafeClusterInvokerFailsafeClusterInvoker 是一种失败安全的 Cluster Invoker。所谓的失败安全是指,当调用过程中出现异常时,FailsafeClusterInvoker 仅会打印异常,而不会抛出异常。适用于写入审计日志等操作public class FailsafeClusterInvoker<T> extends AbstractClusterInvoker<T> { @Overr

2021-11-10 11:35:27 199

原创 6.dubbo分析

2021SC@SDUSCreselectprivate Invoker<T> reselect(LoadBalance loadbalance, Invocation invocation, List<Invoker<T>> invokers, List<Invoker<T>> selected, boolean availablecheck) throws RpcException { List<Invoker&lt

2021-11-10 11:30:10 52

原创 5.dubbo分析

2021SC@SDUSC

2021-10-31 22:42:20 61

原创 4.dubbo分析

2021SC@SDUSC

2021-10-24 23:44:52 44

原创 3.dubbo分析

2021SC@SDUSCurl 到 Invoker 的转换过程private Map<String, Invoker<T>> toInvokers(List<URL> urls) { Map<String, Invoker<T>> newUrlInvokerMap = new HashMap<String, Invoker<T>>(); if (urls == null || urls.isEmpty(

2021-10-17 23:23:07 85

原创 2.dubbo分析_服务目录

2021SC@SDUSCdubbo容错机制集群容错源码包含四个部分,分别是服务目录 Directory、服务路由 Router、集群 Cluster 和负载均衡 LoadBalance。服务目录概念服务目录中存储了一些和服务提供者有关的信息,通过服务目录,服务消费者可获取到服务提供者的信息,比如 ip、端口、服务协议等。通过这些信息,服务消费者就可通过 Netty 等客户端进行远程调用。在一个服务集群中,服务提供者数量并不是一成不变的,如果集群中新增了一台机器,相应地在服务目录中就要新增一条服务

2021-10-10 22:24:22 102

原创 1.Dubbo综述

2021SC@SDUSCdubbo介绍dubbo是一个微服务的开发框架。如果服务过多,就尽量不要把所有的服务都部署在同一台机器上,而是把服务拆分成不同的微服务,部署在不同的机器上,提高可用性。因为不同的服务部署在了不同的机器上,而这些服务有可能需要相互通信,就有了RPC的概念。RPC(Remote Procedure Call)即远程调用过程,实现像原来调用本机上的服务一样,调用不同机器上的远程服务。RPC有不同的实现方式。而dubbo的两大核心能力,就是RPC通信和微服务治理。因此可用dubb

2021-09-30 19:53:13 79

原创 4.8 学习记录

安装了ubuntu虚拟机做了一个java利用反射返回属性等的实验画了机组课设的三个原理图开始python简转繁实验(安装python-document读取docx文件 github上找到一个输入字符串返回字符串的间转繁)

2021-04-08 23:19:49 52

原创 4.6学习记录

众智课上补了之前的内容(3 4 5章)安装了python的secureCrt,但还不会用学习了数据库的jdbc与odbc

2021-04-06 21:17:46 50

原创 3.31.学习记录

上课听了 fork wait等操作系统知识点对数据库sql语句有了更清晰认识休息了一会今天生日 鱼杨同学生日快乐????

2021-04-01 00:09:37 56

原创 3.30学习笔记

python学习完成 实验五有思路 实验六完成 正则表达式不清楚 课上实现了简单的文本查询学习了数据库的符号表达式 复习更深了解了基础swl语句,写完数据库作业想要搞python的whoosh apache jieba opencv和web开发...

2021-03-31 00:16:15 60

原创 2021 3 25 学习记录

学习了python的基础语法,目前学到函数定义完。做了几个python的小实验进一步了解了git的机制

2021-03-26 18:48:52 63

原创 yield 和 iter

yield 与 iter 的学习:iter为迭代器,用于在循环中迭代对象输出。可以以元组 列表 等为参数,或者自己定义一个类实现两个接口创建。yield为生成器,返回一个迭代器。可以传参后将参数变为迭代器返回。一般用于在函数中阻断,在执行过程中遇到yield时会暂停,下次调用next方法时返回暂停处,继续运行,实现阻断-迭代作用。...

2021-03-25 11:14:55 121

原创 2021-03-24

2021-3-24 学习内容 基础sql的熟悉 create select及相关子句 group by的一些用法 cout sum 与 group by 的混合使用等 没有学习python,没有画quartus 2 的原理图

2021-03-24 22:00:57 54

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除