接口服务规划的个人想法

遇到的问题:

  1. 过去一年事故频发
  2. 事故恢复时间过长
  3. 对事故现场没有很好的取证,不便于日后的分析
  4. 架构模块在使用的时候没有实质性对产生影响做分析,带有盲目性

解决方案的个人想法:

  1. 容灾:
    1. 关键参数
      1. NRO - 网络恢复目标(灾难后的网络恢复时间)
      2. RPO - 恢复点目标 (灾难前最后一次备份的时间,数据丢失)
      3. RTO - 时间恢复目标 (灾难后恢复物理系统环境的时间)
      4. RAP - 访问恢复目标(验证应用功能是否正常运行的时间)
  2. 保存现场
  3. 故障转移
  4. 事故恢复
  5. 逻辑优化

重构,借用工具。上线必须保证:httpunit功能测试,LoadRunner负载测试通过。

  1. 性能优化
  2. 后期优化

利用大数据分析,将业务问题转化为大数据问题。日志分析,监控异常,逻辑优化,响应时长分析,并发分析,数据恢复,保存现场数据,提供可持续改进的数据基础。

提供数据的频率:

  1. 流量异常:必须实时或近实时的进行
  2. 战略性业务业务决策的趋势分析:分析可采用批量模式
  3. 数据采集(后续)

反正我的blog除了乐视同事也没有别人看,不涉及信息安全。把接口架构图放在这里,以后好找:

不是我画的图果然就看起来高端大气上档次[汗]。性能优化是我的日常工作,可以慢慢来。如果遇到什么闹心的线上事故,建议看看

《打错一个字母-瘫痪半个互联网    亚马逊AWS的云存储服务S3超高错误率宕机事件》

《google.com宕机一小时》

《gitlab程序猿用一条错误命令误删了整个数据库》

心情会好很多!

今天开会确定的方案,这里备忘一下:

1 从上面架构图中可以看出安外联通的cbase只是做了一个冷备,会面临网络抖动的问题;马驹桥电信一旦故障,需要手动切换。冷备的机器虽然是正常写入的,但是数据没有经过检验,切换后的数据一致性隐患问题;跨机房的性能问题。所以我们决定改成联通和电信做一个物理隔离。这样做需要解决的问题:swiftq给联通和电信发消息,两端接受和处理消息的时机不一样,但是只有两段都更新成功后才能给各端发通知消息的更新,涉及到策略的问题。一旦一边更新失败,需要有补偿机制,补偿的策略问题。部署的复杂性提高,合理部署的问题。

2 memcache的mget在数据量大时性能急剧下降的问题。性能急剧下降时占用连接导致阻塞的问题。测试时需要注意key的数量以及value大小的双重变化影响。

3 cbase读写分离的问题

另外,我们是基础服务部门,应该可以不使用http协议来调用

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

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏编程直播室

编程直播室第二期:CadLib 授权机制研究与实现注意

2638
来自专栏phodal

使用 adr 轻松创建 “程序员友好” 的轻量级文档

是的,我又写了一个 markdown 工具,它对我来说非常有用。 上下文 在一周里,我看到了一个名为 “轻量级架构决策记录” 的技术实践。在看到了一个简单的示例...

23910
来自专栏华章科技

(内含源代码)我用爬虫一天时间“偷了”知乎一百万用户,只为证明PHP是世界上最好的语言

看了不少朋友圈里推荐的Python爬虫文章,都觉得太小儿科,处理内容本来就是PHP的强项,Python唯一的好处估计也就天生的Linux自带,和Perl一样,这...

1653
来自专栏phodal

如何看待 GitHub 上许多笔记、面经等获得过多的 star?

文章来源于,我在知乎相关话题上的回答。问题大意是:SQLite 和 SQLAlchemy 项目的 Star 比许多学习笔记、面经还要少。

1151
来自专栏MongoDB中文社区

为什么MongoDB适合深度学习?

当您正在考虑为新的深度学习项目选择何种数据库时,您可以访问这个链接所对应的帖子(https://www.mongodb.com/blog/post/deep-l...

2251
来自专栏向治洪

OtterTune来了,DBA怎么办

概述 最近几年,特别是随着云计算的发展,出现了行业向后重叠和推动的情况。数据库龙头企业Oracle最近几年重点转而向云的变革,它全力以赴在做的一件事情就是把所有...

2696
来自专栏java一日一条

支撑 Java NIO 与 NodeJS 的底层技术

众所周知在近几个版本的Java中增加了一些对Java NIO、NIO2的支持,与此同时NodeJS技术栈中最为人称道的优势之一就是其高性能IO,那么我们今天要讨...

862
来自专栏杨建荣的学习笔记

MySQL分布式管理初步设计

中间件方案对于业务的使用相对是透明的,而且扩展性相对较好,这里说较好,是基于良好的架构设计,对于弹性伸缩的支持还是有限的。

982
来自专栏廖念波的专栏

谈谈 KV 存储集群的设计要点

不同于无数据的逻辑层框架,KV 存储系统的架构设计会更复杂、运维工作更繁琐、运营过程中可能出现的状况更多、bug 收敛时间会更长。一句话:团队自己做一个 KV ...

2.2K0
来自专栏FreeBuf

应用安全思维系列之一:如何保护密码才安全

【本文背景】 近几年,国内一些企业的后台用户信息被黑客公布,相信大家都有耳闻,这只是公布了的,没公布的呢?还有多少,你想想诸多中国互联网企业保存了多少用户的数...

1885

扫码关注云+社区

领取腾讯云代金券