数据库分库分表策略的具体实现方案_徐刘根的博客-CSDN博客_数据库分表策略


本站和网页 https://blog.csdn.net/xlgen157387/article/details/53976153 的作者无关,不对其内容负责。快照谨为网络故障时之索引,不代表被搜索网站的即时页面。

数据库分库分表策略的具体实现方案_徐刘根的博客-CSDN博客_数据库分表策略
数据库分库分表策略的具体实现方案
徐刘根
于 2017-01-02 14:10:03 发布
88772
收藏
166
分类专栏:
集群分布式
数据库
文章标签:
数据库
分库分表
读写分离
分库
分表
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/xlgen157387/article/details/53976153
版权
集群分布式
同时被 2 个专栏收录
21 篇文章
10 订阅
订阅专栏
数据库
51 篇文章
5 订阅
订阅专栏
相关文章:
1、 使用Spring AOP实现MySQL数据库读写分离案例分析
2、MySQL5.6 数据库主从(Master/Slave)同步安装与配置详解
3、MySQL主从复制的常见拓扑、原理分析以及如何提高主从复制的效率总结
4、使用mysqlreplicate命令快速搭建 Mysql 主从复制
5、大型网站应用之海量数据和高并发解决方案总结一二
一、MySQL扩展具体的实现方式
随着业务规模的不断扩大,需要选择合适的方案去应对数据规模的增长,以应对逐渐增长的访问压力和数据量。
关于数据库的扩展主要包括:业务拆分、主从复制,数据库分库与分表。这篇文章主要讲述数据库分库与分表
1.1、业务拆分
在 大型网站应用之海量数据和高并发解决方案总结一二 一篇文章中也具体讲述了为什么要对业务进行拆分。
业务起步初始,为了加快应用上线和快速迭代,很多应用都采用集中式的架构。随着业务系统的扩大,系统变得越来越复杂,越来越难以维护,开发效率变得越来越低,并且对资源的消耗也变得越来越大,通过硬件提高系统性能的方式带来的成本也越来越高。
因此,在选型初期,一个优良的架构设计是后期系统进行扩展的重要保障。
例如:电商平台,包含了用户、商品、评价、订单等几大模块,最简单的做法就是在一个数据库中分别创建users、shops、comment、order四张表。
但是,随着业务规模的增大,访问量的增大,我们不得不对业务进行拆分。每一个模块都使用单独的数据库来进行存储,不同的业务访问不同的数据库,将原本对一个数据库的依赖拆分为对4个数据库的依赖,这样的话就变成了4个数据库同时承担压力,系统的吞吐量自然就提高了。
1.2、主从复制
1、MySQL5.6 数据库主从(Master/Slave)同步安装与配置详解
2、MySQL主从复制的常见拓扑、原理分析以及如何提高主从复制的效率总结
3、使用mysqlreplicate命令快速搭建 Mysql 主从复制
上述三篇文章中,讲述了如何配置主从数据库,以及如何实现数据库的读写分离,这里不再赘述,有需要的选择性点击查看。
上图是网上的一张关于MySQL的Master和Slave之间数据同步的过程图。
主要讲述了MySQL主从复制的原理:数据复制的实际就是Slave从Master获取Binary log文件,然后再本地镜像的执行日志中记录的操作。由于主从复制的过程是异步的,因此Slave和Master之间的数据有可能存在延迟的现象,此时只能保证数据最终的一致性。
1.3、数据库分库与分表
我们知道每台机器无论配置多么好它都有自身的物理上限,所以当我们应用已经能触及或远远超出单台机器的某个上限的时候,我们惟有寻找别的机器的帮助或者继续升级的我们的硬件,但常见的方案还是通过添加更多的机器来共同承担压力。
我们还得考虑当我们的业务逻辑不断增长,我们的机器能不能通过线性增长就能满足需求?因此,使用数据库的分库分表,能够立竿见影的提升系统的性能,关于为什么要使用数据库的分库分表的其他原因这里不再赘述,主要讲具体的实现策略。请看下边章节。
二、分表实现策略
关键字:用户ID、表容量
对于大部分数据库的设计和业务的操作基本都与用户的ID相关,因此使用用户ID是最常用的分库的路由策略。用户的ID可以作为贯穿整个系统用的重要字段。因此,使用用户的ID我们不仅可以方便我们的查询,还可以将数据平均的分配到不同的数据库中。(当然,还可以根据类别等进行分表操作,分表的路由策略还有很多方式)
接着上述电商平台假设,订单表order存放用户的订单数据,sql脚本如下(只是为了演示,省略部分细节):
CREATE TABLE `order` (
`order_id` bigint(32) primary key auto_increment,
`user_id` bigint(32),
...
当数据比较大的时候,对数据进行分表操作,首先要确定需要将数据平均分配到多少张表中,也就是:表容量。
这里假设有100张表进行存储,则我们在进行存储数据的时候,首先对用户ID进行取模操作,根据 user_id%100 获取对应的表进行存储查询操作,示意图如下:
例如,user_id = 101 那么,我们在获取值的时候的操作,可以通过下边的sql语句:
select * from order_1 where user_id= 101
其中,order_1是根据 101%100 计算所得,表示分表之后的第一章order表。
注意:
在实际的开发中,如果你使用MyBatis做持久层的话,MyBatis已经提供了很好得支持数据库分表的功能,例如上述sql用MyBatis实现的话应该是:
接口定义:
/**
* 获取用户相关的订单详细信息
* @param tableNum 具体某一个表的编号
* @param userId 用户ID
* @return 订单列表
*/
public List<Order> getOrder(@Param("tableNum") int tableNum,@Param("userId") int userId);
xml配置映射文件:
<select id="getOrder" resultMap="BaseResultMap">
select * from order_${tableNum}
where user_id = #{userId}
</select>
其中${tableNum} 含义是直接让参数加入到sql中,这是MyBatis支持的特性。
注意:
另外,在实际的开发中,我们的用户ID更多的可能是通过UUID生成的,这样的话,我们可以首先将UUID进行hash获取到整数值,然后在进行取模操作。
三、分库实现策略
数据库分表能够解决单表数据量很大的时候数据查询的效率问题,但是无法给数据库的并发操作带来效率上的提高,因为分表的实质还是在一个数据库上进行的操作,很容易受数据库IO性能的限制。
因此,如何将数据库IO性能的问题平均分配出来,很显然将数据进行分库操作可以很好地解决单台数据库的性能问题。
分库策略与分表策略的实现很相似,最简单的都是可以通过***取模***的方式进行路由。
还是上例,将用户ID进行取模操作,这样的话获取到具体的某一个数据库,同样关键字有:
用户ID、库容量
路由的示意图如下:
上图中库容量为100。
同样,如果用户ID为UUID请先hash然后在进行取模。
四、分库与分表实现策略
上述的配置中,数据库分表可以解决单表海量数据的查询性能问题,分库可以解决单台数据库的并发访问压力问题。
有时候,我们需要同时考虑这两个问题,因此,我们既需要对单表进行分表操作,还需要进行分库操作,以便同时扩展系统的并发处理能力和提升单表的查询性能,就是我们使用到的分库分表。
分库分表的策略相对于前边两种复杂一些,一种常见的路由策略如下:
1、中间变量 = user_id%(库数量*每个库的表数量);
2、库序号 = 取整(中间变量/每个库的表数量);
3、表序号 = 中间变量%每个库的表数量;
例如:数据库有256 个,每一个库中有1024个数据表,用户的user_id=262145,按照上述的路由策略,可得:
1、中间变量 = 262145%(256*1024)= 1;
2、库序号 = 取整(1/1024)= 0;
3、表序号 = 1%1024 = 1;
这样的话,对于user_id=262145,将被路由到第0个数据库的第1个表中。
示意图如下:
五、分库分表总结
关于分库分表策略的选择有很多种,上文中根据用户ID应该是比较简单的一种。其他方式比如使用号段进行分区或者直接使用hash进行路由等。有兴趣的可以自行查找学习。
关于上文中提到的,如果用户的ID是通过UUID的方式生成的话,我们需要单独的进行一次hash操作,然后在进行取模操作等,其实hash本身就是一种分库分表的策略,使用hash进行路由策略的时候,我们需要知道的是,也就是hash路由策略的优缺点,优点是:数据分布均匀;缺点是:数据迁移的时候麻烦,不能按照机器性能分摊数据。
上述的分库和分表操作,查询性能和并发能力都得到了提高,但是还有一些需要注意的就是,例如:原本跨表的事物变成了分布式事物;由于记录被切分到不同的数据库和不同的数据表中,难以进行多表关联查询,并且不能不指定路由字段对数据进行查询。分库分表之后,如果我们需要对系统进行进一步的扩阵容(路由策略变更),将变得非常不方便,需要我们重新进行数据迁移。
最后需要指出的是,分库分表目前有很多的中间件可供选择,最常见的是使用淘宝的中间件Cobar。
GitHub地址:https://github.com/alibaba/cobara
文档地址为:https://github.com/alibaba/cobar/wiki
关于淘宝的中间件Cobar本篇内容不具体介绍,会在后边的学习中在做介绍。
另外Spring也可以实现数据库的读写分离操作,后边的文章,会进一步学习。
另外,还有MyCat:http://www.mycat.io 等。
六、总结
上述中,我们学到了如何进行数据库的读写分离和分库分表,那么,是不是可以实现一个可扩展、高性能、高并发的网站那?很显然还不可以!一个大型的网站使用到的技术远不止这些,可以说,这些都是其中的最基础的一个环节,因为还有很多具体的细节我们没有掌握到,比如:数据库的集群控制,集群的负载均衡,灾难恢复,故障自动切换,事务管理等等技术。因此,还有很多需要去学习去研究的地方。
总之:
路漫漫其修远兮,吾将上下而求索。
前方道路美好而光明,2017年新征程,不泄步!
个人微信公众号,欢迎订阅:
徐刘根
关注
关注
60
点赞
166
收藏
打赏
26
评论
数据库分库分表策略的具体实现方案
相关文章:1、 使用Spring AOP实现MySQL数据库读写分离案例分析2、MySQL5.6 数据库主从(Master/Slave)同步安装与配置详解3、MySQL主从复制的常见拓扑、原理分析以及如何提高主从复制的效率总结4、使用mysqlreplicate命令快速搭建 Mysql 主从复制5、大型网站应用之海量数据和高并发解决方案总结一二一、MySQL扩展具体的实...
复制链接
扫一扫
专栏目录
分库分表介绍
大道至简,持之以恒!
03-09
5472
目录
一、前言
二、何谓数据切分?
三、垂直切分
1、垂直分库
2、垂直分表
3、垂直切分优缺点
4、拆分需考虑的业务因素
四、水平切分
1、水平分库
2、水平分表
3、水平切分优缺点
五、垂直与水平切分的联合使用
六、数据分片规则
1、Hash取模分表
2、数值Range分表
3、一致性Hash算法
七、分库分表带来的问题
1、分布式事务问题
2、跨节点关联查询Join 问题
3、跨节点分页、排序、函数问题
4、全局主键避重问题
5、数据迁移问题...
分库分表的策略及实现
默鱼的博客
04-19
901
转载自:https://blog.csdn.net/why_2012_gogo/article/details/51492573
分库分表的策略及实施(一):
为什么要对数据库拆分?是因为随着数据量的增多,单个数据库存储全部的数据时,在对该库检索时的IO吞吐率较低,数据存储在单一的硬盘介子中,存在单点和单个介子存储数据过大的问题。那么这里主要介绍如何将单一数
评论 26
您还未登录,请先
登录
后发表或查看评论
mycat分库分表示例
11-25
一. 配置规则
1. 分片方式
2. 配置规则
二. 连续分片
1. 自定义数字范围分片
2. 按日期分片
3. 按单月小时分片
4. 按自然月分片
三. 离散分片
1. 枚举分片
2. 程序指定分区的分片
3. 十进制求模分片
4. 字符串hash解析分片
5. 一致性哈希分片
四. 综合分片
1. 范围求模分片
2. 日期范围hash分片
3. 取模范围约束分片
4. ASCII码求模范围约束(字符串)
5. 固定分片hash(二进制)
六. 分片策略
MySQL 常用分库分表方案,都在这里了!
最新发布
这个时代,作为程序员可能要学习小程序
11-03
82
点击上方关注 “终端研发部”设为“星标”,和你一起掌握更多数据库知识转自:尜尜人物www.cnblogs.com/littlecharacter/p/9342129.htm一、数据库瓶颈不管是IO瓶颈,还是CPU瓶颈,最终都会导致数据库的活跃连接数增加,进而逼近甚至达到数据库可承载活跃连接数的阈值。在业务Service来看就是,可用数据库连接少甚至无连接可用。接下来就可以想象了吧(并发量、吞吐量、...
数据库分库分表
qq_44726330的博客
05-13
322
为什么需要分库分表
为什么需要分库
1、随着业务体量的提升,单机磁盘很容易撑爆,拆分成多个数据库,磁盘使用率会大大降低;
2、数据库的连接是有限的。在高并发场景下,大量请求访问数据库是扛不住的,微服务架构的出现,就是为了应对高并发:将不同业务类型的模块拆分成多个应用,将单个数据库拆分成多个不同功能模块的数据库,以分担读写压力。
分什么需要分表
1、在数据量很大的情况下,SQL查询会变慢;
2、如果在索引命中或没有命中的情况下,SQL查询也是会明显变慢的。因为索引一般是B+数结构,千万数据量下,B+数的高度会
数据库怎么分库分表?
weixin_41563161的博客
03-28
354
数据库怎么分库分表?
数据库瓶颈
不管是IO瓶颈还是CPU瓶颈,最终都会导致数据库的活跃连接数增加,进而逼近甚至达到数据库可承载的活跃连接数的阈值。在业务service来看, 就是可用数据库连接少甚至无连接可用,接下来就可以想象了(并发量、吞吐量、崩溃)。
IO瓶颈
第一种:磁盘读IO瓶颈,热点数据太多,数据库缓存放不下...
海量数据存储--分库分表策略详解
克终的博客
08-04
1917
海量数据存储--分库分表策略详解
如何做到数据库分库分表?
人生如梦,浮华一瞬间的专栏
06-08
4028
一、中大型项目中,一旦遇到数据量比较大,小伙伴应该都知道就应该对数据进行拆分了。有垂直和水平两种。垂直拆分比较简单,也就是本来一个数据库,数据量大之后,从业务角度进行拆分多个库。如下图,独立的拆分出订单库和用户库。水平拆分的概念,是同一个业务数据量大之后,进行水平拆分。上图中订单数据达到了4000万,我们也知道mysql单表存储量推荐是百万级,如果不进行处理,mysql单表数据太大,会导致性能变慢。使用方案可以参考数据进行水平拆分。把4000万数据拆分4张表或者更多。当然也可以分库,再分表;把压力从数据库层
分库分表的意义是什么?
qq_45088552的博客
06-16
484
通过把数据分散到不同的数据库中,使得单一数据库的数据量变小来缓解单一数据库的性能问题,从而达到提升数据库性能的目的。比如:将电商数据库拆分为若干独立的数据库,并且对于大表来说也拆分为若干小表,通过这种数据库拆分的方法来解决数据库的性能问题。
因此,分库分表的目的就是为了解决由于数据量过而导致数据库性能降低的问题,将原来独立的数据库拆分为若干数据库组成,将数据大表拆分成若干数据表,使得单一数据库、单一数据表的数据量变小,从而达到提升数据库性能的目的。
分库分表的方式有四种,它们分别是:垂直分表..
怎么实现分库分表
Mr.XiaoZhao
06-07
974
分库分表
数据库优化方案中写入数据量增加时,如何实现分库分表?
谢谢你,慌乱了我的年华
01-06
997
我们知道在高并发下数据库的一种优化方案:读写分离,它就是依靠主从复制的技术使得数据库实现了数据复制为多份,增强了抵抗大量并发读请求的能力,提升了数据库的查询性能的同时,也提升了数据的安全性,当某一个数据库节点,无论是主库还是从库发生故障时,我们还有其他的节点中存储着全量的数据,保证数据不会丢失。
此时,你的电商系统的架构图变成了下面这样:
这时,公司 CEO 突然传来一个好消息,运营推广持续带来了...
你分库分表的姿势对么?——详谈水平分库分表
vivo互联网技术
10-25
591
随着后端数据库的存储量级和用户的访问流量越来越大,我们免不了需要对OLTP数据库进行分库分表操作,那么选取一个的水平分库分表方案就显得非常重要。本文详细介绍在水平分库分表中常见的一些误区,以及一些常用的手法,以帮助识别可能存在的问题、少走弯路。
02.数据库分库分表-分表策略
一张小羊毛的博客
03-30
1692
摘要
上一篇文章已经说根据school_id进行分表。通常我们的分表策略有两种方式
取模分表
范围分表
取模分表
所谓的取模分表就是对分表key取模,通过预估数据量确定分几张表那么则模以几。
...
数据库分表策略
xiaomojun的专栏
06-02
518
1 垂直划分:
将数据表中的某些字段提出,组成新的数据表。“将群组id,专辑id,音乐id提出”,组成gzm数据表,而将“群组,专辑,音乐的详细信息单独放在其他数据表中”。在求取索引、关系时,操作数据库效率更高。
2 水平划分:
2.1 物理上的水平切分:即将数据分配到不同的db服务器上。降低单点机器的负载。
2.2 逻辑上的水平划分:将数据分到同一数据库的不同的数据表
彻底搞清分库分表(垂直分库,垂直分表,水平分库,水平分表)
热门推荐
传智燕青
09-03
11万+
分库分表是什么
下边以电商系统中的例子来说明,下图是电商系统卖家模块的表结构:
通过以下SQL能够获取到商品相关的店铺信息、地理区域信息:
SELECT p.*,r.[地理区域名称],s.[店铺名称],s.[信誉]
FROM [商品信息] p
LEFT JOIN [地理区域] r ON p.[产地] = r.[地理区域编码]
LEFT JOIN [店铺信息] s ON p.id = s.[所属...
sharding-jdbc 分库分表的 4种分片策略,还蛮简单的
程序员内点事
11-03
7214
上一篇我们介绍了 sharding-jdbc 的基础概念,还搭建了一个简单数据分片的案例,但
【数据库】分库分表的几种方式及总结
tpasta的博客
07-08
1万+
分库分表的几种常见形式公司业务的发展过程中,提高系统的处理承载能力,在数据库端通常都会选择分库分表。今天对数据库的分库分表进行了一次学习与总结。1、垂直分表垂直分表在日常开发和设计中比较常见,通俗的说法叫做“大表拆小表”,拆分是基于关系型数据库中的“列”(字段)进行的。通常情况,某个表中的字段比较多,可以新建立一张“扩展表”,将不经常使用或者长度较大的字段拆分出去放到“扩展表”中,如下图所示:在字...
分库分表解决方案
养歌的博客
10-29
7973
前言
因为每个学校学生用餐人数太多,一天订单20万量增长,而且学校使用也在不停的增多,公司最近在搞分库分表,数据分离到不同的库中或表中, 所以这段时间了解过数据库的分库分表,也读过很多大神写的博文,基本上知道个大概,也在实际的应用中掌握分库分表的技术
下面总结一下从以下几个方面说起:
1、服务和数据库的演化过程
3、分库分表有哪几种方式。
4、分库分表有哪些问题
5、目前市面有的一些开源产品,技术,它们的优缺点是什么(只说ShardingJdbc和MyCat)
6、ShardingJdbc代码实现分库分表
数据库分库分表的几种方式
Leon_Jinhai_Sun的博客
07-28
1281
随着业务的不断增长,数据库中的数据也会越来越多,数据库的压力也会越来越大,我们会发现,在业务繁忙的
时候,数据库的性能会直线下降,这时为了保证良好的性能,不得不想办法来分担数据库的压力,前面在介绍数据库
架构高可用时,我们提到过,如果是为了分担数据库的读负载,我们可以采用主从复制的方式,给原来的数据库,增加几台
具有相同数据的从服务器,这样呢通过读写分离的方式,我们就可以把数据库的读负载,...
分库分表的几种常见形式
weixin_33722405的博客
11-24
394
垂直分表:垂直分表在日常开发和设计中比较常见,通俗的说法叫做“大表拆小表”,拆分是基于关系型数据库中的“列”(字段)进行的。通常情况,某个表中的字段比较多,可以新建立一张“扩展表”,将不经常使用或者长度较大的字段拆分出去放到“扩展表”中。
ps:在字段很多的情况下,拆分开确实更便于开发和维护(曾见过某个遗留系统中,一个大表中包含100多列的)。某种意义上...
“相关推荐”对你有帮助么?
非常没帮助
没帮助
一般
有帮助
非常有帮助
提交
©️2022 CSDN
皮肤主题:编程工作室
设计师:CSDN官方博客
返回首页
徐刘根
CSDN认证博客专家
CSDN认证企业博客
码龄10年
Java领域优质创作者
505
原创
7388
周排名
159万+
总排名
687万+
访问
等级
4万+
积分
1万+
粉丝
4798
获赞
1885
评论
8442
收藏
私信
关注
热门文章
为什么越来越多的开发者选择使用Spring Boot?
196332
Dubbo详细介绍与安装使用过程
191243
使用Jenkins配置Git+Maven的自动化构建
166498
MySQL5.6 数据库主从(Master/Slave)同步安装与配置详解
161750
Tomcat部署时war和war exploded区别以及平时踩得坑
150746
分类专栏
Redis实战和核心原理详解
10篇
Spring Boot非官方指南
1篇
Java多线程编程核心技术
18篇
Java技术提高
80篇
JVM学习
11篇
框架之路
2篇
集群分布式
21篇
Web开发
39篇
Servlet
18篇
SSM
13篇
Spring
28篇
Spring Boot
2篇
Mybatis
6篇
Hibernate
14篇
DDD领域驱动
1篇
Android
70篇
Android实例项目
40篇
算法学习
26篇
数据结构
17篇
数据库
51篇
Linux
16篇
Nginx
4篇
Redis
17篇
Maven
4篇
Dubbo
4篇
ZooKeeper
1篇
kafka
4篇
Jenkins
5篇
Tomcat
6篇
ELK
2篇
MyCat
1篇
Storm
2篇
Solr
网络编程
2篇
网络基础
2篇
面试总结
14篇
资源分享
16篇
其他
5篇
程序生活
1篇
微服务
最新评论
大型分布式数据库中间件MyCat的安装与使用
solihawk:
mycat简要介绍,看过来这里https://mp.weixin.qq.com/s/H1VhR-OaQZXse6mlO3EzQg
Apache Kafka:下一代分布式消息系统
solihawk:
Kafka的特性及主要概念、高可用架构及可靠性机制、生产者和消费者的处理流程等基本原理。看过来这里https://mp.weixin.qq.com/s/DMexNMZMaorV2D6mJJfxMw
SqlSessionTemplate是如何保证MyBatis中SqlSession的线程安全的?
浮生若灬梦:
因为这个复用功能已经由spring提供了 org.springframework.transaction.support.TransactionSynchronizationManager, 里边也是ThreadLocal, mybatis只要将资源存储在里边即可由spring来复用并进行事务管理. 这里就涉及到了SqlSessionHolder. 简而言之, SqlSessionTemple是专为spring容器管理下的bean提供的, 而SqlSessionManager是mybatis自己实现的一套带有线程复用功能的sqlSession.
SSH设置别名访问远程服务器
Daniel_jianer:
这样设置了 ssh 用户名 不成功
带你发现新大陆!什么是图数据库以及简单入门!
梦想仗剑走天涯:
逛了一圈,你这篇文章介绍图数据库是最简洁明了的
您愿意向朋友推荐“博客详情页”吗?
强烈不推荐
不推荐
一般般
推荐
强烈推荐
提交
最新文章
MapStruct最详细的使用教程,别在用BeanUtils.copyProperties ()
分库分表?如何做到永不迁移数据和避免热点?
为什么要谨慎使用Arrays.asList、ArrayList的subList?
2021年3篇
2020年7篇
2019年18篇
2018年26篇
2017年55篇
2016年47篇
2015年212篇
2014年205篇
目录
目录
分类专栏
Redis实战和核心原理详解
10篇
Spring Boot非官方指南
1篇
Java多线程编程核心技术
18篇
Java技术提高
80篇
JVM学习
11篇
框架之路
2篇
集群分布式
21篇
Web开发
39篇
Servlet
18篇
SSM
13篇
Spring
28篇
Spring Boot
2篇
Mybatis
6篇
Hibernate
14篇
DDD领域驱动
1篇
Android
70篇
Android实例项目
40篇
算法学习
26篇
数据结构
17篇
数据库
51篇
Linux
16篇
Nginx
4篇
Redis
17篇
Maven
4篇
Dubbo
4篇
ZooKeeper
1篇
kafka
4篇
Jenkins
5篇
Tomcat
6篇
ELK
2篇
MyCat
1篇
Storm
2篇
Solr
网络编程
2篇
网络基础
2篇
面试总结
14篇
资源分享
16篇
其他
5篇
程序生活
1篇
微服务
目录
评论 26
被折叠的 条评论
为什么被折叠?
到【灌水乐园】发言
查看更多评论
打赏作者
徐刘根
你的鼓励将是我创作的最大动力
¥2
¥4
¥6
¥10
¥20
输入1-500的整数
余额支付
(余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付
您的余额不足,请更换扫码支付或充值
打赏作者
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额
抵扣说明:
1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。 2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。
余额充值