Author Archive | douba

古城贼文化

thief吃完晚饭与淋波&宝强在园区周边溜达一圈,不知怎么的扯到了小偷和被盗这个悲催的话题。三个人各自讲了自己经历的这方面的糗事,居然洋洋洒洒的扯了咕咚3000步。发现无论是数量还是质量还是精彩指数都完爆那两位,而这些素材都得益于在家乡古城的那几年经历,然后晚上回来虽然很晚了还是把这些归纳整理了下。

lb记忆最深刻的是在解放路上图书大厦的那次遭遇。那会儿刚从东北的铁路工地上回到家乡的这个城市,好久找不到工作,最后在和平门里一个老民居的公司里跑业务送东西。无意中撞到附近解放路上图书大厦里,后来就每天上午在这里看半天书,下午接着去跑业务。到现在能从搞工地的工程跨界到另外一个工程,也是这阵子开的头。和那位君子(后文中都君子,是简称,不是尊称。灵感于小时候小人书里有梁上君子的说法)的偶遇也就发生在书城下面的存包处。那天正在存包时突的感觉裤兜里有点动静,伸手一看,一个大镊子正夹手机玩外拽。有点惊慌,[......]

阅读全文

Tags:

Comments { 0 }

稀松!对不住杭州,对不住G20

注:这是第一篇用手机敲出来的文字,每天下午五点半开始在医院挂那瓶红色肺炎专用药的那四个小时。

熟悉的时间又来到这个最近开始熟悉的地方。这两天杭州g20,今天周末,临出门看了眼电视里习主席G20开幕布上的演讲。

dav

右手上扎的针眼太有点多,今天换左手。腾出右手来闲着想记点东西。

这周过得和平时很不同。和很多生活在这个城市的人感觉一样,路上很空,街道人很少。连输液这边的护士都说这里现在的人都比平日少了好几成。与现实周围形成反差的是朋友圈里很热闹,名种晒图,大江南北。

对不住大家,对不住这个盛世的气氛。这周一个小人物过得异常的。。。稀松!

低烧了几乎整个八月,在月底了没扛住还是来到了这个地方。

有多稀松!

开始一天,单位里,翘班跑医院抽血拍片,幸亏和咱单位在一条街上,打车几分钟就过来了,抽血~回单位~拍片~回单位~取结果。稀松,折腾,狼狈。然后一个多[......]

阅读全文

Tags: , ,

Comments { 0 }

Netflix源码解析之Ribbon:Ribbon的区域亲和性(Zone Affinity)

前面文章介绍了通过ribbon集成eurekaclient来获取注册的服务列表。
其实仔细观察DynamicServerListLoadBalancer更新server的方法updateListOfServers会发现,在动态的从erueka 获取注册服务器后,还会用一个filter对得到的server列表再进行过滤。这个filter从配置获取,如果没有,默认是ZoneAffinityServerListFilter。根据配置会选择和服务消费者在一个zone的服务(术语区域感知,Zone Affinity),这样一般可以降低延迟。

 

检查server的zone属性,只是选择本区域的server。

根据配置会选择和服务消费者在一个zo[......]

阅读全文

Tags: , , ,

Comments { 0 }

Netflix源码解析之Ribbon:负载均衡策略的定义和实现

上篇文章说到LB是通过负载均衡策略来实现后端服务的选择的。

Ribbon负载均衡策略定义

IRule其实就只做了一件事情Server choose(Object key),可以看到这个功能是在LB中定义(要求)的,LB把这个功能委托给IRule来实现。不同的IRule可以向LB提供不同的负载均衡算法。

com.netflix.loadbalancer包下面的提供了常用的几种策略。有RoundRobinRule、RandomRule这样的不依赖于Server运行状况的策略,也有AvailabilityFilteringRule、WeightedResponseTimeRule等多种基于收集到的Server运行状况决策的策略。判断运行状况时有,判断单个server的,也有判断整个zone的,适用于各种不同场景需求。[......]

阅读全文

Tags: , , , ,

Comments { 2 }

Netflix源码解析之Ribbon:负载均衡器通过Eureka获取动态后端服务列表

Ribbon是一种客户端的负载均衡,本质上是跑在服务消费者的进程里。服务消费者要访问服务时,通过ribbon向一个服务注册的列表查询,然后以配置的负载均衡策略选择一个后端服务发起请求。

前面ribbon的实现,讲到LB的定义的两个主要方法,分别是后端服务相关的调用:

在netflix中这个服务注册列表其实就是eureka服务端集中管理的注册服务列表。获取这个列表应该就是是通过eureka的client来完成的。

也就是ribbon中应该在某个地方集成了eureka client来维护服务列表。这里尝试追踪细这个过程,确认下猜想。

ribbon的实现的继承图上可以看到除了介绍的基本实现LoadBalancer外,还有DynamicServerListLoadBalancer的实现,可以动态的加载后[......]

阅读全文

Tags: , , , ,

Comments { 1 }