云计算之路-阿里云上:愚人节被阿里云OCS愚
今天是愚人节,而我们却被阿里云OCS愚,很多地方的缓存一直不过期,造成很多页面中的数据一直不更新。这篇博文将向您分享我们这两天遇到的OCS问题。
阿里云OCS(Open Cache Service)是阿里云提供的开放缓存服务,简单来说就是一个巨大的memcached。我们是从2013年12月12日开始使用阿里云OCS的(详见云计算之路-阿里云上:用上了开放缓存服务OCS)。OCS是保证网站性能的最重要的功臣之一,而随着网站访问量的快速增长,OCS更加举足轻重。曾经有一个周末,我们因为清空了OCS实例缓存从而引发Web服务器CPU跑满(详见C#正则表达式引发的CPU跑高问题以及解决方法)。
最近我们在优化代码以充分发挥OCS缓存的作用,尽量在OCS缓存中读取数据(从缓存中读取数据太快了,一般在10ms以内)。上个周末,我们发布了一次更新,准备在周一访问高峰时观察一下效果。结果OCS竟然出问题了。
周一早上9:44-09:46期间,我们感觉网站访问速度有一点不对劲,一看Web服务器日志——大量的缓存读取失败日志。向阿里云提交工单后得知OCS后端有台机器出了问题,造成读取缓存超时。
周一下午13:16-13:31期间,OCS又出现了早上的状况,而且OCS管理控制台显示的监控数据完全不对。继续向阿里云提交工单后获知当时OCS后端在进行紧急升级,进一步得知今天OCS正在进行商业化前的升级(4月3日OCS正式对外售卖,之前处于试用阶段)。
今天,有园友向我们反馈首页右侧的“最新新闻”列表还是昨天的新闻,我们立即意识到OCS又出问题了。“最新新闻”列表用了OCS缓存, 缓存时间是5分钟,正常情况下5分钟后会自动过期,可现在OCS始终不让它过期,所以读取到的始终是旧数据。手工清除这个缓存项后,问题解决。
接着又有园友情反馈“首页候选区”显示的也是昨天的数据,我们一看也是同样的OCS问题。我们进一步检查,发现首页右侧的“48小时阅读排行”、部分网站分类页面、“所有随笔”页面也出现了同样的OCS缓存不过期的问题。后来又有园友反馈,个人博客“我的随笔”列表页面也是同样的问题。
虽然根据key手工清除对应的缓存项,可以解决问题,可是摆着我们前的是一个无解的难题——怎么找出那些应该过期而没有过期的缓存项。唯一的解决方法是清空OCS实例缓存,这又是一个不可行的好方法。前面已经提到过,我们在访问低峰的时候因为清空OCS实例缓存而引发Web服务器CPU跑满,何况今天的访问高峰期呢。
愚人节被愚,通常是一笑而过;而被阿里云OCS愚,却是一脸的无奈——要么是等到访问低峰清空OCS实例缓存,等待下一次被愚;要么等待阿里云帮我们真正地解决这个问题。
SLB(负载均衡)+ECS(虚拟机)+RDS(数据库)+OCS(缓存)这是IaaS服务的4个支柱,而我们却被这4根柱子都撞过。希望我们撞出的不是烂木头,而是钢筋混凝土。
云计算之路-阿里云上:愚人节被阿里云OCS愚的更多相关文章
- 云计算之路-阿里云上:10:28-10:51云盾清洗以及IP切换引发的主站访问故障
大家好,非常抱歉!今天10:28-10:51期间由于阿里云云盾流量清洗,以及切换IP后负载均衡的带宽跑满,影响了主站的正常访问,给您造成了很大的麻烦,请您谅解! 故障的过程是这样的: 10:28,我们 ...
- 阿里云上安装mysql步骤/ 阿里云ECS搭建Java+mysql+tomcat环境
使用阿里云ECS挺长一段时间了.这两天碰巧朋友小白让我一步一步教他在ECS上搭建Java+mysql+tomcat环境,所以把在这里把步骤在这简单整理了一下,以便需要的人查阅. 我购买的阿里云服务器系 ...
- 云计算之路-阿里云上:OCS问题的进展以及11:30-11:50遇到的问题
(上图是今天出问题期间Web服务器性能监控图,紫色表示的是Request Execution Time) 昨天我们发布了一篇博客分享了我们这两天遇到的OCS(开放缓存服务)问题,详见云计算之路-阿里云 ...
- 云计算之路:AWS, Azure, Aliyun, UCloud提供的Windows操作系统
如果您用的是微软平台,如果您准备走上云计算之路,估计您首先关心的是云服务商有没有提供合适的Windows操作系统. 这里把我们知道的知名云服务商提供的Windows操作系统列出来,供大家参考. 1. ...
- 来杭州云栖大会,全面了解企业如何实现云上IT治理
企业上云的现状与趋势 云计算,如今已经成为了像水和电一般关系到国计民生的国家基础设施.云计算为企业带了前所未有的资源交付效率和运维效率的提升,同时也用全新的技术帮助企业在新的价值网络中创造新的商业赛道 ...
- 云上自动化 vs 云上编排
1 摘要 本文介绍了为什么在一个好的公有云或私有云中必须要有一个编排系统来支持云上自动化,以及实现这个编排系统的困难和各家的努力.同时提供了一套实现编排系统的原型,它包括了理论分析及主体插件框架,还给 ...
- 一文读懂云上DevOps能力体系
简介: 阿里云ECS自动化运维套件架构师,深度拆解云上运维能力体系建设:自动化运维等级金字塔.自动化运维的进阶模式.DevOps的基础核心.云上标准化部署三大能力-- 序言 云计算行业已经有十多年的发 ...
- 阿里云产品介绍(三):云数据库RDS
写完云服务器ECS,本来想先写负载均衡的. 因为发现很多客户,都是直接将单台云服务器应用对外提供访问,如果云服务器宕机,应用就会停止服务.云服务器标称有99.95%的可用率,一年下来宕机四个多小时也是 ...
- 在Eclipse里面使用git上传项目到码云
Eclispe上使用git 1.安装git 按照下图的步骤: 安装过就不用再安装了,没有安装的安装一下! 安装完毕之后:需要做一些初始化的设置: 2.上传项目到码云上 1.首先在码云上建立一个项目 2 ...
随机推荐
- C#或Net连接Oracle操作提示 Oracle 客户端 version 8.1.7 或更高版本报错
异常问题 远程连接ORCALE 服务器,而本地未安装任何ORCALE 相关客户端及ODAC .using System.Data.OracleClient;当我们用程序操作Oracle库的时候,OPE ...
- Linux 信号表 signals
Linux支持POSIX reliable signals和POSIX real-time signals. 信号处理 进程接受到信号之后会有一些默认的处理方式,如下为5种处理方式: type des ...
- mysqli:查询数据库中,是否存在数据的三种校验方法
在我们编辑用户登录功能的时候,常常需要对用户输入的信息进行校验,校验的方法就是通过SQL语句进行一个比对,那么我们就需要用到以下三种中的一种进行校验啦 1.使用mysqli_num_rows()校验 ...
- MHA 日常维护命令集
MHA 日常维护命令集 1.查看ssh登陆是否成功 masterha_check_ssh --global_conf=/etc/masterha/masterha_default.conf --con ...
- MVC中某个页面不需要引用母版页的正确写法
有些页面想使用单独的样式不想用母版页的时候,可以在开始声明下,就可以不用母版页的CSS和JS引用了语法如下: @{Layout = "";} . 非常之简单
- ELKB是什么?
ELKB是四个开源软件的缩写,分别表示:Elasticsearch , Logstash, Kibana ,Beats. Elasticsearch是个开源分布式搜索引擎,提供搜集.分析.存储数据三大 ...
- PHP精度问题
PHP 为任意精度数学计算提供了二进制计算器(Binary Calculator),它支持任意大小和精度的数字,以字符串形式描述 bcadd — 加法bccomp — 比较bcdiv — 相除bcmo ...
- P1774 最接近神的人_NOI导刊2010提高(02)
P1774 最接近神的人_NOI导刊2010提高(02) 关于此题为什么可以使用求逆序对的方法来做 假设一个数\(a_i\),且前\(i-1\)个数已经成为单调增的数列. 我们要从前\(a_1\)至\ ...
- Miller rabin
蛤蛤,终于基本上搞懂了 #include<iostream> #include<cstdio> using namespace std; long long num[10]={ ...
- 前端JavaScript之DOM节点操作
1.HTML DOM是啥 Document Object Model:定义了访问和操作HTML文档的标准方法,把HTML文档呈现为带有元素,属性和文本的树状结构 2.解析过程 HTML加载完毕,渲染引 ...