阿里云「飞天发布时刻」2024来啦!新产品、新特性、新能力、新方案,等你来探~ 了解详情
写点什么

从小型网站到超大规模网站的 MySQL 参考架构

  • 2013-03-18
  • 本文字数:1367 字

    阅读完需:约 4 分钟

Oracle 发布《面向大规模可伸缩网站基础设施的MySQL 参考架构》白皮书,针对将MySQL 用作数据存储的不同类型和不同规模的网站给出了推荐的拓扑结构。

根据分别提供4 类服务——用户和会话管理、电子商务、分析类应用 (多结构数据) 和CMS(元数据)——的网站的规模和可用性要求(如下表所示),这份白皮书给出了4 个参考架构。

请注意,这里给出的指导方针只是基本建议,实际应用中需要根据读写模式、负载平衡和所用的缓存机制等因素进行调整。

小型(Small)网站参考架构

这一参考架构可用于上述4 类网站的所有小型实现。可以使用MySQL Replication 来制作数据的副本以支持备份和分析。

中型(Medium)网站参考架构

在这种情况下,推荐针对不同类型的活动选择独立的基础设施,考虑每个MySQL 服务器最多支持8 个应用服务器,如果因伸缩性需求应用服务器数量增加,则添加更多的MySQL 从服务器。

为满足会话管理网站和电子商务网站的高可用性要求,可以使用 Linux 心跳(Heartbeat)和半同步复制。CMS 网站通常对读操作的向外扩展有更高要求,假定每个 MySQL 从服务器最多可以处理 3000 个并发用户,白皮书建议为每个 MySQL 主服务器添加 20-30 个从服务器。CMS 系统可将数据保存在一个 SAN 中,或者保存在连接到该服务器的分布式设备中。

会话管理网站和 CMS 网站推荐使用 Memcached,这有助于减轻应用服务器和 MySQL 服务器的负担。

分析类网站的拓扑结构简单一些,1 个主服务器加 3 个从服务器就能解决问题。

大规模(Large)网站参考架构

针对大规模网站,白皮书推荐使用 MySQL Geographic Replication 来进行跨数据中心的数据库复制,这种方式支持跨越地理上分离的集群进行异步复制。

会话管理网站和电子商务网站应该使用集群,白皮书声称“4 个数据节点,1 秒可以支持 6000 个会话(页面点击),其中每次页面点击生成 8–12 个数据库操作”。大规模 CMS 网站使用的配置与中型网站类似,只是必要时需要多添加一些从服务器。针对分析类应用,这里引入了一个数据提炼(Data Refinery)单元,用于数据的清理和组织。

超大规模(Extra Large)网站参考架构

针对社交网站,白皮书也给出了相应建议。它声称“网络上流量最大的 10 个网站有 9 个部署了 MySQL,其中包括 Google、Facebook 和 YouTube”,但是没有说明这些网站用 MySQL 干什么,不过众所周知的是,LinkedIn 成功应用了 MySQL。

社交网站的拓扑结构利用了中型和大规模网站中实现的概念,包括专用应用服务器、Memcached 和数据提炼单元, 但为支持写操作的向外扩展引入了分片(Shard)。MySQL 集群被用于用户的认证和查找,当“用于查找的键(key)不止 1 个”时,直接读写相应的分片。

MySQL 主服务器和从服务器的推荐规格如下:

  • 8–16 个 x86-64 位 CPU 核心(MySQL 5.5 及以上)。
  • 4–8 个 x86 -64 位 CPU 核心(MySQL 5.1 及更早版本)。
  • 比活动数据多 3–10 倍的内存。
  • Linux、Solaris 或 Windows 操作系统。
  • 最少 4 块磁盘,8–16 块磁盘能增加 I/O 密集型应用的性能。
  • 支持电池供电高速缓存的硬件 RAID。
  • 推荐使用 RAID 10。如果负载为读密集型,RAID 5 也是合适的。
  • 2 个网卡和 2 个供电单元用作冗余。

另外,白皮书还有一些针对 MySQL 集群和数据存储设备的建议,再就是用于监控、备份和集群管理的解决方案。

查看英文原文 MySQL Reference Architectures for Small to Extra Large Websites

2013-03-18 04:1913143
用户头像
臧秀涛 略懂技术的运营同学。

发布了 300 篇内容, 共 130.2 次阅读, 收获喜欢 34 次。

关注

评论

发布
暂无评论
发现更多内容

iPaaS与ESB: 解密企业集成领域的两大利器差异

RestCloud

数字化转型 ESB API 企业集成 ipaas

快应用与小程序:分别为“轻应用”市场

Geek_2305a8

亚马逊国际amazon.item_get API接口:跨境电商的必备工具

技术冰糖葫芦

api 货币化 API 测试 pinduoduo API

提升财务规划成熟度,应对关键挑战

智达方通

财务分析 全面预算管理 财务预测 滚动预测

软件测试学习笔记丨Jenkins api接口

测试人

软件测试 jenkins API 测试开发

BTC生态Giants Planet如何将BTC L2与现实世界整合?

长安区块链

揭秘2024年DevOps顶级工具

PingCode

DevOps DevOps工具

一文读懂BTC生态新贵Giants Planet,将L2与现实世界整合

西柚子

Spring开发:动态代理的艺术与实践

EquatorCoco

Java spring 动态

Penpad生态再迎新进展,Season 2 ETH质押量超200万美元

西柚子

QCN9274 VS QCN6274: What’s the Difference Between the WiFi 7 Module Chips?

wallyslilly

qcn9274 qcn6274

小红书搜索团队提出新解码策略,降低大模型推理成本

小红书技术REDtech

机器学习 搜索 智能 #人工智能 #大模型

海外云服务器如何助你打造国际化跨境电商业务?

一只扑棱蛾子

云服务器

Kafka 迁移工具 MirrorMaker2 原理起底

AutoMQ

大数据 kafka 云原生 AutoMQ MirrorMaker2

为什么Toncoin是加密货币开发的下一个重大事件

区块链软件开发推广运营

dapp开发 区块链开发 链游开发 NFT开发 公链开发

大模型时代,嫘祖也掌握了「新质生产力」!

脑极体

AI

多元 CPU 性能调优的技术挑战、产品设计和业务实践

Baidu AICLOUD

性能调优 cpu加速 btune

Spring开发:动态代理的艺术与实践

华为云开发者联盟

spring 开发 华为云 华为云开发者联盟 企业号2024年4月PK榜

大模型时代,嫘祖也掌握了「新质生产力」!

白洞计划

AI

今日分享丨流程节点复制,流程配置更高效

inBuilder低代码平台

流程 工作流引擎

搞垮一家SaaS公司最快的方法

ToB行业头条

Web3 游戏周报(4.07-4.13)

Footprint Analytics

gamefi

Databend 开源周报第 140 期

Databend

加强企业财务管理,实现行业未来展望

智达方通

数字化转型 全面预算管理 财务管理

【教程】功能齐全的iOS混淆工具介绍及功能详解

雪奈椰子

如何实现小程序与App的跳转?

Geek_2305a8

海外云手机为什么适合社媒运营?

Ogcloud

云手机 海外云手机 tiktok云手机 云手机海外版 电商云手机

华为云CodeArts IDE For Python 快速使用指南

华为云PaaS服务小智

华为云

软件测试学习笔记丨后端接口基本开发 - Spring boot项目搭建

测试人

软件测试 测试开发 spring-boot

捷途山海T2预售开启,装甲级电池防护,让您出行无忧

Geek_2d6073

使用 TypeScript 从零搭建自己的 Web 框架:数据库抽象层

RoyLin

typescript

从小型网站到超大规模网站的MySQL参考架构_数据库_Abel Avram_InfoQ精选文章