当前位置 博文首页 > 蜗牛为梦想而生H:02-微服务环境搭建
SpringCloud是 Privotal(开发spring的团队)在2015年发布的一个项目 ,它提供了一些可以让开发者快速构建微服务项目的工具,比如配置管理,服务发现,熔断,路由等等,可以在任何分布式环境下很好的工作。 但是注意:springCLoud 并不是一个全新研发的框架,它只是把一些优秀的解决微服务架构中的优秀开源框架基于SpringCloud的规范进行了整合,采用SpringBoot这个框架再次封装屏蔽掉了复杂的配置 让开发者快递上手,不需要关注底层复杂的配置 只需要简单的配置就能开发微服务项目,所以SpringCloud是一套微服务架构的规范, 而它的实现有很多比如:springCloud netflix,SpringCloud Consoul SpringCloud Alibaba
1.2. springCloud的版本说明
SpringCloud的版本,并不是像其他的Spring框架那样 x.x.x的命名格式 而是采用了伦敦地铁站的名字根据字母表的顺序结合
?
1.3. Boot和Cloud对照关系
?
2. 环境搭建
2.1. 创建父工程
?
2.2. 添加坐标
<!--Springboot的版本管理--> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.2.7.RELEASE</version> <relativePath/> <!-- lookup parent from repository --> </parent> <!--SpringCloud的版本管理--> <dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-dependencies</artifactId> <version>Hoxton.SR5</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement>
2.3. 创建实体工程 ?
2.4. 添加依赖
? <dependencies> ? ? ? ?<dependency> ? ? ? ? ? ?<groupId>org.projectlombok</groupId> ? ? ? ? ? ?<artifactId>lombok</artifactId> ? ? ? ?</dependency> ? ?</dependencies>
2.5. 新建实体类
2.6. 新建Provider工程
?
2.7. 添加依赖
<!--依赖--> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>com.cloud.cn</groupId> <artifactId>cloud-entity</artifactId> <version>1.0-SNAPSHOT</version> </dependency> </dependencies>
2.8. 编写主配置类
?
2.9. 编写controller
?
2.10. 启动测试
2.11. 新建consumer工程
?
2.12. 添加依赖
? ?<dependencies> ? ? ? ?<dependency> ? ? ? ? ? ?<groupId>org.springframework.boot</groupId> ? ? ? ? ? ?<artifactId>spring-boot-starter-web</artifactId> ? ? ? ?</dependency> ? ? ? ?<dependency> ? ? ? ? ? ?<groupId>com.cloud.cn</groupId> ? ? ? ? ? ?<artifactId>cloud-entity</artifactId> ? ? ? ? ? ?<version>1.0-SNAPSHOT</version> ? ? ? ?</dependency> ? ?</dependencies>
2.13. 编写主配置类
?
2.14. 编写Controller
?
2.15. 编写配置文件
?
2.16. 问题描述
cloud-consumer和cloud-provider分别是不同的工程,我们工程之间如何调用呢??
3. RestTemplate的使用
3.1. 注入到容器
?
3.2. 使用远程调用
?
3.3. 启动测试
?
3.4. 问题说明
cs我们采用restTemplate远程调用的方式,实现了跨项目的调用,但是这个调用存在一定的问题 ? ? 问题一: RestTemplate官方文档说明 已经不更新 不支持异步 ? 问题二: RestTemplate远程调用时 URL地址写死了 如果provider的域名端口修改任意一处此时我们要修改源代码,并且如果provider是一个集群的情况下 这样写不优雅
下一篇:没有了
最新 更多<<
蜗牛为梦想而生H:02-微服务环境搭建 蜗牛为梦想而生H:03-注册中心之Eureka 蜗牛为梦想而生H:08-Nacos集群搭建Linux版本 蜗牛为梦想而生H:04-注册中心之Consul 创建一个ASP.NET MVC5项目的实现方法(图文) 蜗牛为梦想而生H:05-注册中心之nacos .NET Core下使用Kafka的方法步骤 .NET Core下使用Log4Net记录日志的方法步骤 蜗牛为梦想而生H:06-负载均衡之Ribbon .NET CORE3.1实现微信小程序发送订阅消息 在.NET中使用DiagnosticSource的方法 蜗牛为梦想而生H:09-熔断器Hystrix ASP.NET Core 实现基本认证的示例代码 深入解读ASP.NET Core身份认证过程实现 Asp.Net Core 企业微信静默授权的实现 手把手教你AspNetCore WebApi认证与授权的方法 手把手教你AspNetCore WebApi数据验证的实现 .NET Core使用FluentEmail发送邮件的示例代码 .Net Core中使用Grpc的方法 UrlRewrite概念原理及使用方法解析 蜗牛为梦想而生H:流量防卫兵sentinel Docker结合.Net Core的初步使用教程 蜗牛为梦想而生H:JAVA8 之 Stream sorted() 示例,排序 .Net Core3.0 配置Configuration的实现 .NET Core3.0创建Worker Services的实现 蜗牛为梦想而生H:SQL加减乘除 .NET Core3.0 日志 logging的实现 蜗牛为梦想而生H:过滤器无法取值RedisTemplate , 为Null解决方 详解ASP.NET Core 反向代理部署知多少 蜗牛为梦想而生H:RedisTemplate.keys() 替换为Scan 扫描指定Key