springCloud Eureka 服务的注册与发现
2018-02-06 00:00
567 查看
最近公司项目要使用springCloud技术架构,为此深入研究了整个springCloud的用法,第一次接触微服务,被服务的注册和发现功能所吸引,springCloud提供了Eureka来实现服务发现,这相当于一个大脑,所有的微服务系统注册到Eureka中,其他服务需要访问的时候,从Eureka中发现访问即可达到目的。
我们都知道不同的项目,其实具有共性,总是有些套餐性质的功能遍布每一个系统,曾经我想把这些功能提炼出来,在构建系统的时候,不要重复的去写,减少项目开发周期,通过springCloud Eureka架构的引进,似乎为此提供了一个解决思路,我们将各种服务注册到Eureka中,碰到不同的系统,就从Eureka中选择合适的服务,像拼积木一样,可以快速搭建好一个系统的雏形,能节省不少时间。
为了方便以后查询,记录下这次架构过程
创建eureka server
新建一个module,选择Spring Initializr,我使用的是intellij idea,使用sts等其他编译器也一样,依据提示,输入Group,Artifact等maven信息,完成项目的创建。
maven引入的内容
通过springboot创建的项目,我们都知道有一个启动类,现在我们修改下这个启动类,加个注解@EnableEurekaServer
不要忘记修改配置文件,我们将application.properties修改成application.yml,修改成如下内容:
现在整个工程已经创建完毕,可以启动了,看到下图,表示启动成功了
截止到这里,eurka服务算是做完了,可以对外提供来自五湖四海的服务了,下一节记录下怎么注册服务到eurka
我们都知道不同的项目,其实具有共性,总是有些套餐性质的功能遍布每一个系统,曾经我想把这些功能提炼出来,在构建系统的时候,不要重复的去写,减少项目开发周期,通过springCloud Eureka架构的引进,似乎为此提供了一个解决思路,我们将各种服务注册到Eureka中,碰到不同的系统,就从Eureka中选择合适的服务,像拼积木一样,可以快速搭建好一个系统的雏形,能节省不少时间。
为了方便以后查询,记录下这次架构过程
创建eureka server
新建一个module,选择Spring Initializr,我使用的是intellij idea,使用sts等其他编译器也一样,依据提示,输入Group,Artifact等maven信息,完成项目的创建。
maven引入的内容
<dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-eureka-server</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> <!-- 热部署 start--> <!-- devtools可以实现页面热部署(即页面修改后会立即生效,这个可以直接在application.properties文件中配置spring.thymeleaf.cache=false来实现) --> <!-- 实现类文件热部署(类文件修改后不会立即生效),实现对属性文件的热部署。 --> <!-- 即devtools会监听classpath下的文件变动,并且会立即重启应用(发生在保存时机),注意:因为其采用的虚拟机机制,该项重启是很快的 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <!-- optional=true,依赖不会传递,该项目依赖devtools;之后依赖boot项目的项目如果想要使用devtools,需要重新引入 --> <optional>true</optional> </dependency> <!-- 热部署 end --> </dependencies>
通过springboot创建的项目,我们都知道有一个启动类,现在我们修改下这个启动类,加个注解@EnableEurekaServer
@EnableEurekaServer @SpringBootApplication public class AcscServersEurekaApplication { public static void main(String[] args) { SpringApplication.run(AcscServersEurekaApplication.class, args); } }
不要忘记修改配置文件,我们将application.properties修改成application.yml,修改成如下内容:
server: port: 8761 spring: application: name: sc-eureka-server eureka: server: enable-self-preservation: false eviction-interval-timer-in-ms: 30000 instance: hostname: peer1 perferIpAddress: true client: registerWithEureka: false fetchRegistry: false serviceUrl: defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/
现在整个工程已经创建完毕,可以启动了,看到下图,表示启动成功了
截止到这里,eurka服务算是做完了,可以对外提供来自五湖四海的服务了,下一节记录下怎么注册服务到eurka
相关文章推荐
- 《Spring Cloud Netflix》-- 服务注册和服务发现-Eureka的服务认证和集群
- 《Spring Cloud Netflix》-- 服务注册和服务发现-Eureka的服务认证和集群
- 白话SpringCloud | 第三章:服务注册与发现-高可用配置(Eureka)-下
- 【微服务架构】SpringCloud之Eureka(服务注册和服务发现基础篇)(二)
- Spring-Cloud-Eureka服务注册发现中心server+client案列模拟说明
- 每天学点SpringCloud(二):服务注册与发现Eureka
- SpringCloud | Docker 学习系列 | Kubernetes 学习 将SpringCloud Eureka 服务注册与发现部署到docker中并放入到Kubernetes中管理
- Spring Cloud 学习笔记-Eureka 服务注册与发现
- SpringCloud之服务注册与发现Spring Cloud Eureka实例代码
- SpringCloud 教程 | 第一篇: 服务的注册与发现(Eureka)
- Spring Cloud Netflix Eureka组件服务注册及发现源码浅析
- 【微服务架构】SpringCloud之Eureka(服务注册和服务发现基础篇)(二)
- SpringCloud 学习记录(一):服务注册与发现(eureka+feign)
- SpringCloud 学习 | 第一篇: 高可用的服务注册与发现(Eureka)
- SpringCloud服务的注册与发现(Eureka)
- Spring Cloud Eureka 服务注册与发现
- Spring Cloud构建微服务架构:服务注册与发现(Eureka、Consul)【Dalston版】
- SpringCloud(3)---Eureka服务注册与发现
- 【Spring Cloud】--SpringCloud的服务注册与发现【Eureka】
- SpringCloud——Eureka服务注册和发现