理想的互联网服务后台框架的九个要点
对于互联网服务后台团队,开发框架的选择是非常关键的一个问题,多年的海量服务经验和教训使得我们团队深刻的认识到:

  • 要尽早规范团队的开发服务框架,避免到了后期,各种开发语言混杂、各类存储组件充斥、重复编码、每个模块形态不统一、文档缺失、监控瘫痪、人员离职造成大量信息丢失,最后积重难返、痛苦不堪。

  • 没有框架来规范,团队的随意性就太大,合作效率就大打折扣,甚至于内耗、反复的挖坑填坑,系统的成败过于依靠人的意识和水平。

  • 规范,不能靠文档、不能靠劳动纪律、不能靠苦口婆心、不能靠人员意识、不能靠运动式的整顿,要靠技术框架上切实的限制与贴心保护。

如果有机会从0开始定义一个理想的开发框架,需要考虑哪些点?我们觉得主要有如下9个方面:

  1. 【同步编码异步执行】兼顾运行效率和编码效率,希望代码写起来是同步和顺序的,而执行的时候是异步的

  2. 【IDL/RPC】支持IDL(接口描述语言)和RPC,减少网络协议相关的重复工作,协议有比较好的扩展性;远程调用友好且高效,做到覆盖主要的开发语言

  3. 【LB】对服务间的调用选路进行统一的管理,对单机故障和网络波动等常见情况有自动容错,我们简称load balance(LB)

  4. 【 存储服务化】这个其实和开发框架关系不太紧密,这里提一下,强调存储应该有统一的组件且由专业的团队运维,就像共有云一样

  5. 【过载保护】框架必须有成熟自带的过载保护机制,不需要业务开发人员关注或者关注很少

  6. 【基础的监控和告警】RPC调用、机器的cpu/网络活动、任务并发度、时延、进程监控和秒起等基础信息,要有上报、统计和告警,不需要业务开发人员关注。

  7. 【完整的业务流转呈现】统一日志,在一个地方能够清晰的呈现某次业务处理过程的流转详细情况:经过了哪些模块间调用,调用参数是怎样的,每个模块处理的重要分支和结果是怎样的,最好图形化呈现。支持染色和不同的日志详细级别

  8. 【中央总控】整个系统的配置和文档等重要信息,例如每个模块有哪些机器,分布在哪些机房、容量冗余情况、模块间调用关系、访问控制的配置动态管理甚至电子流,都希望能统一在一个地方web化的管理起来,并且与运营的系统是直接联系直接生效的

  9. 【云调度】容量的自动调度。例如要进行某个运营活动需要大量的扩容,只需要把设备放进去,就能自动的扩缩容。当某个城市机房故障,能够自动调度容量到其他城市

基于上面的总结,我们团队开源了一个服务开发运营框架,叫做毫秒服务引擎。

毫秒服务引擎(msec, 取英文名Mass Service Engine in Cluster的首字母组合)是腾讯的一个开源框架,集RPC、名字发现服务、负载均衡、业务监控、灰度发布、容量管理、日志管理、key-value存储于一体,目的是提高开发与运营的效率和质量。

毫秒服务引擎的创作冲动和构建经验,来自QQ后台团队超过10年的运营思考。它是一整套解决方案,但也可以拆分的来使用其中的监控、key-value存储单品。

详细可见官网,或在腾讯云服务市场联系我们

典型用户群体

使用毫秒服务引擎,用户可以快速拥有一套具备监控、名字发现服务、负载均衡、灰度发布、配置管理、日志、kv存储等功能的系统化的开发与运营框架,特别适合互联网初创公司。

毫秒服务引擎非常容易搭建和上手,使用它,初学者从零开始开发一个分布式后台demo并运行起来,只需要2个小时。基本上是一个小时完成框架搭建,一个小时完成开发上线。

功能与优势

  1. 模块间访问采用RPC的方式,开发者不用关注网络与报文格式,像写单机程序一样开发分布式服务

  2. 负载自动均衡与容错,对于单机故障、局部网络波动等状况自动应对,服务高可用性

  3. 支持C/C++与java语言,后续还将继续丰富;如果选择C/C++语言,支持协程,兼具开发和运行效率

  4. Web化的管理界面,在web界面完成配置、发布、监控、日志、Key­-value存储集群管理等所有操作

  5. 需要复杂部署的服务器都采用docker镜像的方式安装,使得部署与上手非常容易

  6. 相比使用其他开源组件拼凑起来的解决方案,毫秒服务引擎更加的体系化,对团队的规范更加到位

原文地址: https://www.qcloud.com/community/article/146


.NET社区新闻,深度好文,微信中搜索dotNET跨平台或扫描二维码关注

理想的互联网服务后台框架的九个要点相关推荐

  1. 从程序员到CTO的Java技术路线图 JAVA职业规划 JAVA职业发展路线图 系统后台框架图、前端工程师技能图 B2C电子商务基础系统架构解析...

    http://zz563143188.iteye.com/blog/1877266在技术方面无论我们怎么学习,总感觉需要提升自已不知道自己处于什么水平了.但如果有清晰的指示图供参考还是非常不错的,这样 ...

  2. java职业发展路线图_从程序员到CTO的Java技术路线图 JAVA职业规划 JAVA职业发展路线图 系统后台框架图、前端工程师技能图 B2C电子商务基础系统架构解析...

    http://zz563143188.iteye.com/blog/1877266在技术方面无论我们怎么学习,总感觉需要提升自已不知道自己处于什么水平了.但如果有清晰的指示图供参考还是非常不错的,这样 ...

  3. 图床项目之后台框架设计

    图床项目后台框架 0.后台数据处理框架 一.注册功能 二.登陆功能 三.用户文件列表 3.1.文件数量 3.2.文件列表 四.上传文件之秒传机制 五.上传文件 六.获取共享文件或下载榜 6.1.获取共 ...

  4. Spring3.2.0-mybatis3.2.0 基于全注解搭建的后台框架-基础版

    2019独角兽企业重金招聘Python工程师标准>>> 摘要: Spring3.2.0-mybatis3.2.0 基于全注解搭建的后台框架-基础版 没有什么不可能  之前一直用的是自 ...

  5. 基于ASP.Net Core开发的一套通用后台框架

    基于ASP.Net Core开发一套通用后台框架 写在前面 这是本人在学习的过程中搭建学习的框架,如果对你有所帮助那再好不过.如果您有发现错误,请告知我,我会第一时间修改. 知其然,知其所以然,并非重 ...

  6. layui 刷新页面_layuimini简洁、清爽、易用的layui后台框架模板

    简介 layuimini最简洁.清爽.易用的layui后台框架模板.它基于jquery3.4.1 和 layui2.5.4 实现.整套后台大约有20个页面,满足常用的后台管理,如果有基于jquery ...

  7. PHPCMS后台框架实现思路

    PHPCMS后台框架实现思路[原创] 时间 2014-11-27 10:12:19 极客头条 原文  http://blogs.zmit.cn/3589.html 1.打开后台入口文件admin.ph ...

  8. 关于vue 框架与后台框架的混合使用的尝试

    这几天我在研究前台框架和后台框架融合的问题,进行了一些尝试; 我前台选择的是 vue,当然也可以选择 react 等其他 mvvm 框架,不过 vue 对于我来说是最熟悉的; 后台话,我选择的是 ph ...

  9. PyTorch框架学习九——网络模型的构建

    PyTorch框架学习九--网络模型的构建 一.概述 二.nn.Module 三.模型容器Container 1.nn.Sequential 2.nn.ModuleList 3.nn.ModuleDi ...

最新文章

  1. CSS Grid 网格布局全解析
  2. [No0000151]菜鸟理解.NET Framework中的CLI,CLS,CTS,CLR,FCL,BCL
  3. IDEA连接服务器执行python程序
  4. 火山安卓定义全局变量【博客教学】
  5. Springboot毕设项目基于SpringBoot的个人理财系统ibx9hjava+VUE+Mybatis+Maven+Mysql+sprnig)
  6. 通过图像预处理解决深度学习模型对光照色彩敏感的问题处理
  7. OpenGL 驱动 与 扩展的关系
  8. phpcms v9 站内外搜索代码
  9. 轩小陌的Python笔记-Pandas时间序列与日期
  10. Kafka生产者和消费者
  11. 简单排序算法时间空间复杂度分析及应用(7)-希尔排序
  12. Java 仿 Excel 公式计算
  13. AOP(面向切面)原理及使用
  14. 2022最新微信表白墙小程序源码+美观好看
  15. vm虚拟机网络标志_虚拟机安装win7系统后网络图标黄色标志不能上网如何解决
  16. pipeline设计模式
  17. 40道Java多线程面试真题及答案
  18. 《云原生安全技术规范》解读
  19. Android系统输入法框架
  20. 个人如何办理美国探亲签证?

热门文章

  1. 稍微成型点的用WEBSOCKET实现的实时日志LOG输出
  2. 离开时请告诉自己生意就是生意
  3. 国产知名老牌 PDF 工具正式开源
  4. 【思维导图】新手该怎么学习C#/WPF
  5. EFCore查缺补漏(一):依赖注入
  6. BeetleX之TCP消息通讯Protobuf/TLS
  7. 数据库单表千万行 LIKE 搜索优化手记
  8. Asp.Net Core 中IdentityServer4 实战之角色授权详解
  9. WTM系列视频教程:先导篇
  10. (2)MongoDB副本集自动故障转移原理(含客户端)