读写分离一般都是结合Master/Slave模式使用,Master处理写请求,Slave处理读请求,这样做的好处是:
1、提高数据库的并发处理能力;
2、避免写请求锁表阻塞读请求;
3、避免单点,提高数据库的可用性;
而使用Redis作为DB前面的缓存,是为了减少对MySQL的压力,提高系统的处理效率。
二者解决的问题域不同,不存在谁替代谁。
一般高并发应用都是结合二者使用。
读写分离是分摊数据库的读取压力,
用缓存是减少数据库的读取压力。
假如有100次查询,有两个mysql从服务器,则每个服务器可以分担50次查询,
如果是有缓存,而没有mysql从服务器,100次查询,可能50次是可以从缓存里取的
50次是需要从数据库取的,那么mysql服务器只承担了50次查询。
1.mysql读写分离 是指mysql的数据读取操作和数据更新操作分开 这样在大并发的情况下 数据库不会出现长时间锁边的情况
2.redis做缓存是把数据库数据缓存在内存中 当同一个数据请求过来,会直接读取内存中的缓存数据而不会再向数据库请求数据 降低数据库的压力