Spring Cloud Alibaba入门实战之nacos(一)

前情介绍

​ Spring Cloud Alibaba 是阿里巴巴提供的新一代的微服务解决方案,相信会有越来越多采用微服务架构的公司会将目标投入到Spring Cloud Alibaba 中。

​ Spring Cloud Alibaba 为国人开发,为我们提供了详尽的中文文档,阅读起来并不费劲。故本系列文章不会有太多的理论知识,文章的目的是记录搭建和使用Spring Cloud Alibaba的过程。

相关文档:

Spring Cloud Alibaba github: https://github.com/alibaba/spring-cloud-alibaba

nacos 中文文档: https://nacos.io/zh-cn/

Nacos Discovery Example: https://github.com/alibaba/spring-cloud-alibaba/blob/master/spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/readme-zh.md

1. Nacos 作为服务注册中心

​ 1.1 首先需要到Nacos的release notes 中下载Nacos并进行解压启动,推荐下载目前最新稳定版1.1.4 及Linux 压缩包,因为Nacos是使用Java编写的,故启动环境需要JDK1.8 ,下载并上传后通过tar -zxf nacosxxx 解压后,到nacos的bin目录下执行 sh startup.sh -m standalone 启动单机模式(集群模式后续介绍). 默认端口为8848 (ps:珠穆朗玛峰,Spring Cloud Alibaba nb!)

​ 1.2 接着我们需要创建一个Maven项目作为父工程并引入相关依赖:

<dependencyManagement>
<dependencies>
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-alibaba-dependencies</artifactId>
<version>2.1.0.RELEASE</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-dependencies</artifactId>
<version>2.1.7.RELEASE</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<!-- spring-cloud -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>Greenwich.SR2</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>

​ 这里我们先以创建一个provider项目为例,consumer项目的创建也是同样的道理:

​ 1.3 引入依赖:

<dependencies>
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>

​ 1.4 接着编写配置文件:

spring:
cloud:
nacos:
discovery:
#注册中心地址
server-addr: 192.168.41.133:8848
application:
name: provider

​ 1.5 编写启动类并添加注解

@SpringBootApplication
@EnableDiscoveryClient
public class ProviderApplication { public static void main(String[] args) {
SpringApplication.run(ProviderApplication.class, args);
} @RestController
class EchoController {
@GetMapping(value = "/echo/{string}")
public String echo(@PathVariable String string) {
return string;
}
}
}

三板斧:1. 加依赖 2. 写配置 3. 写注解

接着我们就可以在nacos的管理界面中进行查看了,url: http://ip:8848/nacos ip地址为nacos服务的ip,账号和密码都是nacos

可以看到服务成功注册到了nacos的服务列表中,此时nacos作为注册中心就已经完成了,其他服务要注册也是同样的三板斧。

服务调用

nacos默认继承了Ribbon,此时我们再像创建provider项目一样创建consumer项目,同样的三板斧。

然后再启动类上加上如下代码:

	@Bean
@LoadBalanced
public RestTemplate restTemplate(){
return new RestTemplate();
} @GetMapping("/nacos/rpc/{string}")
public String test(@PathVariable String string) {
string = restTemplate().
getForObject("http://provider:8080/echo/"+string,String.class);
return "rpc" + string;
}

这里配置了具有负载均衡能力的RestTemplate,通过restTempleta调用provider服务接口可以看到调用结果:

好了,这里就简单的入门实战了使用Spring Cloud Alibaba nacos 作为注册中心。下一篇入门实战nacos作为来配置中心。

Spring Cloud Alibaba入门实战之nacos(一)的更多相关文章

  1. Spring Cloud Alibaba基础教程:Nacos的集群部署

    继续说说生产环境的Nacos搭建,通过上一篇<Spring Cloud Alibaba基础教程:Nacos的数据持久化>的介绍,我们已经知道Nacos对配置信息的存储原理,在集群搭建的时候 ...

  2. Spring Cloud Alibaba基础教程:Nacos的数据持久化

    前情回顾: <Spring Cloud Alibaba基础教程:使用Nacos实现服务注册与发现> <Spring Cloud Alibaba基础教程:支持的几种服务消费方式> ...

  3. Spring Cloud Alibaba基础教程:Nacos配置的多文件加载与共享配置

    前情回顾: <Spring Cloud Alibaba基础教程:使用Nacos实现服务注册与发现> <Spring Cloud Alibaba基础教程:支持的几种服务消费方式> ...

  4. Spring Cloud Alibaba基础教程:Nacos配置的多环境管理

    前情回顾: <Spring Cloud Alibaba基础教程:使用Nacos实现服务注册与发现> <Spring Cloud Alibaba基础教程:支持的几种服务消费方式> ...

  5. Spring Cloud Alibaba入门篇

    学习条件 了解web三层架构 熟练应用SSM架构 了解Maven管理工具的使用 熟练使用SpringBoot,以及了解SpringBoot基本原理. 了解部分术语:应用.工具.耦合.负载等 温馨提示: ...

  6. Spring Cloud Alibaba基础教程:Nacos配置的加载规则详解

    前情回顾: <Spring Cloud Alibaba基础教程:使用Nacos实现服务注册与发现> <Spring Cloud Alibaba基础教程:支持的几种服务消费方式(Res ...

  7. 主流微服务一站式解决方案Spring Cloud Alibaba入门看这篇就足够了

    学习路线 **本人博客网站 **IT小神 www.itxiaoshen.com 生态概述 架构演进 什么是微服务 https://martinfowler.com/microservices/ Mic ...

  8. Spring Cloud Alibaba基础教程:Nacos服务发现与配置管理

    随着微服务概念的流行,越来越多的公司采用`Spring Cloud`全家桶构建微服务系统,实现业务的快速迭代.`Spring Cloud`提供了快速构建分布式微服务常用组件,包括`Spring Clo ...

  9. Spring Cloud Alibaba基础教程:Nacos 生产级版本 0.8.0

    昨晚Nacos社区发布了第一个生产级版本:0.8.0.由于该版本除了Bug修复之外,还提供了几个生产管理非常重要的特性,所以觉得还是有必要写一篇讲讲这次升级,在后续的文章中也都将以0.8.0版本为基础 ...

随机推荐

  1. bootstrop登陆页面

    bootstrap做登入注册页面,使用validate做表单验证 技术:bootstrap,font-awesome,jquery-validate: 特点:响应式布局,表单验证(用户两次密码是否相同 ...

  2. Web性能优化之-深入理解TCP Socket

    什么是Socket?    大家都用电脑上网,当我们访问运维社区https://www.unixhot.com的时候,我们的电脑和运维社区的服务器就会创建一条Socket,我们称之为网络套接字.那么既 ...

  3. Libra教程之:Libra protocol的逻辑数据模型

    文章目录 Libra protocol简介 逻辑数据模型 账本状态 交易 账本历史 Libra protocol简介 Libra区块链本质上是一个加密数据库,这个数据库是通过Libra protoco ...

  4. OpenWrt-19.07.2 For HC5861(极路由3) /HiWiFi/Gee最新固件,极路由3刷openwrt

    OpenWrt For HiWiFi(HC5861) 自编译精减固件,极路由3自用固件 HC5861-uboot.bin v19.07.2 下载 支持 NTFS 读写 支持 Wi-Fi 5G 驱动 默 ...

  5. IDC:企业需求疲软 第三季度全球服务器市场收入下滑7%

    根据IDC全球服务器季度追踪报告,2016年第三季度全球服务器市场同比减少7%至125亿美元.整个服务器市场的增长最近有所放缓,部分原因是超大规模数据中心增长放缓,以及受到高端服务器销售下滑的拖累.此 ...

  6. IT成长中的龟兔赛跑

    IT成长中的龟兔赛跑 相信"龟兔赛跑"的故事大家都听过吧,那就让咱给各位看官讲讲我看到的一些事情吧.      最近看到很多文章总是叹息网管如何,起得比鸡早,睡得比狗晚,吃得比猪差 ...

  7. Ubuntu Install Chinese Input Method

    为了提高在Linux系统使用中文输入的体验,安装搜狗拼音输入法. 确保键盘输入系统选中fcitx. 搜狗拼音输入法基于fcitx(Free Chinese Input Toy for X)框架,所以要 ...

  8. 数学--数论--HDU 2104 丢手绢(离散数学 mod N+ 剩余类 生成元)+(最大公约数)

    The Children's Day has passed for some days .Has you remembered something happened at your childhood ...

  9. 图论--拓扑排序--HDU-1285确定比赛名次

    Problem Description 有N个比赛队(1<=N<=500),编号依次为1,2,3,....,N进行比赛,比赛结束后,裁判委员会要将所有参赛队伍从前往后依次排名,但现在裁判委 ...

  10. IO与反射机制总结

    IO与反射机制全面总结 一.file类:属于java.io包中kkb 作用:操作文件或目录 file既可以表示文件,也可以表示目录,也可以表示盘符.利用他可以用来对文件进行操作. file中常用的构造 ...