创建一个Maven工程,New-Other-Maven-Maven Probject

点击Next,红色框里的选上

点击Next



点击Finsh就完成了一个Maven Probject的创建。

(1)接下来配置Maven工程下的pom文件

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.cn.study</groupId>
<artifactId>eureka.server</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging> <parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.3.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent> <properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
</properties> <dependencies>
<!--eureka server -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-eureka</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-eureka-server</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-config</artifactId>
</dependency>
<!-- spring boot test-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies> <dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>Dalston.RC1</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement> <build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build> <repositories>
<repository>
<id>spring-milestones</id>
<name>Spring Milestones</name>
<url>https://repo.spring.io/milestone</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
</repositories>
</project>

(2)创建一个服务类EurekaServerApplication,需要一个注解@EnableEurekaServer加在springboot工程的启动类上

(3)在resource目录下创建appication.yml,也可以创建appication.properites。2种方式为什么选用yml?是因为yml在很多配置的情况下更好的修改,它的存储试以key/value方式。properites的文件如果配置内容过多,没有放在一起的话,修改可能会忘掉,会造成一些不必要的麻烦。当然的写2个名称相同的文件同时存在也是可以的,只不过有优先级问题。properites文件优先级比yml的更高,最好是不要同时使用2个名称相同的文件。

以下2种写法都一样:

register-with-eureka和registerWithEureka一样

fetch-registry和fetchRegistry一样

当fetch-registry: true时报错如下图,报错原因是:在默认设置下,eureka服务注册中心也会将自己作为客户端来尝试注册它自己,所以我们需要禁用它的客户端注册行为

解决方法:

(4)启动服务

(5)创建一个Maven工程Eureka Client,pom文件内容如下:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.cn.study</groupId>
<artifactId>eureka.client</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>springcloud.helloworld.eureka.client</name>
<packaging>jar</packaging>
<description>Demo Spring Boot Client</description> <parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.3.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent> <properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
</properties> <dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-eureka</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency> <dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies> <dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>Dalston.RC1</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement> <build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build> <repositories>
<repository>
<id>spring-milestones</id>
<name>Spring Milestones</name>
<url>https://repo.spring.io/milestone</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
</repositories> </project> pom.xml

(6)创建类ServiceApplication

(7)配置eureka.client的文件appication.yml

(8)启动ServiceApplication,并访问

(9)Eureka的自我保护机制



保护模式主要用于一组客户端和Eureka Server之间存在网络分区场景下的保护。一旦进入保护模式,Eureka Server将会尝试保护其服务注册表中的信息,不再删除服务注册表中的数据(也就是不会注销任何微服务)。

最新文章

  1. [虾扯蛋] android界面框架-Window
  2. 【原创】Kakfa message包源代码分析
  3. js判断checkbox状态,处理表单提交事件
  4. 【转】Docker 常用命令
  5. SNF开发平台WinForm之十三-单独从服务器上获取PDF文件进行显示-SNF快速开发平台3.3-Spring.Net.Framework
  6. javascript压缩图片无刷新上传
  7. YII 小部件实现的注册表
  8. VS中,NUnit适合测试者尽心开发自动化测试,而Unit适合开发者开发单元测试。
  9. TreePuzzle 一点感想
  10. hdu3804(树链剖分)
  11. 转:LoadRunner响应时间与用户体验时间不一致问题的深入分析
  12. [HAOI2006]旅行
  13. 【学习总结】GirlsInAI ML-diary day-14-function函数
  14. day-09内存管理
  15. 5-8套接字socket
  16. iOS - 数组字典模型根据模型属性key排序
  17. show profiles 分析sql耗时瓶颈
  18. xshell的一些基本操作
  19. Java中JSONObject相关操作
  20. 【PAT 甲级】1151 LCA in a Binary Tree (30 分)

热门文章

  1. PDF文档工具:pdfFactory快照功能详解
  2. 关于Vegas制作黑白负片爆闪效果的教程分享
  3. Java IDEA 根据mybatis-generator-core自动生成代码支持sqlserver获取备注(二)
  4. synchronized关键字的内存语义
  5. C Looooops POJ - 2115
  6. 精尽MyBatis源码分析 - 插件机制
  7. VueCli 4.0+ 版本安装插件与VueCLI 旧版本的不同
  8. LeetCode周赛#206
  9. java编写规范及注意事项
  10. Kubernetes中Service的使用