
源码分析
文章平均质量分 84
yutanbo123
这个作者很懒,什么都没留下…
展开
-
ShardingSphere-Proxy 分库分表、读写分离
ShardingSphere-Proxy 分库分表、读写分离前言一、运行官方示例二、启动 ShardingSphere-Proxy1.下载2.解压3.修改配置文件4.添加 mysql jdbc 驱动5.启动 ss-proxy6.启动验证7.访问 ss-proxy三、分库分表1.运行示例2.运行结果四、读写分离1. 运行示例2.运行结果总结前言ShardingSphere-Proxy 定位为透明化的数据库代理端,提供封装了数据库二进制协议的服务端版本,用于完成对异构语言的支持。现支持的数据库有MySQL原创 2021-08-24 23:43:19 · 1059 阅读 · 3 评论 -
ShardingSphere JDBC简单分库分表
ShardingSphere JDBC简单分库分表前言一、分库分表1. 首先配置数据源2. 配置表以什么样的规则分片3. 配置分库分表的字段4. 指定好分库分表的算法5. 最后是测试代码二、读写分离1.修改 sharding 类型2.修改数据库相关信息3.创建数据库4. 创建读库中的表,并插入数据总结前言本文来简单介绍一下 ShardingSphere JDBC 的分库分表、以及读写分离功能,至于这是用来干嘛的,我在这就不废话了,官方文档 说得很详细了。如果想研究源码的同学,可以去最大的 异性交友平台原创 2021-08-24 00:52:45 · 262 阅读 · 0 评论 -
Soul源码分析--一次请求的旅行之路
Soul源码分析--一次请求的旅行之路divide 插件原理我们知道soul是一个异步的、高性能的、跨语言的、响应式的API网关,既然做为一个网关,当然是需要对外暴露,接收外部请求,然后转发到后端真实的机器,这一篇就来分析一下,一个请求经过网关会经历什么,最后安全到达目的地。divide 插件原理这里先来看看 divide 插件的原理,这里的启动 admin、bootstrap、excample-http 项目的骚操作就不说了。首先配置好选择器的规则,这里选择默认的随机访问负载策略,然后访问 h原创 2021-02-05 01:34:22 · 225 阅读 · 1 评论 -
Soul源码分析--soul-admin数据同步(2)
Soul源码分析--soul-admin数据同步之zookeeper、nacoszookeeper 数据同步nacos 数据同步在上一篇文章中分析过 http、websocket 同步的原理,没看过的同学可以去看一看,这篇我们接着来分析 zookeeper、nacos 数据同步的原理,废话不多说,改 admin、bootstrap 相关的 yml 文件,然后启动,当然最重要的如果依赖了第三方工具,不要把第三方工具也启动。zookeeper 数据同步老规矩,先启动 admin 把 zk 对应的 lis原创 2021-01-28 01:16:38 · 224 阅读 · 0 评论 -
Soul源码分析--soul-admin数据同步(1)
Soul源码分析--soul-admin数据同步之前写过一篇 Soul源码分析–soul-admin源码分析 里面介绍了数据同步的方式和数据同步的种类,现在来深入分析一下各种数据同步的原理,包括 websocket、http、zookeeper、nacos 数据同步。这里我们先可以参考官网的文档,大概看一下原理,然后根据代码来分析。...原创 2021-01-26 01:25:31 · 305 阅读 · 0 评论 -
Soul源码分析--模块介绍
Soul源码分析--模块介绍soul 项目下面有多个子模块,现在来看一下各个子模块的作用,soul 的整体模块如下图。模块比较多,先挑几个主要的介绍一下,其它的后面再慢慢补充soul-admin 网关管理后台,负责插件、规则数据动态的维护,修改后可以通过 websocket、http、zookeeper、nacos 等方式同步数据到 sou-boostrap 网关soul-boostrap 真正的网关项目,规则数据通过 soul-admin 网关管理后台同步,里面的实现也很简单,基于Netty做为原创 2021-01-24 01:27:52 · 1254 阅读 · 1 评论 -
Soul源码分析–soul-admin多节点启动
Soul源码分析–soul-admin多节点启动网关对外提供服务请求量不大时,只需要启动一个节点就可以了,如果请求量大的话,一个节点肯定是扛不住的,这个时候就需要启动多个节点来做集群对外提供服务了。下面我们来尝试启动多个 soul-bootstrap,同时还可以启动多个 soul-admin 来管理插件,看看数据会不会同步到各个 soul 后台管理。启动多 soul-admin 节点这里我们用 zookeeper 来同步数据,所以把相应的配置打开,然后启动两个节点端口号分别为 9095、9096原创 2021-01-23 01:26:08 · 288 阅读 · 0 评论 -
Soul源码分析–问题汇总(2)
Soul源码分析–问题汇总2apache-dubbo win10上启动 zookeeper 问题apache-dubbo win10上启动 zookeeper 问题soul-example-apache-dubbo-service 项目启动时,需要启动 zookeeper ,到官网下载然后到本地解压,解压后用 zkServer.cmd 启动然后大家都懂的,比流星还快的一闪而过,某度了一下,在 zkServer.cmd 文件最后行加上 pause,会让控制台停在那里,这样就能看到错误日志了从错误原创 2021-01-19 16:39:44 · 447 阅读 · 0 评论 -
Soul源码分析-问题汇总(1)
Soul源码分析–问题汇总1问题1问题1在soul-admin启动成功之后,soul-bootstrap启动时会报启动类找不到的问题,解决方法是重新执行一下 mvn clean package install -Dmaven.test.skip=true -Dmaven.javadoc.skip=true -Drat.skip=true -Dcheckstyle.skip=true,然后再启动 soul-example-http 项目在 soul-example-http 启动时,会显示 http原创 2021-01-19 01:05:37 · 693 阅读 · 4 评论 -
Soul源码分析–soul-admin源码分析
Soul源码分析–soul-admin源码分析前言源码分析总结前言在上一篇文章中,介绍了 soul-admin 怎么管理和配置网关的请求,其核心原理是基于各种插件来实现对应的功能。现在我们来看看后台是怎么来管理和实现动态配置。源码分析在分析源码之前,先看下图,页面显示加载的插件列表会对应后端的请求,根据后端请求,找到对应的controller类然后找到对应的方法,在上图可以看到这里是访问 plugin 中默认为空的 mapping,传入到分页相关的参数,然后去查询数据库中对应的插件记录数据库原创 2021-01-17 04:16:58 · 429 阅读 · 0 评论 -
Soul源码分析–soul-admin入门
Soul源码分析–soul-admin运行使用原理介绍运行上一篇介绍过 soul-admin 启动有两种数据库选择,一种是MySQL, 一种是内存H2数据库。如果本地有MySQL,建议还是使用MySQL数据库,毕竟等下我们还是需要看看 soul-admin 启动时创建的表结构。启动后我们选择"插件列表"->“divide”,如果没有启动别的服务,这个菜单里面应该是空的。这里我们还要启动 Soul 网关主要的服务 soul-bootstrap,如果不想自己写业务服务来测试,需要把 soul-e原创 2021-01-15 16:05:54 · 652 阅读 · 0 评论 -
Soul源码分析--环境准备
Soul环境准备soul介绍搭建网关环境运行总结soul介绍soul是一个异步的,高性能的,跨语言的,响应式的API网关。其设计参考了Kong, Spring-Cloud-Gateway等优秀网关特征支持各种语言(http协议),支持 dubbo,springcloud协议。插件化设计思想,插件热插拔,易扩展。灵活的流量筛选,能满足各种流量控制。内置丰富的插件支持,鉴权,限流,熔断,防火墙等等。流量配置动态化,性能极高,网关消耗在 1~2ms。支持集群部署,支持 A/B Test,原创 2021-01-14 18:57:54 · 325 阅读 · 0 评论 -
Soul源码分析
Soul源码分析[Soul源码分析--环境准备][1][Soul源码分析--模块介绍][2][Soul源码分析--soul-admin][3][Soul源码分析--soul-bootstrap][4][Soul源码分析--soul-plugin][5][Soul源码分析--soul-examples][6][Soul源码分析--soul-web][7]本系列文章为soul源码分析系列文章,这里会列出系列文章的大纲,并持续更新。如有错误之处,欢迎指正,共同进步。Soul源码分析–环境准备[Soul源码分原创 2021-01-14 15:28:11 · 233 阅读 · 0 评论