码迷,mamicode.com
首页 > 其他好文 > 详细

微服务配置内容—>如何创建一个高可用的服务注册中心

时间:2017-12-02 22:16:19      阅读:205      评论:0      收藏:0      [点我收藏+]

标签:微服务   文件   from   更换   代码   file   art   java环境搭建   pre   

前言:首先要知道什么是一个高可用的服务注册中心,基于spring boot建成的服务注册中心是一个单节点的服务注册中心,这样一旦发生了故障,那么整个服务就会瘫痪,所以我们需要一个高可用的服务注册中心,那么在Eureka中,我们通过集群来解决这个问题。啥叫集群呢?就是多配几个,一个服务注册中心挂了,还有另一个。

另外要注意jdk的版本需要1.8或1.8以上,否则无法执行。

1 但这里我遇到了一个奇怪的问题:本来我的jdk版本是1.6的,我需要更换。但是怎么配置环境
2 变量,在命令行输入java -version仍然是1.6,这里并不是配错了,而是在安装JDK1.6时,
3 自动将java.exe、javaw.exe、javaws.exe三个可执行文件复制到了C:\Windows
4 \System32目录,我们所执行的java命令正是这个java.exe所以我们先需要将这3个可执行
5 文件删除,然后再配置jdk1.8

另附java环境搭建方法

https://jingyan.baidu.com/article/c85b7a6414f2ee003bac95d5.html

那开始项目吧!

1、首先创建一个空的maven项目,不必多说

2、pom.xml内容配置

 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 3     xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
 4     <modelVersion>4.0.0</modelVersion>
 5 
 6     <groupId>org.sang</groupId>
 7     <artifactId>eureka-server</artifactId>
 8     <version>0.0.1-SNAPSHOT</version>
 9     <packaging>jar</packaging>
10   
11     <name>eureka-server</name>
12     <description>Demo project for Spring Boot</description>
13 
14     <parent>
15         <groupId>org.springframework.boot</groupId>
16         <artifactId>spring-boot-starter-parent</artifactId>
17         <version>1.5.6.RELEASE</version>
18         <relativePath/> <!-- lookup parent from repository -->
19     </parent>
20 
21     <properties>
22         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
23         <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
24         <java.version>1.8</java.version>
25     </properties>
26 
27     <dependencies>
28         <dependency>
29             <groupId>org.springframework.boot</groupId>
30             <artifactId>spring-boot-starter</artifactId>
31         </dependency>
32 
33         <dependency>
34             <groupId>org.springframework.cloud</groupId>
35             <artifactId>spring-cloud-starter-eureka-server</artifactId>
36         </dependency>
37 
38         <dependency>
39             <groupId>org.springframework.boot</groupId>
40             <artifactId>spring-boot-starter-test</artifactId>
41             <scope>test</scope>
42         </dependency>
43     </dependencies>
44 
45     <dependencyManagement>
46         <dependencies>
47             <dependency>
48                 <groupId>org.springframework.cloud</groupId>
49                 <artifactId>spring-cloud-dependencies</artifactId>
50                 <version>Dalston.SR3</version>
51                 <type>pom</type>
52                 <scope>import</scope>
53             </dependency>
54         </dependencies>
55     </dependencyManagement>
56     <build>
57         <plugins>
58             <plugin>
59                 <groupId>org.springframework.boot</groupId>
60                 <artifactId>spring-boot-maven-plugin</artifactId>
61             </plugin>
62         </plugins>
63     </build>
64 </project>

3、两个配置文件之peer1的内容

1 server.port=1111
2 eureka.instance.hostname=peer1
3 eureka.client.register-with-eureka=false
4 eureka.client.fetch-registry=false
5 eureka.client.service-url.defaultZone=http://peer2:1112/eureka/

4、两个配置文件之peer2的内容

1 server.port=1112
2 eureka.instance.hostname=peer2
3 eureka.client.register-with-eureka=false
4 eureka.client.fetch-registry=false
5 eureka.client.service-url.defaultZone=http://peer1:1111/eureka/

关于这两个配置文件需要知道如下几点:

1.在peer1的配置文件中,让它的service-url指向peer2,在peer2的配置文件中让它的service-url指向peer1
2.为了让peer1和peer2能够被正确的访问到,我们需要在C:\Windows\System32\drivers\etc目录下的hosts文件总添加两行配置,如下:
127.0.0.1 peer1
127.0.0.1 peer2
3.由于peer1和peer2互相指向对方,实际上我们构建了一个双节点的服务注册中心集群 

 5、java程序启动代码

 1 import org.springframework.boot.SpringApplication;
 2 import org.springframework.boot.autoconfigure.SpringBootApplication;
 3 import org.springframework.cloud.netflix.eureka.server.EnableEurekaServer;
 4 
 5 @EnableEurekaServer
 6 @SpringBootApplication
 7 public class Application {
 8     public static void main(String[] args) {
 9         SpringApplication.run(Application.class, args);
10     }
11 }

6、将该maven项目打包成可执行的.jar文件

选中pom.xml文件,右击鼠标点击run,选择Maven install,等待即可

 7、生成jar文件之后,我们在命令行通过java命令来启动项目,在启动的时候我们可以设置采用不同的配置文件来启动项目,命令如下:

1 java -jar eureka-server-0.0.1-SNAPSHOT.jar --spring.profiles.active=peer1  
2 java -jar eureka-server-0.0.1-SNAPSHOT.jar --spring.profiles.active=peer2

8、在浏览器中进行验证

微服务配置内容—>如何创建一个高可用的服务注册中心

标签:微服务   文件   from   更换   代码   file   art   java环境搭建   pre   

原文地址:http://www.cnblogs.com/wlovet/p/7955620.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!