假设: 2 台 4 核 8G 的 mysql 云服务器,设置一读一写; 1 台 8 核 16G 的 mysql 云服务器,不读写分离; 如何选择比较好呢?请大神指点
假设: 2 台 4 核 8G 的 mysql 云服务器,设置一读一写; 1 台 8 核 16G 的 mysql 云服务器,不读写分离; 如何选择比较好呢?请大神指点
|
yrjAug 22, 2019 via iPad
1
个人感觉,小站没必要,大站服务拆分是必要过程吧
|
|
okworkAug 22, 2019 via Android
2
读写比超过 80:20 就分开,不超过就不用分。
|
|
taogenAug 22, 2019 via Android
3
先搞清楚为什么要读写分离,它的作用是什么
|
|
qsbaqAug 22, 2019
4
读写分离没毛病,还能当同步备份。
看你需求而定。 |
|
opengpsAug 22, 2019
5
根据业务特征决定:读写分离适用于读写比例明显偏大的场景。比如 v 站,访客多,但是每秒的新帖子和新回复峰值并不高
|
|
zjsxwcAug 22, 2019 via Android
6
数据库读写分离就是 sql 层面的缓存,是最后的大杀招
因为在应用层面,不管是用 aop 缓存方法调用结果,还是直接拦截代理接口请求缓存,都可以达到类似效果 |
|
CallMeReznovAug 22, 2019
7
分,一定要分.
|
|
rateltalkAug 22, 2019 via iPhone
8
曾经信了邪,认为两台比一台好
|
|
az402Aug 22, 2019 via Android
9
一台 8u16g 以后扩成两台 8u16g 的成本比两台 4u8g 升级成两台 8u16g 的成本低
|
|
dapang1221Aug 22, 2019
10
首先这个配置就有问题,读写分离是两台机器上都有 mysql 实例,4c8g*2 性能未必比 8c16g*1 高…还得看索引大小,16g 的机器索引存的肯定更多,查询的 io 开销就小,楞拆成俩 8g 没法比
|
|
ActraceAug 22, 2019
11
单个服务器好。
通常来说数据库本身的缓存机制会处理好读的问题,所以读写分离一般是用于将负载分离到多台物理服务器上。 但是服务器越多,管理成本就越高,所以嘛,为此出现了很多中间件,就是为了解决这个问题。 在我个人看来,数据库的目标是存储和管理数据,因此如果是优化性能,我更建议是放到中间件层面去做,比如用 redis 进行缓存等。 然而大多数公司的业务还不到需要多台物理数据库服务器的程度吧,如果负载太高,请好好从程序层面找一下原因,大部分的问题都是使用不当造成的。 |
|
yukiirAug 22, 2019
12
我感觉单机好,单机不够了就上缓存,缓存不够了再上读写分离。
|
|
arelessAug 22, 2019 via Android
13
那么你的数据库有 8g 或者 16g 大吗?什么~不够?加内存啊。来来来~shm 放数据,硬盘跑 http 响应,人要学会另辟蹊径
|
|
AresxueAug 26, 2019
14
一般情况下当前肯定是单机的快,不过考虑到后续用户量的攀升先做好读写分离也是不错的。
ps:but 大多数系统根本不会有数据量超过系统负荷的那一天,过早优化是万恶之源。 |