高性能分布式框架 Shuttler.Net
Shuttler.Net是一个高性能分布式框架,如果你在使用老去的remoting,webservices分布式架构,或在使用新生的wcf,那么你也可以尝试下Shuttler.Net。
如果你想开发自己的IM服务端和客户端,你也可以使用Shuttler.Net,只需你制定报文协议即可,其他传输层Shuttler帮你搞定。
主要功能点包括:
1, 分布式RPC,目前支持Tcp和Http(类REST风格)双通道(见Demo:TcpRpcTest和HttpRpcTest):可以多个 RpcServer端和多个RpcClient端,其中client通过HashingAlgorithm根据Key计算出server。
2,分布式缓存系统(Memcached),包括MemcachedServer和MemcachedClient(见Demo:MemcachedTest):
可以多个MemcachedServer端和多个MemcachedClient端,其中client通过HashingAlgorithm根据Key计算出server。
3,IM协议栈,使用Shuttler.Net的Artery组件可以轻松实现一个IMServer端和IMClient端(见Demo:IMTest):
IMTest中实现IM的登录密码校验,通讯协议自己定义即可,协议Demo见ShuttlerArteryProtocol。
其中Shuttler.Net使用内存Pool概念和Socket增强SocketAsyncEventArgs,使你的所有操作Buffer始终在一块固定的内存区中进行,避免了内存泄漏问题。
Shuttler.Net核心组件Artery和Rpc结构图:
RPC性能计数器: