网站改版多久恢复,wordpress tint2.2,高端网站建设青岛,免费网站推广咱们做微服务里一个重要的概念就是服务注册与发现技术#xff0c;当你有一个新的服务运行后#xff0c;我们的服务中心可以感知你#xff0c;然后把加添加到服务列表里#xff0c;然后当你死掉后#xff0c;会从服务中心把你移除#xff0c;而你作为一个服务#xff0c;对其它… 微服务里一个重要的概念就是服务注册与发现技术当你有一个新的服务运行后我们的服务中心可以感知你然后把加添加到服务列表里然后当你死掉后会从服务中心把你移除而你作为一个服务对其它服务公开的只是服务名称而不是最终的服务地址URL这对于云平台容器化架构来说是非常重要的安装单独的Eureka服务server服务注册aspnetcore建立Eureka客户端(client)服务发现实现服务与服务的调用一 安装单独的Eureka服务安装tomcat到apache官网http://tomcat.apache.org下载tomcat下载Eureka可以到http://mvnrepository.com/artifact/com.netflix.eureka/eureka-server选择一下版本下载配置端口默认是8080tomcat\webapps\eureka\WEB-INF\classes\eureka-client.properties重启tomcat服务即可二 aspnetcore建立Eureka客户端(client)nuget添加包包Pivotal.Discovery.Client在startup.cs里添加客户端的自动发现代码相对于eureka是客户端事实上它是微服务里的一种服务program里添加对某个端口的监听将EurekaServer的地址添加到appsettings里启动项目然后去服务中心查看自己的新服务在startup.cs里 public void ConfigureServices(IServiceCollection services){services.AddDiscoveryClient(Configuration);services.AddMvc();} // This method gets called by the runtime. Use this method to configure the HTTP request pipeline.public void Configure(IApplicationBuilder app, IHostingEnvironment env){ if (env.IsDevelopment()){app.UseDeveloperExceptionPage();}app.UseMvc();app.UseDiscoveryClient();} program里添加对某个端口的监听 public static IWebHost BuildWebHost(string[] args) WebHost.CreateDefaultBuilder(args).UseStartupStartup().UseUrls(http://*:8010).Build();将EurekaServer的地址添加到appsettings里其中8010是自己监听的端口Order是自己的名称 spring: { application: { name: Order}}, eureka: { client: { serviceUrl: http://localhost:8080/eureka/V2/, shouldFetchRegistry: false, shouldRegisterWithEureka: true}, instance: { port: 8010}然后启动项目在你的服务中心就可以看到新加的服务了http://localhost:8080/eureka/这就是服务的注册三 服务发现实现服务与服务的调用我们在某个微服务的项目里可以调用其它的服务这类似于一种请求链的过程以后我们讲spring cloud里会说其它相关的技术 [HttpGet] public IEnumerablestring Get(){DiscoveryClient _discoveryClient new DiscoveryClient(new EurekaClientConfig{EurekaServerServiceUrls http://localhost:8080/eureka/V2/,ProxyHost http://localhost:8080/eureka/V2/,ProxyPort 8080,}); //得到服务中心所有服务和它的Url地址foreach (var item in _discoveryClient.Applications.GetRegisteredApplications()) yield return ${item.Name}{item.Instances.FirstOrDefault().HomePageUrl};}页面显示的结果中我们看到了所有的服务它的名称和它的URL这种URL在容器化部署里是动态的所以我们不能像原来那样把它写死了这也就是服务发现产生的原因好了今天对于服务注册与服务发现就说到这里都是比较实干的东西相关文章 手把手教你使用spring clouddotnet core搭建微服务架构服务治理-spring clouddotnet core搭建微服务架构服务发现二原文地址http://www.cnblogs.com/lori/p/7598058.html.NET社区新闻深度好文微信中搜索dotNET跨平台或扫描二维码关注