lms微服務框架介紹
阿新 • • 發佈:2021-02-20
# lms 框架簡介 Lms是一個旨在通過.net平臺快速構建微服務開發的框架。具有穩定、安全、高效能、易擴充套件、使用方便的特點。lms內部通過[dotnetty](https://github.com/Azure/DotNetty)實現高效能的rpc通訊,使用zookeeper作為服務註冊中心。RPC通訊支援隨機輪詢、雜湊一致性、隨機路由等負載均衡演算法。 您還可以很方便的與[CAP](https://github.com/dotnetcore/CAP)或是[MassTransit](https://github.com/MassTransit/MassTransit)整合,使用事件匯流排進行內部通訊。 ## 開源地址 https://github.com/liuhll/lms 該框架現在還正在開發過程中,如果您也認可該框架,您可以給個star,或是提交pr參與貢獻,如果遇到問題,您也可以通過issues需求幫助。 ## 快速開始 ### LMS框架整合與服務託管 #### 使用通用主機註冊和託管LMS服務 使用LMS框架非常簡單,您只需要使用.net提供的[通用主機](https://docs.microsoft.com/zh-cn/dotnet/core/extensions/generic-host)註冊LMS框架,同時指定啟動的模組,在啟動的模組中,通過`DependsOn`特性依賴必要的元件。 通用主機註冊LMS框架主要用於一般情況下對服務的託管,配置的`token`保證的叢集通訊的安全性,避免使用者直接通過RPC埠訪問叢集內部, (1) 只有請求來源於閘道器,才被認為是合法的請求。叢集外部無法通過rpc埠與主機直接通訊。 (2) 服務內部通訊過程中,同一個叢集只有配置的token一致, 通訊才會被被認為是合法的。 1. 註冊LMS服務 ```csharp public class Program { public static async Task Main(string[] args) { await CreateHostBuilder(args).Build().RunAsync(); } private static IHostBuilder CreateHostBuilder(string[] args) { return Host.CreateDefaultBuilder(args) .RegisterLmsServices