分布式后台服务引擎 msec

分布式后台服务引擎 msec

BSD
Java C/C++ 查看源码»
跨平台
腾讯
2016-09-21
红薯

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

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

应用场景

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

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

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

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

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

典型用户群体

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

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

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

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

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

特点与优势

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

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

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

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

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

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

介绍内容来自 聊聊架构

的码云指数为
超过 的项目
加载中

评论(2)

finersoft
finersoft
这个图画得真的很朴素 #msec#
铂金冬瓜
铂金冬瓜
#msec#

腾讯毫秒服务引擎 MSEC 于 12 月 2 日正式开源

毫秒服务引擎(MSEC, Mass Service Engine in Cluste)是腾讯的一个开源框架,适用于在廉价机器组成的集群上开发和运营分布式后台服务。该项目集RPC、名字发现服务、负载均衡、业务监控、灰度...

2016/12/02 08:54

没有更多内容

加载失败,请刷新页面

没有更多内容

3
回答
额,红薯开源的链接呢

红薯,没看到开源的连接啊!!

2016/09/21 09:47

没有更多内容

加载失败,请刷新页面

没有更多内容

见识Erlang网络IO能力

顿悟,之前浪费了大把光阴。。痛惜! 决定落户到oschina了,支持开源。先贴上CSDN已发表过的。 测试目的:比较c,c++,node.js,erlang网络TCP读写性能 测试环境:linux 测试条件:Server为简单...

2011/11/03 18:06
4.9K
0
sleep 函数

应用程序: #include usleep(n) //n 微秒 Sleep(n)//n毫秒 sleep(n)//n秒 驱动程序: #include<linux/delay.h>mdelay(n) //milliseconds 其实现 #ifdef notdef #define mdelay(n) ( {uns...

2014/11/23 09:36
24
0
IEC61850报告时标

IEC61850报告时间戳在MMS中被映射为Binary-Time(BTIME)类型,该类型的值包含4个或6个8位位组,分别简称为BTIME4和BTIME6 BTIME6类型时间戳由天数days和毫秒数msec两部分组成,其中days表示当...

2013/07/02 19:12
293
0
腾讯云、阿里云windows环境和linux环境php性能评测

一直用着阿里云的windows环境做服务器,主要是感觉操作习惯,同时也一直感觉运行速度不会差别太大,那天闲着看了看腾讯云,发现很便宜,买来一个玩玩,同时用来测试一下性能对比。 测试用的p...

2018/07/23 16:28
24
0
nginx使用时间戳+rewrite实现请求动态调度

要实现一个随时间周期动态调度请求的功能,简单查了下都说内置变量没有时间戳,$time_local变量因为格式问题用起来不方便,都推荐用tengine了。又仔细看了下,发现是有一个$msec时间戳的,结...

2016/02/25 16:43
287
1
PHP计算页面执行时间

首先在脚本的第一行记录时间 $t1=microtime(true);//计时开始 然后在脚本结束的时候添加 $t2=microtime(true); ///计时结束 $elapsed_time=round(($t2-$t1),4); 保留4位小数 如果t1,t2不在一...

2013/11/09 12:19
148
0
nginx源码分析——定时器

nginx源码学习(版本1.10.0)

2016/10/31 16:29
199
0
PHP函数microtime()

定义和用法 PHP函数microtime()返回当前 Unix 时间戳和微秒数。 PHP函数microtime()语法 microtime(get_as_float) PHP函数microtime()参数与描述 get_as_float 如果给出了 get_as_float 参数...

2013/12/02 17:23
119
0
PHP time(), microtime(),date()函数

1、time()函数 a)作用:返回当前的unix时间戳,数值是自Unix纪元(00:00:00 January 1, 1970 GMT)起到现在的秒数; b)例子说明: <?php echo time(); ?> 2、microtime()函数 a)作用:返...

2015/02/04 11:39
63
0

没有更多内容

加载失败,请刷新页面

返回顶部
顶部