初探Soul网关week03_02

157 阅读1分钟

前言

昨晚三点才睡,早上实在是起不来了

数据同步方式,admin(server端)

Soul 有四种同步方式 HTTP长轮询、WebSocket、zookeeper、nacos,在admin采用的是发布-订阅设计模式 图:同步方式概览

上图我们可以看到,这几种同步方式在 DatachangedEventDispatcher(事件监听类)之前是没有区别的,根据不同的同步方式,发布事件时带有对应订阅的信息

小插曲

http://localhost:9095/plugin/6 这个是dubbo插件的http请求,我想当然的打了个断点 也能进,但是走了一圈发现都是在admin内部转悠,没有bootstrap啥事,迷糊了好一会,后来发现,我断点打在get方法上了,get方法直接请求数据库了,不会跟bootstrap有交互

debug

修改dubbo插件的http://localhost:9095/plugin/6是put请求 图:入口断点

图:实现类,发布事件,看到左边那个戴着🎧的小豆子(监听类)没,还怪好看的

图:监听类,订阅事件、处理事件,红色箭头处 DataChangedListner 感觉不应该叫 叫Listner 而应该叫Handler,DataChangedListner没有监听的能力,而只有处理的能力

图:发送websocket请求