云计算之路-阿里云上:愚人节被阿里云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 ...
随机推荐
- hive自定义UDTF函数叉分函数
hive自定义UDTF函数叉分函数 1.介绍 从聚合体日志中需要拆解出来各子日志数据,然后单独插入到各日志子表中.通过表生成函数完成这一过程. 2.定义ForkLogUDTF 2.1 HiveUtil ...
- js获取及判断键盘按键的方法
这篇文章主要介绍了js获取及判断键盘按键的方法,涉及JavaScript键盘事件的获取及键值的判定技巧,具有一定参考借鉴价值,需要的朋友可以参考下 本文实例讲述了js获取及判断键盘按键的方法.分享 ...
- Cmake 01
1. sdsf(single direction single file) 1.1 The directory tree /* ./template | +--- build | +---main. ...
- Selenium入门系列2 窗口大小控制
selenium控制窗口最大化.适合手机的宽度.适合pad的宽度等尝试下实例,网站是否做了响应式布局 #coding=utf-8 # 改变浏览器窗口大小.前进后退 from selenium impo ...
- httpclient 中post请求重定向
背景:使用httpclient 的post请求进行登录,需要重定向登录,请求重定向后的地址 在httpclient中post请求不像get请求自己可以重定向,实现方式是 判断post请求返回码是否是3 ...
- POJ-2155 Matrix---二维树状数组+区域更新单点查询
题目链接: https://vjudge.net/problem/POJ-2155 题目大意: 给一个n*n的01矩阵,然后有两种操作(m次)C x1 y1 x2 y2是把这个小矩形内所有数字异或一遍 ...
- linux 内存地址空间管理 mm_struct
http://blog.csdn.net/yusiguyuan/article/details/39520933 Linux对于内存的管理涉及到非常多的方面,这篇文章首先从对进程虚拟地址空间的管理说起 ...
- python 爬糗事百科
糗事百科网站段子爬取,糗事百科是我见过的最简单的网站了!!! #-*-coding:utf8-*- import requests import re import sys reload(sys) s ...
- IIS/IIS Express中遇到的证书问题
上面这幅图大家应该不陌生(觉得陌生的话就不用看下面的内容了,呵呵),再放上中英两段关键字: 根据验证过程,远程证书无效. The remote certificate is invalid accor ...
- 居中未知元素(翻译https://css-tricks.com/centering-in-the-unknown/)
在web开发中,当你遇到居中元素时,知道越多关于元素本身和父级元素的信息,居中做起来就很轻松.但是,当遇到你一点都不知道的元素该怎么办? It's still kinda doable. 不会很难:已 ...