栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

什么是微服务

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

什么是微服务

简单说一下我理解的springcloud(微服务)

微服务就是多个服务单独运行
服务之间可以相互调用,
比如我写一个项目,你也写一个项目,
但是我的项目里面去访问你的项目的逻辑了,这是就是微服务吗,不,这不是,
微服务核心是注册中心,就是中介,

平时我们调用其他项目的东西,就是自己构造http请求,端口写死,路径可能用个变量,微服务区别就在这
它是在注册中心有个昵称,就是服务名(一个服务名可能对应多个项目,使用哪个项目的策略就称为负载均衡),然后其他项目只需要向服务中心提供服务名,它就会自动给你匹配你要调用哪个项目,降低了耦合性,这才是微服务。
只不过在微服务里我们写的每个项目的功能单一了。

接下来就说说feign和ribbon
ribbon就是实现负载均衡的,它内部有不同的选择哪个服务的策略,
feign远程调用,我的理解就是构建http请求,只不过是给你封装了构建的过程,让其构建的更符合我们的编码习惯,看着更舒服,用着也舒服。
如下这样,用的时候直接调用方法就行了

@FeignClient("nacos-provider")
public interface FeignTemplate {
    @GetMapping("/getUser/{id}")
    String getUSer(@PathVariable("id") int id);
}

spring也提供了构建http请求的方法RestTemplate,这个构建相对更死板一点,如下这样

restTemplate.getForObject("http://nacos-provider/first/getUser/"+id, String.class);
 //String result = feignTemplate.getUSer(id);这是feign的调用过程
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/683754.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号