自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

WincherToldYou

记录,分享

  • 博客(18)
  • 收藏
  • 关注

原创 Soul 源码分析17 Sentinel Plugin 分析

Sentinel Plugin[reference]https://dromara.org/zh/projects/soul/sentinel-plugin/在bootstrap pom.xml 中添加 sentinel的支持 <!-- soul sentinel plugin start--> <dependency> <groupId>org.dromara</groupId>

2021-02-05 22:55:51 169

原创 Soul 源码分析16 Resilience4j plugin 分析

SOUL Resilience4j plugin首先启动项目 soul-admin, soul-bootstrap,以soul-examples中的soul-example-http为例,注册到soul网关上。检查soul-bootstrap的pom文件中是否引入相关依赖: <dependency> <groupId>org.dromara</groupId> <artifactId>soul-

2021-02-05 07:03:53 152

原创 Soul 源码分析15 Hystrix plugin 分析

Hystrix plugin 分析这是一段对Hystrix的介绍, 目前该项目已经不再开发, 只有维护Hystrix is a latency and fault tolerance library designed to isolate points of access to remote systems, services and 3rd party libraries, stop cascading failure and enable resilience in complex distrib

2021-02-02 00:51:28 116

原创 Soul 源码分析14 sofa plugin 分析

SOUL sofa plugin 分析soul-plugin/soul-plugin-global/src/main/java/org/dromara/soul/plugin/global/GlobalPlugin.java  中使用了builder构建soulContext@Overridepublic Mono<Void> execute(final ServerWebExchange exchange, final SoulPluginChain chain) {

2021-01-30 21:55:43 134

原创 Soul 源码分析13 alibaba-dubbo apache-dubbo plugin 分析

SOUL: alibaba-dubbo apache-dubbo plugin 分析dubbo插件主要讲http 请求 转化为dubbo请求, 实现泛化调用 soul-plugin/soul-plugin-apache-dubbo/src/main/java/org/dromara/soul/plugin/apache/dubbo/ApacheDubboPlugin.java@Override protected Mono<Void> doExecute(final ServerWe

2021-01-30 03:03:07 275

原创 Soul 源码分析12 SpringCloud plugin分析

SOUL: SpringCloud plugin & WebClient plugin接上一章, 直接看 SpringCloud Plugin的处理逻辑加在SpringCloudplugin需要在soul-bootstrap/pom.xml加入<!--soul springCloud plugin start--><dependency> <groupId>org.dromara</groupId> <arti

2021-01-28 23:48:29 142 1

原创 Soul 源码分析11 divide plugin分析

SOUL: divide plugin通过上一节的分析, 我们知道了请求被plugin chain处理是通过 SoulWebHandler 中的静态类 DefaultSoulPluginChain 来处理的@Override public Mono<Void> execute(final ServerWebExchange exchange) { return Mono.defer(() -> { if (this

2021-01-28 02:04:20 132

原创 Soul 源码分析10 一个请求是如何被SOUL处理的

一个请求是如何被SOUL处理的至此, soul的基本使用方式已经清楚了, 接下来我们带着标题的疑问来看 一个请求是如何被SOUL处理的基于以前的结果,我们已知 会被 SoulWebHandler处理, SoulWebHandler实现了WebHandler, 我们来看下WebHandler的作用,注释写的很清楚, WebHandler用来处理request的, 我们知道 handler()方法处理的ServerWebExchange 是WebFlux 中对request, response的封装,

2021-01-26 16:29:08 173 1

原创 Soul 源码分析09 SOUL admin/bootstrap cluster

SOUL admin/bootstrap cluster模拟soul 网关集群部署, 启动2个admin, 2个bootstrap如上开启配置可以启动多个实例,也可以打包后通过java -jar启动在soul-bootstrap的application.yml配置刚才启动的soul-admin的 urlsoul: sync: websocket : urls: ws://localhost:9095/websocket,ws://localhost

2021-01-26 02:17:27 215

原创 Soul 源码分析08 SOUL Admin & 网关 nacos 数据同步

SOUL Admin & 网关 nacos 数据同步首先准备好nacos server, 这里不详细叙述sh startup.sh -m standalone.......省略nacos is starting with standalonenacos is starting,you can check the /Users/wincher/Documents/learning/service/nacos/logs/start.outhttp://127.0.0.1:8848/naco

2021-01-24 02:03:29 191

原创 Soul 源码分析07 SOUL Admin & 网关 Http长轮询 数据同步

SOUL Admin & 网关 Http长轮询 数据同步书接上回, 使用Http长轮询, 数据同步,soul-admin/src/main/resources/application.ymlsoul: sync:# websocket:# enabled: true# zookeeper:# url: localhost:2181# sessionTimeout: 5000# connectionTimeout:

2021-01-23 01:56:30 146

原创 Soul 源码分析06 SOUL Admin & 网关 Zookeeper 数据同步

SOUL Admin & 网关 Zookeeper 数据同步目前SOUL提供了这几种数据同步方式, 上一节我们使用了WebSocket, 这一节使用Zookeerper来做数据同步, 代码实现结构与WebSocket如出一辙, 只不过具体的同步过程使用了Zookeeper自身的特性启动 zk,我用的docker docker run -p 2181:2181 --restart unless-stopped --name zk -d zookeeper保证 soul-bootstrap po

2021-01-22 02:17:54 206

原创 Soul 源码分析05 SOUL Admin & 网关 Websocket 数据同步

SOUL Admin & 网关 Websocket 数据同步启动后 admin 和 bootstrap 后, admin log中可以看到2021-01-21 00:09:46.004 INFO 11893 --- [0.0-9095-exec-8] o.d.s.a.l.websocket.WebsocketCollector : websocket on open successful....根据log找到 soul-admin/src/main/java/org/dromara/s

2021-01-21 01:01:22 184 4

原创 Soul 源码分析04 SOUL Spring Cloud plugin usage

title: soul_gateway_src_code_learning_05date: 2021-01-20 00:03:36tags: SOULSOUL Spring Cloud demo有了上一节的经验打开bootstrap pom中的 springcloud 和 eureka 依赖<!--soul springCloud plugin start--><dependency> <groupId>org.dromara</groupId.

2021-01-20 01:19:28 137

原创 Soul 源码分析03 SOUL sofa plugin usage

SOUL sofa demo和上一节的dubbo一样, 使用sofa插件, 访问 http://127.0.0.1:9095/#/system/plugin 可以看到 sofa 插件默认是点击editor开启sofa plugin启动 zk,我用的docker docker run -p 2181:2181 --restart unless-stopped --name zk -d zookeeperIDEA中运行 soul-examples/soul-examples-sofa/src/main/

2021-01-19 01:47:11 155

原创 Soul 源码分析02 SOUL Dubbo plugin

SOUL dubbo demo使用dubbo插件, 访问 http://127.0.0.1:9095/#/system/plugin 可以看到 dubbo 插件默认是点击editor开启dubbo plugin启动 zk,我用的docker docker run -p 2181:2181 --restart unless-stopped --name zk -d zookeeperIDEA中运行 soul-examples/soul-examples-dubbo/soul-examples-a

2021-01-17 03:13:07 155 1

原创 Soul 源码分析01 SOUL divide plugin auto register

SOUL divide plugin auto register上篇我们使用divide插件配置selector和rule成功将访问网关的请求转发到了baidu.com今天对divide plugin进一步的使用我们启动SOUL项目准备好的示例 soul-examples/soul-examples-http/src/main/java/org/dromara/soul/examples/http/SoulTestHttpApplication.java稍微留意一下log, 字面意思就是将接口注册到

2021-01-16 01:32:15 154

原创 Soul 源码分析00 get started

Soul 源码分析00 get started这是一个异步的,高性能的,跨语言的,响应式的API网关。我希望能够有一样东西像灵魂一样,保护您的微服务。参考了Kong,Spring-Cloud-Gateway等优秀的网关后,站在巨人的肩膀上,Soul由此诞生!Features支持各种语言(http协议),支持 dubbo,springcloud协议。插件化设计思想,插件热插拔,易扩展。灵活的流量筛选,能满足各种流量控制。内置丰富的插件支持,鉴权,限流,熔断,防火墙等等。流量配置动态化,性能极高

2021-01-15 13:31:17 328

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除