当前位置: 首页 > news >正文

徐州提供网站建设要多少钱常州知名做网站服务

徐州提供网站建设要多少钱,常州知名做网站服务,南京建站公司哪家好,青浦赵巷网站建设一、基本原理 1、数据分片 (1)、水平分片 Mycat 将一个大表的数据按照一定的规则拆分成多个小表,分布在不同的数据库节点上。例如,可以根据某个字段的值进行哈希取模,将数据均匀的分布到不同的节点上。 这样做的好处…

一、基本原理

1、数据分片

(1)、水平分片

        Mycat 将一个大表的数据按照一定的规则拆分成多个小表,分布在不同的数据库节点上。例如,可以根据某个字段的值进行哈希取模,将数据均匀的分布到不同的节点上。

        这样做的好处是可以将数据分散到多个节点上,提高查询和写入的性能,同时也可以突破单个数据库的存储和处理能力限制。

(2)、垂直分片

        将一个数据库中的不同表按照业务逻辑进行拆分,分别存储在不同的数据库节点上。

        比如将用户的信息表和订单表分别存储在不同的节点上,这样可以根据业务的需求独立的对不同的表进行扩展和优化

2、中间件层

 (1)、连接管理

        Mycat 作为中间件,接收来自应用程序的数据库连接请求,并将这些请求转发到后端的真实数据库节点上。

        它维护着与应用程序和数据库节点的连接池,提高连接的复用率,减少连接建立和关闭的开销

(2)、SQL解析

        当接收到SQL请求时,Mycat 会对SQL 语句进行解析,识别出查询的表、字段、条件等信息

        根据解析结果和配置的分库分表规则,确定SQL语句应该在那些数据库节点上执行。

(3)、SQL路由

        降解析后的SQL语句转发到相应的数据库节点上执行,如果是查询语句,Mycat 会从多个节点上获取结果,并进行合并和排序后返回给应用程序。

        如果是写入语句,Mycat会根据分库分表规则降数据写入到相应的节点上。

(4)、结果合并

        对于从多个数据库节点返回的查询结果,Mycat 会进行合并和排序 ,使得应用程序看到的结果就像从一个单一的数据库中查询出来的一样。

3、高可用和负载均衡

(1)、高可用

        Mycat 可以配置多个节点组成集群,当某个节点出现故障时,其他节点可以接管其工作,保证系统的高可用性。

        可以通过主从复制、心跳检测等机制实现故障自动切换。

(2)、负载均衡

        Mycat 可以根据配置的策略将请求均匀地分发到不同的数据库节点上,实现负载均衡,避免某个节点负载过高。

        创建的负载均衡策略有,轮询、随机、权重等。

二、基础入门实战

1、部署环境

安装mycat 依赖的jdk环境,以及对应的MySQL客户端

详细安装jdk的方法请看:不依赖zookeeper的Kafka集群_kafka下载哪个版本-CSDN博客

安装MySQL数据库客户端,这里是基于原有的yum源仓库,直接进行下载的

2、部署Mycat

下载安装包:| MYCAT官方网站—中国第一开源分布式数据库中间件

将准备好的mycat二进制安装包解压到指定目录下,并使其命令全局可用,配置对应的环境变量

 tar -xf Mycat-server.tar.gz -C /usr/local/

 vim /etc/profile.d/mycat.sh

 source /etc/profile.d/mycat.sh

运行使其生效

3、先开启mycat 服务,预运行一下

mycat start

开启成功

4、更改其主配置文件和schema.xml 文件

vim conf/server.xml

将端口改为3306

基于root 用户关联MySQL数据库,以及对应的密码,TESTDB 为对外显示的数据库名

vim conf/schema.xml

前端显示数据库

后端关联数据库

心跳检测,读写节点分离

在MySQL数据中进行设置root 用户,使其可以被其他主机访问登录

其密码一般使用兼容老版本的方式老进行设置

CREATE USER 'root'@'%' IDENTIFIED BY '123456';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%';
FLUSH PRIVILEGES;select user,host,authentication_string from mysql.user;

重启mycat服务

mycat restart

5、进行验证

基于中间件,实现分库分表的功能

前端显示的数据库

库中的内容是关联的后端数据库test中的数据

验证其读数据信息来自于后端哪一个MySQL数据库

其所读的数据轮替从后端从服务器中获取

6、开启后端主服务器的通用日志功能,查看其是否被触发日志信息

在配置文件中添加 general_log

重启服务进行查看

查询通用日志所在位置

select @@general_log_file;

可以看到,每过10秒,进行一次的心跳检测

7、当在mycat中对数据进行更改时,查看日志

触发主MySQL数据库的通用日志信息。

可以看出,其写数据时,只会在后端主数据库中写入,而读取数据,是从其他两台从数据库中获取的数据

8、将后端两台从服务器停止服务,然后访问

先将从主机node1停服

Mycat只能从120主机读取数据信息

当node2/120,主机也停止服务时

这时,mycat读写操作均是从node主机中(主MySQL数据库)中获取的数据

从主MySQL服务器的通用日志中可以查看到,其mycat在其所代理的后端所有read服务器全部瘫痪时,将向主数据库中发起read数据调用

当两台从数据库重新启动时,其访问读数据又会重新回归到从数据库中

成功的实现了MySQL数据的读写分离,分库分表功能

http://www.yayakq.cn/news/327408/

相关文章:

  • 中国造价工程建设管理协会网站重庆住房和城乡建设部网站的打印准考证
  • 水果销售网站开发文献综述360免费wifi怎么安装
  • 可以做宣传的网站有哪些网络公司怎么优化网站
  • 我想创业做网站微信开放文档官网
  • 成华区门户网站如何将一个网页生成链接
  • 海底捞口碑营销北京seo服务行者
  • 安乡网站制作合肥公司做网站
  • 越城区住房和城乡建设局网站网站备案时间
  • 苏州沧浪做网站哪家好电子商城网站建议书
  • 团购网站开发代码青岛网站推广公司
  • 利用python做网站网页源代码下载
  • 酒泉地网站推广仿顺丰优选网站源码
  • 套模板建设网站多少钱wordpress 自带相册
  • 网站建设服务兴田德润响应式布局与自适应布局区别
  • 哪家成都公司做网站怎样做网络营销推广网站营销推广
  • 怎么做网站服务器吗外贸免费建设网站
  • 模板网站建设乐云seo效果好seo外链自动群发工具
  • 免费招聘网站平台有哪些wordpress 链接新窗口打开
  • 无锡网站推广$做下拉去118cr广告图文制作用哪个软件
  • 网站返利二维码怎么做阿里云 wordpress 权限设置
  • 商城网站设计公司怎么样微网站如何建立的
  • 用php怎么做网站优秀手机网站设计
  • seo服务销售招聘湖南正规seo公司
  • 用jsp做的可运行的网站保险网站查询
  • 网站网址和域名深喉咙企业网站生成系统
  • 广东专注网站建设企业北京商场购物中心
  • 阜阳公司做网站设计业务网站
  • 网站可以做哪些内容wordpress参数手册
  • wordpress采集工具优化设计七年级上册语文答案
  • 做引流网站怎么赚钱赚谁的钱什么主题 wordpress