[Investor Relations]  |  官方微博

.NET培训

美国上市公司 · 亿元级外企Java培训企业

  • 全国服务监督电话4008270010
.Net培训 > NET学习笔记 > 5个独特的.Net服务器框架
  • 5个独特的.Net服务器框架

    发布:.Net培训  来源:NET学习笔记  时间: 2016年11月25日

  • 在实际开发工作中,为了方便调用和提高服务治理效率,有时就需要使用服务框架。今天.NET培训机构为大家介绍在.Net开发工作中,5个比较独特的服务框架:...

  • 在实际开发工作中,为了方便调用和提高服务治理效率,有时就需要使用服务框架。今天PPPCloud为大家介绍在.Net开发工作中,5个比较独特的服务框架:

    ✲ ServiceStack

    ✲ Hession

    ✲ Rabbit.Rpc

    ✲ Dyd.BaseService.ServiceCenter

    ✲ Redola.Rpc

    ServiceStack

    有的开发者可能不熟悉ServiceStack,但是它的另外两个组件:ServiceStack.Redis( Redis 访问工具)和ServiceStack.Text(Json序列化工具),想必用过的人就不少了。

    ServiceStack就是一服务框架,可以很方便的用来创建服务,服务是基于http的,另外提供了客户端调用, 数据的序列化方式包含Json , xml , 二进制,Protobuf ,并且创建出来的服务带有一定的描述。

    在http请求中,请求路径和参数都很关键。利用ServiceStack, 参数即对象,即它要传递的参数都封装到一个类里面, 另外在类上打标签,标签内容就是请求路径,这样客户端在调用的时候,反射出请求路径和参数,即可发起调用。

    Hession

    Hession是一个序列化工具,同时也是一个服务框架,提供有多语言的实现,包括.net,这个组件虽然在.Net领域比较冷门,但也有它的亮点久。

    使用Hession的时候,首先需要定义接口,然后一式两份,服务端来实现这些接口, 客户端引用这些接口,然后客户端使用了RealProxxy类做代理, 所有接口调用最终会调用代理的Invoke方法, 在Invoke方法里面获取要调用的方法的名称, 参数等内容,经过序列化发送到服务端一个统一的url上, 这个url会以hession结尾, 所以需要在web.config中配置一个handle来拦截请求, 拦截到请求后,反序列化参数, 然后通过反射发起调用。

    Rabbit.Rpc

    在实施上和Hessin的有很多相似之处,也是先定义服务接口,然后一式两份,服务端通过继承接口来实现具体的逻辑。

    对于客户端,通过反射提取出接口内的所有方法,以及方法参数及返回值信息,然后采取动态生成代码的方式,生成一份代理类,再动态编译,放入到容器中。 生成的代理类,所有方法都是一个统一的实现,即调用一个Invoke方法把方法和参数发给底层,底层组装发送到服务端。

    另外,这个框架同时集成了服务治理,服务注册到Zookeeper, 客户端通过Zoopeeper拿到具体的服务地址进行调用。 这已经不仅仅是一个服务框架,同时包含了服务治理功能。

    Dyd.BaseService.ServiceCenter

    支持Thrift,支持多种服务通信协议(thrift,自定义协议),管理中心发布服务,服务节点自动注册节点信息,支持服务负载均衡,自动移除故障服务节点。提供服务节点Cpu占用,内存占用,线程,调用次数,连接数等相关数据的监控,记录出错日志。

    Redola.Rpc

    一个使用了Actor模型的框架,序列化使用protobuf-net,传输方式是基于tcp , tcp框架使用自配置的Cowboy.WebSockets,实现了服务中心功能。

  • 上一篇:4个重要的.net基本

    下一篇:.NET开发工具之Excel导出公共类

网站导航
2001-2016 达内时代科技集团有限公司 版权所有 京ICP证8000853号-56