mysql写入操作对服务器的压力_数据库应用之--Redis+mysql实现大量数据的读写,以及高并发...

一、开发背景

在项目开发过程中中遇到了以下三个需求:

1. 多个用户同时上传数据;

2. 数据库需要支持同时读写;

3. 1分钟内存储上万条数据;

根据对Mysql的测试情况,遇到以下问题:

1. 最先遇到压力的是服务器,在写入2500-3000条数据时,服务器崩溃了;

2. 当数据库写入时,耗时太长,10000条数据,大概需要505.887s,相当于8分钟,如下:

a. 表结构:

b. 数据库Procedure:

DROP PROCEDURE IF EXISTSmy_insert;CREATE PROCEDUREmy_insert()BEGIN

DECLARE n int DEFAULT 1;

loopname:LOOPINSERT INTO car_pathinfo_driver_cpy(id, linkphone,cartype,carcolor,carnumber,drivername,pubtimes)VALUES(n+500,'18838325709','雪弗兰','白','豫A190XS','siker','3');SET n=n+1;IF n=10000 THENLEAVE loopname;END IF;ENDLOOP loopname;END;

CALL my_insert();

c. 运行结果如下:

3. 不断的数据库写入导致数据库压力过大;

出现以上问题,是由于mysql是基于磁盘的IO,基于服务响应性能考虑,就需要给数据做缓存,所以决定使用Mysql+redis缓存的解决方案,将业务热数据写入Redis缓存,使得高频业务数据可以直接从内存读取,提高系统整体响应速度。

二、使用Redis+Mysql需要考虑的问题

使用redis缓存+mysql数据库存储能解决:

1. 数据读写的速度

2. 服务器的压力问题

同时,就需要考虑同步问题了,Redis和Mysql的同步问题

三、Redis+mysql同步解决方案

1.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值