SpringCloud微服务架构02-注册服务提供者

上一篇文章介绍了一波微服务项目中一个简单的注册中心的搭建,这篇文章将介绍如何将服务注册到注册中心。

(b) 注册服务提供者

在微服务项目中,因为项目根据不同的模块或者功能等依据,被分成了不同的子模块,一个子模块便可以搭建成一个服务。

在不同的服务中,服务与服务之间会产生数据交互的问题,所以一个服务会调用另一个服务,这可以利用rpc远程调用技术实现。

被调用的服务称为服务提供者,而主动去调用的那个服务称为服务消费者。当然所有的服务都必须挂载到注册中心。

假如在一个电商网站的项目中,用户选择好需要购买的商品之后,点击“购买”按钮,此时用户所在的订单服务会调用会员服务来获取会员信息(收件人、地址、电话等)。下图是该场景的原理图:

在这里插入图片描述

在此场景下,首先要搭建服务提供者,即搭建会员服务。

创建新的maven项目名为member-service,在pom.xml中添加相关依赖:

<parent>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-starter-parent</artifactId>
	<version>2.0.1.RELEASE</version>
</parent>
<!-- 管理依赖 -->
<dependencyManagement>
	<dependencies>
		<dependency>
			<groupId>org.springframework.cloud</groupId>
			<artifactId>spring-cloud-dependencies</artifactId>
			<version>Finchley.M7</version>
			<type>pom</type>
			<scope>import</scope>
		</dependency>
	</dependencies>
</dependencyManagement>
<dependencies>
	<!-- SpringBoot整合Web组件 -->
	<dependency>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-starter-web</artifactId>
	</dependency>
	<!-- SpringBoot整合eureka客户端 -->
	<dependency>
		<groupId>org.springframework.cloud</groupId>
		<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
	</dependency>
</dependencies>
<!-- 注意: 这里必须要添加, 否则各种依赖有问题 -->
<repositories>
	<repository>
		<id>spring-milestones</id>
		<name>Spring Milestones</name>
		<url>https://repo.spring.io/libs-milestone</url>
		<snapshots>
			<enabled>false</enabled>
		</snapshots>
	</repository>
</repositories>

然后,在resource文件夹下面新建文件夹application.yml:

###服务启动端口号
erver:
	port: 8000
###服务名称(服务注册到eureka名称)  
spring:
	application:
		name: member
###服务注册到eureka地址
eureka:
	client:
		service-url:
			defaultZone: http://localhost:8100/eureka

       
###将该应用注册到注册中心
register-with-eureka: true
###是否需要从eureka上获取注册信息
fetch-registry: true

编写一个controller名为MemberController用来处理客户端所发送过来的请求:

@RestController		//被该注解标识的接口下所有的方法返回的数据将以json形式响应给客户端
public class MemberController {

	@RequestMapping("/getMember")
	public String getMember() {
		return "this is getMember";
	}
}

最后编写启动类,注意类上添加注解@EnableEurekaClient

@SpringBootApplication
@EnableEurekaClient
public class AppMember {

	public static void main(String[] args) {
		SpringApplication.run(AppMember.class, args);
	}

}

搭建完成后,先启动注册中心eureka-service(必须要先启动注册中心),然后启动会员服务member-service,浏览器访问地址:localhost:8100 注册中心首页,可以看到会员服务成功注册到了注册中心上。浏览器访问:localhost:8000/getMember 会员服务接口,可以看到接口返回的Json数据。

码字不容易,运行效果就不上图了。下一篇将记录注册服务消费者。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值