MySQL 的架构设计

MySQL 架构一定要结合前台业务来设计、优化,所以不管是哪种架构、根据业务要求组合成符合需求的即是最好的、不能泛泛而谈同时、也必须注意数据的安全(如ipsec,ssh,vpn传输)

MySQL常见的架构

MySQL常见的架构都是进行业务切分、前端缓存、分库分表。若是过亿的查询量则先从业务上拆分、将 bbs、web、blog 分成几个组、然后再做成一主多从、读写分离的方式
而且、在设计表的时候、一般情况下、备库常充当起备份查询的作用,至于、读写分离、在程序设计之初、读和写是通过不同的IP入口、这是思路一、或者定义类、或者用代理层,比如 MySQL-proxy大多数的场合、一般在应用层做读写分离、然后 MySQL 通过复制来实现、优点比较多,可控性非常好、

游戏常见的架构
游戏中的:好友关系、排行榜、计数器、队列、cache 都很适合通过 Redis 来实现,至于 Redis 的事务功能、可以不必放太多的心思去关心。另外、Redis 相对 Memcached 而言、也稳定很多

电商常见的架构

电商中:生产环境也都是主从架构、然后用 DRBD + HA 做 Master 备份,主主不推荐、高可用还是推荐 DRBD 方案,DRBD 注意不设置自动启动、重启时候手动启动、脑裂的情况发生非常的少。不过、工作中基本不重启 DRBD、更不会重启服务器了、基本上没遇到脑裂的问题,DRBD 这个在做风险容灾的时候有一定作用、但不能起到扩展、结合 LVS相信也是一种 perfect方案,如:LVS+Keepalived 可以通过脚本剔除延迟慢或失效的从MySQL机器、而且LVS在软件负载均衡器中是最强的、在后端节点超过10台以上的情况、估计只有LVS能胜任

 

 

规模大的公司(如Sina、taobao)
1、不用集群是说mysql自身的集群用的不多(目前看也是可以用的)
2、主从可以是多组,数个
3、每组都可能一主多从(业务数据的1/N)
4、3中每一组里的读或写 都可能是前端调度器的一个RS
5、调度器分发可以hash分组,可以根据用户ID切分数据,当然还有更高级的手段
提示:SINA开发经理承认,他们的SAE平台还是主从,甚至还有单点(靠监控和手工处理))

规模中等的公司(如CSDN)
1)mysql一主多从程序读写分离(甚至还没实现),多组。出问题直接手工或自动切从后在change master(脚本或程序实现)
2)drbd+ha实现高可用(也是双主多从,自动切换M,正常备M不可提供服务)
3)或双主多从,前端结合读及写分别负载均衡

MySQL常见架构的应用的更多相关文章

  1. mysql常见知识点总结

    mysql常见知识点总结 参考: http://www.cnblogs.com/hongfei/archive/2012/10/20/2732516.html https://www.cnblogs. ...

  2. mysql 常见参数

    my.cnf[client] 对mysql的所有客端都生效的[mysql] 只对mysql这个命令有效了[mysqd][mysqld_multi] 多实例启动[mysqld_safe][mysqldN ...

  3. MySQL常见注意事项及优化

    MySQL常见注意事项 模糊查询 like 默认是对name字段建立了索引 注意:在使用模糊查询的时候,当% 在第一个字母的位置的时候,这个时候索引是无法被使用的.但是% 在其他的位置的时候,索引是可 ...

  4. mysql数据库架构设计与优化

    mysql数据库架构设计与优化 2019-04-23 20:51:20 无畏D尘埃 阅读数 179  收藏 更多 分类专栏: MySQL   版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA ...

  5. [数据库系列之MySQL] Mysql整体架构浅析一

    一.引言 平时我们在做Java系统时,一般情况下都会连接到一个MySQL数据库上去,执行各种增删改查的语句.大部分的Java工程师对MySQL的了解和掌握程度,大致就停留在这么一个阶段:对MySQL可 ...

  6. 【干货】MySQL底层架构设计,你了解多少?

    很多开发同学对SQL优化如数家珍,却对MySQL架构一知半解.岂不是只见树叶,不见森林,终将陷入细节中不能自拔. 今天就一块学习MySQL分层架构,深入了解MySQL底层实现原理,以及每层的作用,我们 ...

  7. MySQL高级知识- MySQL的架构介绍

    [TOC] 1.MySQL 简介 概述 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle公司. MySQL是一种关联数据库管理系统,将数据保存在不同的表中,而 ...

  8. Mysql常见四种索引的使用

    提到MySQL优化,索引优化是必不可少的.其中一种优化方式 --索引优化,添加合适的索引能够让项目的并发能力和抗压能力得到明显的提升. 我们知道项目性能的瓶颈主要是在"查(select)&q ...

  9. mysql 常见的几个错误问题

    Mysql常见的几个错误问题及解决方法: 1.问题: mysql DNS反解:skip-name-resolve 错误日志有类似警告: 点击(此处)折叠或打开 120119 16:26:04 [War ...

随机推荐

  1. matlab快捷键大全

    原文地址,点此查看 一.常用对象操作 除了一般windows窗口的常用功能键外. 1.!dir 可以查看当前工作目录的文件. !dir& 可以在dos状态下查看. 2.who   可以查看当前 ...

  2. iOS appStore中的应用 实现升级功能

    .h文件中 <UIAlertViewDelegate> .m文件中 #import "SBJson.h"        //解析sbjson 数据 - (void)vi ...

  3. 跟我一起学extjs5(08--自己定义菜单1)

    跟我一起学extjs5(08--自己定义菜单1) 顶部和底部区域已经作好,在顶部区域有一个菜单的button.这一节我们设计一个菜单的数据结构,使其能够展示出不相同式的菜单.因为准备搭建的是一个系统模 ...

  4. DTree的改进与使用经验

    1.dtree.js源码 function Node(id, pid, name, url, title, target, icon, iconOpen, open) { this.id = id; ...

  5. git 经常使用操作集锦

    创建仓库 新建普通仓库: jxdong@ubuntu-server:~/workspace/git$ git init Reinitialized existing Git repository in ...

  6. 卡方检验(Chi-square test/Chi-Square Goodness-of-Fit Test)

    什么是卡方检验 卡方检验是一种用途很广的计数资料的假设检验方法.它属于非参数检验的范畴,主要是比较两个及两个以上样本率( 构成比)以及两个分类变量的关联性分析.其根本思想就是在于比较理论频数和实际频数 ...

  7. Cesium随笔(4)去掉cesium和bing地图的logo 【转】

    在开发过程中timeline上面的logo是不是有些碍眼嘞,下面写一下去掉的方法: 在style标签中添加 css: .cesium-widget-credits{   display:none!im ...

  8. 80端口占用异常解决方法java.net.BindException: Address already in use: JVM_Bind:80(或8080)

    1:Tomcat(或其他Web容器)启动时控制台报错如下示: 2007-8-2 15:20:43 org.apache.coyote.http11.Http11Protocol init 严重: Er ...

  9. JavaScript中定义对象的四种方式

    最近在阅读< JavaScript 高级程序设计>,未免遗忘读过的内容,就打算以博客的形式做些读书笔记.今天介绍的是 JavaScript 中的四种定义对象的方法,除了这四种方法,还有工厂 ...

  10. Maven Dependencies没有了的解决办法

    头疼的问题,maven Dependencies突然没有了,别的项目都有,个别的却怎么也出不来.  以下是某大神的解决方法,特此转发,以防丢失: 网上搜索了一番,大多都是下面这种做法: 右击 Mave ...