您现在的位置是:主页 > news > 近三年成功的营销案例/搜索引擎优化的含义
近三年成功的营销案例/搜索引擎优化的含义
admin2025/5/11 6:14:31【news】
简介近三年成功的营销案例,搜索引擎优化的含义,浙江省房屋建筑工程资料表格久久建筑网,做柜子的常去的网站什么是Eureka? Eureka是Netflix开发的服务发现框架,本身是一个基于REST的服务,主要用于定位运行在AWS域中的中间层服务,以达到负载均衡和中间层服务故障转移的目的。Spring Cloud将它集成在其他子项目spring-cloud-netflix中&…
什么是Eureka?
Eureka是Netflix开发的服务发现框架,本身是一个基于REST的服务,主要用于定位运行在AWS域中的中间层服务,以达到负载均衡和中间层服务故障转移的目的。Spring Cloud将它集成在其他子项目spring-cloud-netflix中,以实现spring cloud服务发现功能。
Spring Cloud和Dubbo
SpringCloud整合了一套较为完整的微服务解决方案框架,而Dubbo只是解决了微服务的几个方面的问题
content | Dubbo | Spring Cloud |
服务注册中心 | zookeeper | Spring Cloud Netflix Eureka |
服务调用方式 | RPC | REST API |
服务网关 | 无 | Spring Cloud Netflix Zuul |
断路器 | 不完善 | Spring Cloud Netflix Hystrix |
分布式配置 | 无 | Spring Cloud Config |
服务跟踪 | 无 | Spring Cloud Sleuth |
消息总线 | 无 | Spring Cloud Bus |
数据流 | 无 | Spring Cloud Stream |
批量任务 | 无 | Spring Cloud Task |
关于Eureka和Dubbo那些事,推荐以下几篇博客参考:
微服务架构的基础框架选择Spring Cloud还是Dubbo?:https://blog.csdn.net/kobejayandy/article/details/52078275
为什么Eureka比ZooKeeper更适合做服务发现与注册服务:https://blog.csdn.net/coorz/article/details/70921252
服务发现和注册和Eureka详细讲解:https://blog.csdn.net/zhanglh046/article/details/78651914
一、创建服务注册中心
在这里,我们需要用的的组件上Spring Cloud Netflix的Eureka ,eureka是一个服务注册和发现模块。
下面以创建server为例子,详细说明创建过程:
1、File-->New-->Project
2、New Project-->Spring Initializr
3、填写Group和Artifact
4、选择Eureka
5、完成后弹出窗口选New Windows
6、pom.xml
<?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.eurekaserver</groupId><artifactId>eurekaserver</artifactId><version>0.0.1-SNAPSHOT</version><packaging>jar</packaging><name>eurekaserver</name><description>Demo project for Spring Boot</description><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.0.2.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><spring-cloud.version>Finchley.RC2</spring-cloud.version></properties><dependencies><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-netflix-eureka-server</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>${spring-cloud.version}</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>
二、启动一个服务注册中心,只需要一个注解@EnableEurekaServer,这个注解需要在springboot工程的启动application类上加
package com.eurekaserver.eurekaserver;import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.eureka.server.EnableEurekaServer;@EnableEurekaServer
@SpringBootApplication
public class EurekaserverApplication {public static void main(String[] args) {SpringApplication.run(EurekaserverApplication.class, args);}
}
三、修改配置文件
server.port=8761
#注册中心默认端口就是8761,也可通过下面的方式定义其他端口
#eureka.client.serviceUrl.defaultZone=http://localhost:${server.port}/eureka/
eureka.client.registerWithEureka=false
eureka.client.fetchRegistry=false
四、启动访问--debug模式可以断点调试
五、创建服提供者
这里就直接提供配置文件和主要代码了,建项目步骤同上。
1、修改配置文件
需要指明spring.application.name,这个很重要,这在以后的服务与服务之间相互调用一般都是根据这个name 。
你会发现一个服务已经注册在服务中了,服务名为HELLO-SERVICE,端口为8764
server.port=8764
spring.application.name=hello-service
#eureka注册中心地址
eureka.client.service-url.defaultZone=http://localhost:8761/eureka/
2、pom.xml
<?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.eurekaclient</groupId><artifactId>eurekaclient</artifactId><version>0.0.1-SNAPSHOT</version><packaging>jar</packaging><name>eurekaclient</name><description>Demo project for Spring Boot</description><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.0.2.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><spring-cloud.version>Finchley.RC2</spring-cloud.version></properties><dependencies><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-netflix-eureka-server</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>${spring-cloud.version}</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>
3、编写服务
package com.cloud.controller;import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;@RestController
public class HelloController {@Value("${server.port}")String port;@RequestMapping("/hi")@ResponseBodypublic String home(@RequestParam String name) {System.out.println("hi "+name+",i am from port:" +port);return "hi "+name+",i am from port:" +port;}
}
4、修改启动类添加注解@EnableEurekaClient表明自己是一个服务提供者
package com.eurekaclient.eurekaclient;import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.eureka.EnableEurekaClient;
import org.springframework.context.annotation.ComponentScan;@EnableEurekaClient
@SpringBootApplication
@ComponentScan("com.cloud.*")
public class EurekaclientApplication {public static void main(String[] args) {SpringApplication.run(EurekaclientApplication.class, args);}
}
5、启动访问查看服务
到这里,Spring Cloud的服务注册发现Demo已经完成,下一遍博客将介绍服务消费者Feign/Ribbon。
Spring Boot与Spring Cloud学习使用可参看笔者博客
①Spring Cloud入门教程之服务注册与发现Eureka
②Spring Cloud入门教程之服务消费者 Ribbon
③Spring Cloud入门教程之服务消费者 Feign
④Spring Cloud入门教程之断路器 Hystrix
⑤Spring Cloud入门教程之断路由网关 Zuul
⑥Spring Cloud入门教程之分布式配置中心 Spring Cloud Config
⑦idea下新建Spring Boot项目并配置启动
⑧Spring Boot无法自动注入bean问题解决方案
⑨idea 设置Spring Boot热部署