服务器架构随着应用场景的不同采用的架构方式也是不一样的,而今天我们就通过案例分析来简单学习一下,在服务器架构中的可扩展性都有哪些特点。
MySQL的可扩展性
架构的可扩展性往往和并发是息息相关,没有并发的增长,也就没有必要做高可扩展性的架构,这里对可扩展性进行简单介绍一下,常用的扩展手段有以下两种
Scale-up:纵向扩展,通过替换为更好的机器和资源来实现伸缩,提升服务能力
Scale-out:横向扩展,通过加节点(机器)来实现伸缩,提升服务能力
对于互联网的高并发应用来说,无疑Scaleout才是出路,通过纵向的买更的机器一直是我们所避讳的问题,也不是长久之计,在scaleout的理论下,可扩展性的理想状态是什么?
可扩展性的理想状态
一个服务,当面临更高的并发的时候,能够通过简单增加机器来提升服务支撑的并发度,且增加机器过程中对线上服务无影响(nodowntime),这就是可扩展性的理想状态!
MySQL架构的演变
MySQL简单网站架构(V1.0)
一个简单的小型网站或者应用背后的架构可以非常简单,数据存储只需要一个mysqlinstance就能满足数据读取和写入需求(这里忽略掉了数据备份的实例),处于这个时间段的网站,一般会把所有的信息存到一个databaseinstance里面。
在这样的架构下,电脑培训http://www.kmbdqn.com/来看看数据存储的瓶颈是什么?
单实例单业务,依然存在V1.0所述瓶颈,遇到瓶颈时可以考虑往本文更高V版本升级,若是读请求导致达到性能瓶颈可以考虑往V3.0升级,其他瓶颈考虑往V4.0升级
1.如果你的业务暴涨10倍或者100倍 你会把你得什么业务放在mysql 中A:前提是业务暴涨100倍。传统上从基础建设方面下手、ssd、光通道、读写分离、cdn、分布式存储、结构化与非结构化数据分离、集群化通过主机量的方式来应对暴涨的访问等,至于说到mysql,我觉得mysql都可以应用起来,对于非互联网业务的企业,基本很少采用mysql的解决方案,大都是用商业化的产品,如oracle、sql server等。
2.未来我们的关系型数据库会发展成什么样子呢?
A:朝分布式方向发展。变成易横向扩展的融合性数据库。
3. 其实业务就是成倍的增长的,结合你的业务暴涨10倍or100倍 你要怎么设计的架构。让你得系统可以抗过去。
A:将业务分拆为一个个都微服务器、云化、容器化,高内聚轻耦合。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)