Skip to content

Conversation

Chionanthus
Copy link

@Chionanthus Chionanthus commented Sep 27, 2023

What is the purpose of the change

For #10380 , Support for fuzzy watch capability for Nacos registration center.

Brief changelog

Add nacos naming fuzzy watch interface
Add naocs watch client proxy
Add fuzzy watch pattern match rule in Constants.
Add the corresponding pattern splicing and match function in NamingUtils.
Add Fuzzy Watch NotifyEvent and Watch Service Change Notifier.
Add Fuzzy watch redo service
Add watch service request and response
Add watch nacos server notify request and response
Add request SPI and reflect config
Add Watch match cache in nacos client
Add fuzzy watch request handler in nacos server
Add fuzzy watch indexmanager maintain logic in nacos server
Add nacos fuzzy watch notify task in server (watch init notify and service change notify)

Nacos客户端新增模糊订阅接口,以及对应的发送代理(delegate和grpc)
新增模糊订阅的redo机制

在Constants新增模糊订阅的匹配规则,在NamingUtils新增匹配的对应接口和辅助方法
新增模糊订阅的通信实体(发起/取消模糊订阅的Request;服务端主动推送的Request,包括初始化提醒与服务变更提醒Request)

Nacos服务端新增模糊订阅的RequestHandler
在服务端的Indexmanager新增模糊订阅的索引维护机制
在服务端新增推送事件(包括模糊订阅初始化推送事件NotifyInit,以及服务变更时给对应客户端推送事件的NotifyServiceChange)

Nacos客户端新增用于保存各模糊订阅Pattern匹配服务的Holder类,新增Notifier用于通知到对应的Listener

@Chionanthus
Copy link
Author

该PR在修改了已经merge到该分支的部分类名和变量名后,基于Nacos 3.0的原始分支重新提交commit和PR,便于进行统一code review(该PR包括了服务端侧的修改)。
可以直接覆盖该分支之前merge的内容。

@KomachiSion
Copy link
Collaborator

many conflicts, need to fix them first.

@KomachiSion KomachiSion added Summer pending On hold due to dependency or release labels Sep 28, 2023
@Chionanthus
Copy link
Author

many conflicts, need to fix them first.

solve it

@shiyiyue1102 shiyiyue1102 merged commit 4be6f3e into alibaba:summer-ospp#10380 Oct 20, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
pending On hold due to dependency or release Summer
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants