随笔分类 -  微服务

摘要:问题的关键在跨域 1.我们在services里面 添加跨域内容如下: 2.在中间件中添加跨域内容 注意如果项目没有用ocelot 直接是请求webapi 我们上述内容写在webapi的startup文件中 如果项目使用了ocelot 那么我们的上述内容只需要写在ocelot项目中 3.跨域请求 ge 阅读全文
posted @ 2018-09-14 17:48 当年在远方 阅读(3202) 评论(0) 推荐(0)
摘要:1首先创建一个json的配置文件,文件名随便取,我取Ocelot.json 这个配置文件有两种配置方式,第一种,手动填写 服务所在的ip和端口;第二种,用Consul进行服务发现 第一种如下: 第二种如下: 2.接下来我们要安装Ocelot install-package Ocelot 3.安装完毕 阅读全文
posted @ 2018-08-31 14:43 当年在远方 阅读(2855) 评论(3) 推荐(2)
摘要:1.必须要安装RestTemplateCore包 2.请求服务,必须要知道 a Consul服务器的地址;b 请求的服务名 ;c 具体请求的api接口 利用RestTemplateCore简化调用Consul中的服务代码如下: 实现对Product服务的查询 阅读全文
posted @ 2018-07-10 19:40 当年在远方 阅读(743) 评论(0) 推荐(0)
摘要:一下演示为在一个控制台中请求服务,请求思路: 1.先在控制台中安装Consul的包。 2.创建一个Consul的客户端对象,指向Consul服务器,读取服务器中所有的服务信息 3.筛选服务信息,找到我们需要的服务信息集合,用随机方法获取一个服务信息,得到服务的uri,然后拼接我们要的接口(即加上ap 阅读全文
posted @ 2018-07-06 19:47 当年在远方 阅读(144) 评论(0) 推荐(0)
摘要:1.先进入Consul.exe目录 打开cmd 执行 consul agent -dev命令 此时访问 :localhost:8500/ 效果如下图: 确保我们在新增注册consul代码后的项目被重新生成,进入项目debug文件夹 cmd 执行一下命令启动项目 有一个小技巧:别忘了在此cmd可以用t 阅读全文
posted @ 2018-07-06 17:01 当年在远方 阅读(147) 评论(0) 推荐(0)
摘要:铺垫,创建健康检查方法,Consul服务器隔一段时间请求一下webapi里的一个方法,如果这个方法没有问题,则证明这个webapi还在正常工作,这个webapi提供的服务就存在。如果方法没有返回,或者返回错误,那么服务就没有了,就应该把服务从Consul中注销。 在此,将被请求用以验证webapi是 阅读全文
posted @ 2018-07-05 19:50 当年在远方 阅读(457) 评论(0) 推荐(0)
摘要:启动项目的时候 在控制台用dotnet MsgService.dll的方式启动。 在program.cs文件下做如下修改: 实现在控制台 自定义ip和端口,修改之后有将项目重新生成,在控制台启动项目,在postman请求如下图: 阅读全文
posted @ 2018-07-05 16:46 当年在远方 阅读(157) 评论(0) 推荐(0)
摘要:1 没有返回值的降级 2有返回值的降级 阅读全文
posted @ 2018-07-02 17:16 当年在远方 阅读(299) 评论(0) 推荐(0)
摘要:发生异常、超时等是不可避免的,当发生这些情况,有一下策略: 1.降级 降级的时候根据是否有返回值有两种清空 2.重试 试一次,试多次,无限尝试,对应有很多重载 3.熔断 如果重试多次都抛出异常,就在一段时间里面不执行Excute直接抛出异常,过了时间再Excute还是异常的话,再进入熔断状态,如果已 阅读全文
posted @ 2018-07-02 17:12 当年在远方 阅读(182) 评论(0) 推荐(0)
摘要:Consul英文意思是大使馆。 Consul主要干3件事情: 1.提供服务到ip地址的注册。 2.提供服务到ip地址列表的查询。 3.对提供服务方的健康检查。 Consul官网 :https://www.consul.io ;Consul的下载地址:https://www.consul.io/dow 阅读全文
posted @ 2018-06-29 22:21 当年在远方 阅读(280) 评论(0) 推荐(0)
摘要:问题的起源:启动一个.netCore项目,默认使用的是5000端口,当我们有很多个项目的时候(集群),不可能都使用5000端口。 方法1:set ASPNETCORE_URLS=http://127.0.0.1:8080 但是这种方法 想在程序总读取端口比较难。 方法2: 引子:在api项目的pro 阅读全文
posted @ 2018-06-23 00:26 当年在远方 阅读(508) 评论(0) 推荐(0)
摘要:1.要让vs2017能够选择.net core 2.1版本,只需要安装.net core2.1的sdk安装包就行了 官方地址:https://www.microsoft.com/net/learn/get-started/windows 还有一个.netcore各个版本都有的github地址:htt 阅读全文
posted @ 2018-06-20 21:24 当年在远方 阅读(187) 评论(0) 推荐(0)