当前位置: 代码迷 >> 综合 >> MyCat & Nginx
  详细解决方案

MyCat & Nginx

热度:5   发布时间:2024-01-24 12:32:39.0

文章目录

  • MyCat
    • MyCat简介
    • MyCat分片-海量数据存储解决方案
  • Nginx

MyCat

(开源数据库中间件)

MyCat简介

Mycat背后是阿里曾经开源的知名产品——Cobar。Cobar的核心功能和优势是MySQL数据库分片,此产品曾经广为流传,据说最早的发起者对Mysql很精通,后来从阿里跳槽了,阿里随后开源的Cobar,并维持到2013年年初,然后,就没有然后了。
Cobar的思路和实现路径的确不错。基于Java开发的,实现了MySQL公开的二进制传输协议,巧妙地将自己伪装成一个MySQL Server,目前市面上绝大多数MySQL客户端工具和应用都能兼容。比自己实现一个新的数据库协议要明智的多,因为生态环境在哪里摆着。
Mycat是基于cobar演变而来,对cobar的代码进行了彻底的重构,使用NIO重构了网络模块,并且优化了Buffer内核,增强了聚合,Join等基本特性,同时兼容绝大多数数据库成为通用的数据库中间件。
简单的说,MyCAT就是:一个新颖的数据库中间件产品支持mysql集群,或者mariadb cluster,提供高可用性数据分片集群。你可以像使用mysql一样使用mycat。对于开发人员来说根本感觉不到mycat的存在。
在这里插入图片描述

在这里插入图片描述

MyCat的官方网站:
http://www.mycat.org.cn/
下载地址:
https://github.com/MyCATApache/Mycat-download
Mycat的默认端口号为:8066

MyCat分片-海量数据存储解决方案

什么是分片
简单来说,就是指通过某种特定的条件,将我们存放在同一个数据库中的数据分散存放到多个数据库(主机)上面,以达到分散单台设备负载的效果。
数据的切分(Sharding)根据其切分规则的类型,可以分为两种切分模式。
(1)一种是按照不同的表(或者Schema)来切分到不同的数据库(主机)之上,这种切分可以称之为数据的垂直(纵向)切分
在这里插入图片描述
在这里插入图片描述

Nginx