-
Notifications
You must be signed in to change notification settings - Fork 247
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Ask Questions #324
Comments
1.app_revision表主要存储的是应用级服务发现的元数据信息,这个应用级服务发现的client目前还没来得及开源,所以你目前看不到client进行应用级元数据注册的client代码,这部分相关原理详见:https://mp.weixin.qq.com/s/-oVOeakwefgvlFyi6yYgKA |
还有一个问题就是没有明白为啥保存客户端的元数据,即使nacos的话也是服务端的元数据比较重要的,client拉取serverList,然后根据服务端元数据去处理,比如灰度、版本 等等,这个客户端的元数据主要是做什么功能? |
首先,还是一个应用级服务发现的问题,详细可以参考上文中给出的微信文档。这里简述一下:应用级服务发现是把应用和service接口的关系,存储在DB中,这样,data中存储的信息可以简化为应用和IP的关系。 然后,这里回答你的两个问题:
[回答] 这里的client其实是SOFARegistry的client,也就是服务提供方的client,它会携带服务的应用名等元信息,这样就可以籍由session节点将信息同步给DB(蚂蚁内部使用的是OceanBase,OB目前也是开源的,欢迎使用) 第二个问题,
首先,灰度、版本这些属于service自己携带的信息,是不会存储在服务和应用的meta中,而是通过registry client上报时候,携带的类似于tag的东西,存储在IP连接串中(data去存这部分数据) Nacos的应用级服务发现有一个好处是没有历史负担,所以,可以制定相对简洁明了的应用、服务模型,但是SOFARegistry是蚂蚁线上在用的产品,在应用级服务发现最难的地方在于兼容之前基于接口级服务发现的各种用法,比如,你所说的灰度等(当前业界的best practice,例如istio,是把服务发现和服务治理拆开来的,对应CDS/EDS,以及RDS),因为存量应用会把路由标签也携带在服务发现的上报连接中,所以,这一块儿是SOFARegistry的应用级服务发现处理的重点。 普通用户可以忽略,SOFARegistry在蚂蚁内部是超过了40W的注册量,需要应用级服务发现来“减负”,一般用户没有这么大量,不需要应用级服务发现。 |
ok,第二个问题是概念上的问题,确实不是广义上服务端、客户端,相当于server是服务发现,其他应用都作为服务发现client
这个我不太懂,因为nacos也是支持像dubbo接口级别的服务发现,所以本质上应该没有区别的 |
Your question
我的问题:是不是在哪个方法会将内存数据刷到数据库?目前我是没有找到
The text was updated successfully, but these errors were encountered: