【技术实现步骤摘要】
一种数据读写方法及装置
[0001]本申请涉及数据存储
,特别涉及一种数据读写方法及装置。
技术介绍
[0002]目前很多大型系统及应用都是用分布式部署的,数据一致性问题一直是个比较重要的话题,分布式锁是控制分布式系统之间同步访问共享资源的一种方式,但是往往太多的锁会造成导致系统性能缓慢,用户体验不佳,其典型的使用场景为:不同系统或者是同一系统的不同主机之间,共享了一个或一组数据,那么访问这些数据的时候,需要通过一定的互斥手段来防止彼此的干扰,以保证一致性,传统的实现方式是利用锁的互斥功能实现,当操作数据库数据时,在对应代码中加入锁,保证仅有一个线程对数据库进行操作但是,当每次访问数据的时候,都采用加锁的方法,其余线程便会进入排队等待状态,会造成系统性能缓慢,使得系统性能降低。
技术实现思路
[0003]本申请提供了一种数据读写方法及装置,用以解决现有技术中存在的读写请求处理效率低的问题。
[0004]第一方面,本申请提供了一种数据读写方法,应用于分布式存储系统,所述方法包括:
[000 ...
【技术保护点】
【技术特征摘要】
1.一种数据读写方法,其特征在于,应用于分布式存储系统,所述方法包括:接收客户端发送的多个读写请求;判断当前执行的读写请求为读请求/写请求;若判定当前执行的读写请求为目标读请求,且独占锁未被其它读写请求占用,则执行所述目标读请求,并将下一个读写请求作为当前执行的读写请求,否则,不执行所述目标读请求;若判定当前执行的读写请求为目标写请求,且所述独占锁未被其它读写请求占用,则占用所述独占锁,并执行所述目标写请求。2.如权利要求1所述的方法,其特征在于,所述方法还包括:若确定所述目标写请求执行完成,则释放所述独占锁。3.如权利要求1所述的方法,其特征在于,执行所述目标读请求的步骤包括:基于所述目标读请求,确定所要读取的第一数据;判断缓存存储中是否存在所述第一数据;若判定所述缓存存储中存在所述第一数据,则从所述缓存存储中读取所述第一数据,并将所述第一数据返回给客户端;若判定所述缓存存储中不存在所述第一数据,则从后端存储中读取所述第一数据,并将所述第一数据返回给客户端,以及将所述第一数据缓存在所述缓存存储中。4.如权利要求1所述的方法,其特征在于,执行所述目标写请求的步骤包括:基于所述目标写请求,确定待写入的第二数据;将所述第二数据写入后端存储中,并更新缓存存储中的所述第二数据。5.如权利要求3或4所述的方法,其特征在于,所述缓存存储为redis缓存。6.一种数据读写装置,其特征在于,应用于分布式存储系统,所述装置包括:接收单元,用于接收客户端发送的多个...
【专利技术属性】
技术研发人员:周涛,
申请(专利权)人:新华三大数据技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。