一个线上缓存异常

  最近线上应用发现了一个问题,系统启动构建缓存会出现缓存数据为空的情况,仔细分析整个流程

,开始以为是代码疏忽导致bug,后来在仔细分析整个流程发现是由于a缓存先进行缓存、b在缓存数据,

取数据时发现a缓存中存在,但b缓存中数据还未缓存,取b缓存为空导致异常。

  现在是调整了顺序,需要b先缓存然后在a进行缓存。整个问题就处理掉了,因为a、b缓存过程本身

都是依赖线程安全的缓存。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Java架构师历程

3、进程间通信

本书主要介绍如何使用微服务架构构建应用程序,这是本书的第三章。第一章介绍了微服务架构模式,将其与单体架构模式进行对比,并讨论了使用微服务的优点与缺点。第二章描述...

402
来自专栏祝威廉

Spark Streaming 妙用之实现工作流调度器

其他的都是基础设施。按照Transfomer架构的设计理念,我们应该可以找到一个Estimator ,作为我们的基础设施,我们只要关注上面两点即可,不需要为部署...

491
来自专栏H2Cloud

ffrpc相关文章列表

ffrpc 是异步c++通信库。可以说是传统rpc模式和zeromq模式的一个结合,采用broker模式封装client和server之间的拓扑关系,而clie...

2574
来自专栏pydata

python optimization

首先使用cprofile分析单进程,单线程环境中的性能差的部分,进行算法改写和优化,必要情况下可以通过cpython嵌入c/c++代码。 判断程序为io-b...

662
来自专栏性能与架构

realtime 库和框架概览

Websocket 库 现在大部分新版浏览器、Android、IOS 都已经支持了 Websocket,直接使用 Websocket 问题不大,那么 Webso...

3327
来自专栏https://www.cnblogs.com/L

【Storm篇】--Storm 容错机制

Nimbus 资源调度 任务分配 接收jar包 Supervisor 接收nimbus分配的任务 启动、停止自己管理的worker进程(当前superviso...

674
来自专栏微服务生态

关于缓存和数据库强一致的可行方案

我们在日常工作中经常会遇到要求缓存和数据库强一致性的问题,我们平常的做法是,确保数据库插入成功,然后再更新缓存,但有时候数据库插入成功后,缓存出现问题或者缓存系...

735
来自专栏Netkiller

PHP高级编程之消息队列

PHP高级编程之消息队列 摘要 2015-10-19 第一版 2016-11-31 第二版 目录 1. 什么是消息队列 2. 为什么使用消息队列 3. 什么场合...

3284
来自专栏北京马哥教育

三分钟看懂Nginx服务器的缓存原理和机制

作者:LifeIsButA_Span 来源: http://blog.csdn.net/lifeisbuta_span/article/details/7059...

3087
来自专栏aoho求索

微服务网关netflix-zuul

引言:前面一个系列文章介绍了认证鉴权与API权限控制在微服务架构中的设计与实现 ,好多同学询问有没有完整的demo项目,笔者回答肯定有的。由于之前系列文章侧重讲...

4639

扫码关注云+社区