我们开始扩容前端机集群,此次服务中断给大量应用造成了严重影响

摘要Smack是著名的开源XMPP客户端库,另一个开源IM全功能客户端Spark就是基于此库编写的,2016年4月15日Smack正式发由了4.1.7版。前言Smack是著名的开源XMPP客户端库,另一个开源IM全功能客户端Spark就是基于此库编写的(Spark或其修改版被众多国内中小企业作为内部沟通工具),2016年4月15日Smack正式发由了4.1.7版,此版为小幅更新版。更新内容Bug[SMACK-712]

摘要即时通讯云 LeanCloud
3月29日因少量大用户量应用的高在线量而发生了连锁服务故障,这个问题相信不是第1次发生,也不会是最后一次。对于即时通讯云服务商来说,要想在成本和服务质量上达成平衡,暂期内只能是个梦。2016
年 3 月 29 日晚间,LeanCloud
平台上的多个应用进行了推广活动,激增的访问量给我们的数据存储和实时通信服务带来了较大压力。从
20:50 至 22:15 有多次流量高峰出现,我们多台 Web
服务器的网络吞吐包超过虚拟机的能力极限,内外网通信中断,从而导致 HTTP
服务多次出现间歇性故障(数据存储 API
以及依赖于它的服务也都间歇性不可用)。具体情况汇报如下:故障时间20:53 –
21:03(持续约 10 分钟)数据存储 API 服务约 50% 的请求超时。21:17 –
21:40(持续约 23 分钟)数据存储 API 服务约 50% 的请求超时。22:00 –
22:15(持续约 15 分钟)数据存储 API 服务约 12.5%
的请求超时。故障总共持续约 48
分钟。影响范围本次故障只影响中国节点,美国节点的所有服务均工作正常。在故障期间凡是向
LeanCloud
平台发送过请求,并使用了数据存储服务的活跃应用都受到了影响;我们的统计服务也在短时间内无法正常接收来自应用的事件上报。事故过程20:52:内部监控系统报警,显示多个
Web
服务器节点出现故障。我们立刻上线进行紧急处理,在排除后端服务问题之后,开始追查前端资源和带宽配额。21:03:由于部分应用流量回落,同时也由于我们临时大幅增加了出口带宽,服务暂时恢复正常。21:05:我们开始扩容前端机集群,以应对接下来可能再次出现的流量高峰。21:17:前端机扩容时碰到了虚拟机
OS
故障以及网络环境问题,未能及时完成。此时恰好部分应用又迎来一次流量高峰,前端机再次吃紧。21:30:修复过程将近半小时,于是我们启动了公告和通知流程,在微博和用户群里发出通告。21:40:流量自然回落,前端机再次恢复正常,我们的平台开始正常处理
API
请求。22:00:线上部分前端机出现物理故障,我们又开始对它们进行紧急处理,期间有大约
1/8 的 API
请求丢失。22:15:新的前端机节点经过手动处理后终于达到可用状态,并加入集群,完成了扩容,至此全部服务彻底被恢复。后续改进措施增加新的监控措施,对前端机网络入包量进行监控,防止网络转发量超过
VM 能力限制。调整前端机 VM
配置,使用高包量机型,增大前端机的处理能力。改进前端机扩容方式,使用
docker
镜像来加快新节点部署上线的进度。公告流程中增加短信通知渠道,确保信息及时通知到开发者。

摘要即时通讯云 LeanCloud 4月5日因DDoS攻击致即时通讯服务全面瘫痪,混合型
DDoS 攻击从2016 年 4 月 5 日 20:19
开始,历时约一小时。此次服务中断给大量应用造成了严重影响。2016 年 4 月 5
日 20:19 开始,即时通讯云服务商 LeanCloud 的api.leancloud.cn
域名受到混合型 DDoS 攻击,致使用户无法从外网访问中国节点 API
服务,造成数据存储、统计、推送、短信等服务全部访问中断,历时约一小时。此次服务中断给大量应用造成了严重影响。故障时间20:19
~ 21:25(持续约 66
分钟)影响范围中国节点的数据存储、统计、推送、短信等服务不可访问。美国节点的所有服务未受影响。事故过程20:19:针对
api.leancloud.cn 的攻击开始出现,监控系统告警。20:22:api.leancloud.cn
对应的外网 IP 逐一被攻击,数据存储 API
基本不可访问。20:40:我们在上游服务商的协助下开始接入高防,对流量进行清洗。21:19:攻击流量明显减少,服务开始恢复。因为
DNS
缓存更新会有几分钟的滞后,终端用户的访问恢复可能也会经历这个时间差。21:25:从LeanCloud统计数据来看,API
请求量回到正常水平,服务完全恢复。LeanCloud承诺的改进措施本次攻击的目标是LeanCloud的
API
主域名,并且发生在傍晚的流量高峰时段,致使大量应用受到影响。为了避免此类问题再次发生,LeanCloud决定进行如下改进:完善应对
DDoS 攻击的策略和措施,进一步减少受攻击时域名恢复需要的时间;API
服务对外增加多路备选域名,且让应用之间的访问能够隔离,避免一个域名受攻击而影响所有应用,保证
SDK 请求不会中断;拆分 LeanCloud 主站与 api.leancloud.cn 对应的外网
IP,保证故障时主站依然能够打开并展示相关提示信息。

  • XMPPTCPConnection’s setEnabledSSL(Protocols|Ciphers) has no
    effect[SMACK-716] – EntityTimeManager.getTime() does not set the
    recipients JID[SMACK-719] – XMPPError should use Locale.US in
    toUpperCase()Improvement[SMACK-715] – Add
    Roster.setRosterLoadedAtLoginDefault(boolean)官方更新公告详见:

相关文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注

*
*
Website