Hprose 3.0 for .NET 采用模塊化設(shè)計(jì)。目前共分 7 個(gè)包,它們分別是:
- Hprose.IO
- Hprose.RPC
- Hprose.RPC.Plugins
- Hprose.RPC.Codec.JSONRPC
- Hprose.RPC.Owin
- Hprose.RPC.AspNet
- Hprose.RPC.AspNetCore
Hprose.IO 是 Hprose 的序列化和反序列化庫(kù)。支持:
- .NET Framework 3.5 - 4.7.2
- .NET Framework Client Profile 3.5 - 4.0
- .NET Core 2.0 - 2.2
- .NET Compact Framework 3.5
- .NET Standard 2.0
Hprose.RPC 是 Hprose RPC 的核心庫(kù),提供了 Hprose RPC 的 Http、WebSocket、Tcp、Udp 的服務(wù)器和客戶(hù)端的實(shí)現(xiàn)。跟 Hprose.IO 相比,該模塊除了不支持 .NET Framework 3.5 和 .NET Framework Client Profile 3.5 以外,其它支持的 .NET 環(huán)境與 Hprose.IO 相同。特別要強(qiáng)調(diào)的是,Hprose.RPC 是支持 .NET Compact Framework 3.5 的,但是在 .NET Compact Framework 3.5 下,不支持 Http、WebSocket 服務(wù)器和 WebSocket 客戶(hù)端,僅支持 Tcp、Udp 服務(wù)器和 Http、Tcp、Udp 客戶(hù)端。另外,在 .NET Framework 4.0 環(huán)境下,也不支持 WebSocket 服務(wù)器和客戶(hù)端。
Hprose.RPC.Plugins 是 Hprose RPC 的插件庫(kù),提供了 Hprose RPC 的一些現(xiàn)成的通用插件。其中包括負(fù)載均衡插件,集群容錯(cuò)插件,熔斷降級(jí)插件,限流插件,推送插件,反向調(diào)用插件,單向調(diào)用插件和日志插件。其支持的 .NET 環(huán)境與 Hprose.RPC 相同。
Hprose.RPC.Codec.JSONRPC 是 Hprose RPC 的 JSONRPC 編碼庫(kù),通過(guò)它,可以讓 Hprose 服務(wù)器和客戶(hù)端變身為 JSONRPC 2.0 的服務(wù)器和客戶(hù)端,而且對(duì)于服務(wù)器來(lái)說(shuō),可以同時(shí)提供 JSONRPC 2.0 服務(wù)和 Hprose 3.0 服務(wù)。其支持的 .NET 環(huán)境與 Hprose.RPC 相同。
Hprose.RPC.Owin 是 Hprose RPC 在 Owin 上的服務(wù)模塊。如果需要在支持 Owin 的 .NET 服務(wù)器上發(fā)布 Hprose 服務(wù),可以使用該庫(kù)。因?yàn)?Owin 是基于 Http 的 Web 服務(wù),而 .NET Compact Framework 3.5 環(huán)境并沒(méi)有提供 Http 服務(wù),因此該模塊不支持 .NET Compact Framework 3.5 環(huán)境下使用,除此之外,其支持的環(huán)境與 Hprose.RPC 相同。
Hprose.RPC.AspNet 是 Hprose RPC 在 ASP.NET 上的服務(wù)模塊。因?yàn)?ASP.NET 僅支持 .NET Framework 環(huán)境,不支持 .NET Framework Client Profile、.NET Core 和 .NET Compact Framework 環(huán)境。因此該模塊僅支持在 .NET Framework 環(huán)境下使用。
Hprose.RPC.AspNetCore 是 Hprose RPC 在 ASP.NET Core 上的服務(wù)模塊。因?yàn)?ASP.NET Core 僅支持 .NET Core,因此該模塊也僅支持在 .NET Core 下使用。
Hprose 3.0 for .NET 支持的操作系統(tǒng)有:
- Windows XP - Windows 10 ( .NET Standard, .NET Core, .NET Framework )
- Linux ( .NET Standard, .NET Core )
- Mac OS X ( .NET Standard, .NET Core )
- iOS ( .NET Standard )
- TvOS ( .NET Standard )
- WatchOS ( .NET Standard )
- Android ( .NET Standard )
- Windows CE ( .NET Compact Framework )
也就是說(shuō),Hprose 3.0 for .NET 支持目前 .NET 支持的所有主流的操作系統(tǒng)和平臺(tái)。
因?yàn)?SliverLight 和 Windows Phone 已死,所以 Hprose 3.0 for .NET 不再提供對(duì)它們的支持。