00:01
好,下边呢,我们来看这个name server name server啊,稍微有点复杂,我们先整体看一下它的功能。Name server啊,是一个brokeer与呃路由的注册中心。那么支持的动态注册与发现。呃,这说到注册中心,我们大家马上就想到了这个,比如说double里边的注册中心ZK。是吧,啊,Cloud里边注册中心啊,我们的E或者阿里巴巴里边注册中心,我们的。那么其实说到这儿啊,老大给大家再再呃补充点东西啊。呃,其实最开始的这个。Q,它的早期版本里面啊,使用的也是做keepper,没有name server。早期版本像我们之前不是了解过的那个叫什么,呃。
01:02
它的发展史里边叫米塔。Two。咋了?哎,在这儿呢。啊是吧,MQ在MQ1.0和2.0这两个版本里边啊。你注意3.0就不一样了,3.0实际上就是我们的肉Q了,要注意这个啊,就是在1.0和2.0的时候。呃,实际上他依赖的仍然是做keep。就是。简单写一下啊。在。Q。V。1.05V。V2.0。版本中,呃。依赖。的。人是谁?To keepper。你得认识它啊,从从什么,从这个Meta q。
02:04
为3.0。啊,也就是我们的Q。其实用他们的第一个版本是吧,呃,开始。呃,这个这个,呃怎么说呢,去掉了吧,呃,去掉了这个。To keep。呃,使用了,呃。自己的。Seven。自己的server就是从从这个mid3.0开始啊,他才用,也就是真正的呃,这个Q开始用的是server。所以这是我们大家需要了解,当然了,你说为什么呃不用这个呃to k了是吧,这这你你要又搞了一个name server,这不是重复制造轮子吗?啊不是这样啊,他是这样考虑的,有这样的几点原因,第一个。
03:00
你你这你要用JK的话,就相当于什么,它强依赖于我们的。这第三方了,就失去了独立性了,不过说到这,他为什么最开始依赖于组kper,像这个Meta q r1.02.0版本,为什么?因为我们大家知道这个Q,它的整体这个思想来自于什么,卡不卡?呃,会用卡不卡的兄弟们应该知道。卡不卡是。需要to keep的。对不对,所以在他的早期版本里边,他用的也是。知道吧,但是这就有一个问题,就是你这个失去了独立性了。对不对,这些的独立性了,这第一个。第二个。CP的。对吧,那它是强一致性的,按我们这Q啊,不需要强一致性,那你要用JK的话会降低。这个这个整体我们的Q,它的它的这个这个。
04:02
效率。对吧,然后你要用上一个主K以后,你会发现整体架构就变得复杂了。啊,你不管你搭建搭建的这个复杂度,还是你搭建成本都会升高,因为你JK肯定要单独占占服务器啊。对不对,所以。啊,他就专门使用了自己的这个name server,这是我们大家呃,需要需要了解到的一些一些东西啊。嗯,写上啊呃。这个这个怎么怎么说呢。Q,呃的思想啊。来自于啊。而卡夫卡是。依赖。可以。是吧,呃,所以。
05:00
这样吧。写到这。所以。及在他他中啊也是。嗯嗯。依赖也是依赖。卡不卡?是吧,那这样就呃,大家就容易理解了,是吧?为什么你要依赖于卡夫卡呢?是吧?啊,从这开始不再依赖于他了。OK。然后我们看啊,它的主要功能呢,有这样的两点啊,一个是我们的这个博客管理,一个是路由信息管理,管理是什么是。接受博克集群它的注册信息,并且保存下来作为路由信息的基本数据。呃,其实我们的博在启动的时候啊,呃,它就会呃,直接注册到我们的CK里边。
06:07
好,我们一会儿这个路由注册专门说他啊。然后呢,提供心跳检测机制啊,检查是否存活。的管理,就这是我们它的功能啊,那么第二个功能是什么?路由信息管理。路由信息指什么呢?就每个number name里边啊,都保存着博集群中每这整个路由信息和用于客户端查询的什么队列信息,就是你Q啊,你最终我们不管是。我们的消费者还是我们的生产者,最终都是对着谁,对着Q。对的是哪一个worker主机的哪个Q,所以他要把这些信息都给你保存下来。呃,Producer和consumer通过name可以获取到整个克集群的路由信息。
07:01
是吧,从而进行消息的投递和消费。这是我们整体先呃了解一下name server的功能。
我来说两句