最新 最热

MyCat - 源代码篇(3)

Created with Raphaël 2.1.0 MySql连接建立以及认证过程 client client MySql MySql 1....

2021-04-12
1

MyCat - 源代码篇(7)

FrontendConnection是对前端连接channel的封装,接受NetworkChannel作为参数构造。前端连接建立,需要先验证其权限,所以,handler首先设置为FrontendAuthenticator 等到验证成功,handler会被设置成FrontendCommandHandler。...

2021-04-12
1

MyCat - 源代码篇(2)

Created with Raphaël 2.1.0 MySql连接建立以及认证过程 client client MySql MySql 1....

2021-04-12
2

MyCat - 背景篇(2)

如前文所说,Amoeba、Cobar、MyCat等属于同宗一脉。若Amoeba能继续下去,Cobar就不会出来;若Cobar那批人不是都走光了的话,MyCAT也不会再另起炉灶。Cobar之后,有很多类似中间件仿照其架构以及思路,针对特定的业务场景,设计出了...

2021-04-12
6

MyCat - 背景篇(1)

目前,对于互联网海量数据的存储以及处理,按使用场景,分为OLTP(联机事务处理,比如即时交易,强调快速响应与处理)与OLAP(联机分析处理,比如BI,强调多维数据分析)。对于这些数据的存储,主要有两种解决方案,即基于SQL的关系型数据库,和N...

2021-04-12
6

Canal+Otter - 前日篇(1)

随着业务的增长和技术的演进,在应用架构上,我们经历了单一用用架构->垂直应用架构->分布式应用架构的发展。对应的,后台数据库也出现了分布式的解决方案。读写分离,负载均衡读写以及两点双写集群甚至于多点多写集群这些,都...

2021-04-12
0

MyCat - 源代码篇(1)

进入了源代码篇,我们先从整体入手,之后拿一个简单流程前端连接建立与认证作为例子,理清代码思路和设计模式。然后,针对每一个重点模块进行分析。 MyCat整体框架图:...

2021-04-12
2

解决mysql中文乱码+database Tool中连接mysql中文乱码

A1 数据库查看自己的数据库是否设置为Utf-8A2 进入mysql查看命令:mysql -u root -p输入MySQL密码进入输入:show variables like 'char%

2021-04-12
4

记一次线上数据库死锁定位

在开发过程中,操作数据库总会涉及到批量操作。有些批量操作可以利用multiquery更新数据库,但有些不可,例如对于同一张表不同字段的多行更新。我们经常会把这种操作放到一个事务里面,由于都是按照主键更新,所以性能上不会有...

2021-04-12
0

通过MySQL5.7子查询的坑联想到的MySQL查询优化规律与注意点

最近,发现业务线程卡死在读取数据库(MySQL 5.7),数据库CPU飙升到了100%,经过定位发现是下面这样一个SQL(由用户触发的查询,可以理解为查看这个群组的所有用户买过哪些商品)导致的:...

2021-04-12
0