msec 分布式后台服务引擎开源项目

我要开发同款
匿名用户2016年09月21日
35阅读
开发技术Java
所属分类程序开发、服务框架/平台
授权协议GGPL

作品详情

毫秒服务引擎(msec,取英文名MassServiceEngineinCluster的首字母组合)是腾讯的一个开源框架,适用于在廉价机器组成的集群上开发和运营分布式后台服务。毫秒服务引擎集RPC、名字发现服务、负载均衡、业务监控、灰度发布、容量管理、日志管理、key-value存储于一体,目的是提高开发与运营的效率和质量。 

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

应用场景

webconsole:整个系统的运营管理中心。主要是:①LB是名字发现服务和负载均衡。②remote_shell是远程文件传输与远程命令执行服务。③tomcat提供web管理界面,管理的数据保存在mysql里。

业务运营服务器:部署开发框架和业务逻辑代码,处理业务请求。

log服务器:提供业务log的存储和查询服务。Log存储在mysql表里。

monitor服务器:提供业务上报信息的存储和查询服务。业务上报信息存储在内存里,推荐内存8G~16G。定时dump到磁盘的方式防止数据掉电丢失。

key-value存储服务:相对整个框架比较独立,按需选用。

典型用户群体

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

10年的海量服务开发运营经验和教训使得我们深刻的认识到:

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

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

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

特点与优势

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

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

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

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

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

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

介绍内容来自 聊聊架构

声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论