码迷,mamicode.com
首页 > 其他好文 > 详细

surging 微服务引擎 1.0 正式发布

时间:2019-01-01 14:51:25      阅读:244      评论:0      收藏:0      [点我收藏+]

标签:target   mapping   随机   水平   访问   开源   组件   维护   完成   

surging 是一个分布式微服务引擎,提供高性能RPC远程服务调用,服务引擎支持http、TCP、WS、Mqtt协议,采用Zookeeper、Consul作为surging服务的注册中心,集成了哈希一致性,随机,轮询、压力最小优先作为负载均衡的算法,底层协议集成采用的组件是dotnetty、websocket-sharpKestrel。支持通过docker hub 部署服务引擎,也可以通过nuget 引用组件的方式自定义服务引擎。

surging 已完成了生成环境的稳定部署,支持超过千台机器服务的水平扩展,可以支持超过1000个的serviceroutes部署,可以支持单台30000个物联网设备,平均单次访问性能可以达到0.11ms(机器的不同,所验证的结果不同,升级.netcore 2.2 使用分层编译性能会更高)

以上数据是通过本人测试,还有一些是通过别人的提供的数据获得。基本上数据都是来自于8核16G的服务器,下面我们来看看如何从各个渠道去构建surging 服务引擎

 

构建服务引擎

 

一、通过开源源码进行构建

 

有部分人员通过引用源码进行开发,可能是这样更容易调试,或者是实时同步surging, surging 是MIT协议,可以随便捣鼓,开源地址如下:

https://github.com/dotnetcore/surging

二、通过docker hub 进行构建部署

首先如果是自定义服务引擎,可以把镜像引擎上传到docker hub 镜像库,然后可以根据镜像库做服务编排,以下是所有上传的surging 镜像

技术分享图片

也可以通过以下方式获取官方的服务引擎

通过以下命令进行构建

docker pull serviceengine/surging:v1.0

通过以下命令进行运行

#docker run --name surgingserver_v1.0 --env Mapping_ip=192.168.249.162 --env Mapping_Port=198 --env RootPath=/home/fanly --env
Register_Conn=192.168.249.162:8500 --env EventBusConnection=172.17.0.4 --env Surging_Server_IP=0.0.0.0 -v /home/fanly:/home/fanly -it -p 198:198 serviceengine/surging:v1.0
如下图所示
技术分享图片

三、通过nuget 进行构建部署

 

可以通过nuget 包安装相关组件,如下图

 

 

技术分享图片

四、通过rancher 进行管理和服务编排

如下图所示

技术分享图片

技术分享图片

未来展望

对于surging迄今为止所取得的进展感到非常兴奋,有部分已经使用surging用在了生产环境,并且对于surging的性能非常满意,对于surging未来的规划是维护现有的组件,并且扩展其它常用的协议,比如RTP、RTSP、RTMP ,还有就是做管理中心,包括了发布管理,配置管理,监控中心,异常通知,组件应用中心等功能,这里也感谢大家对于surging 的贡献与支持,也期待大家共同一起完善surging ,一起支持.net core 的生态。

 

surging 微服务引擎 1.0 正式发布

标签:target   mapping   随机   水平   访问   开源   组件   维护   完成   

原文地址:https://www.cnblogs.com/fanliang11/p/10204636.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!