绍兴网站建设方案推广,搜索引擎优化的基本原理,网站开发怎么让别人看到,仿百度百科网站源码1 概要
1.1 实现一个最简单的微服务。远程调用负载均衡#xff0c;基本上完成了最核心的微服务框架。
远程调用#xff1a;RestTemplate
注册中心#xff1a;eureka
负载均衡#xff1a;Ribbon
1.2 要点
1.2.1 依赖
1.2.1.1 主框架依赖
spring boot 依赖
depe…1 概要
1.1 实现一个最简单的微服务。远程调用负载均衡基本上完成了最核心的微服务框架。
远程调用RestTemplate
注册中心eureka
负载均衡Ribbon
1.2 要点
1.2.1 依赖
1.2.1.1 主框架依赖
spring boot 依赖
dependencygroupIdorg.springframework.cloud/groupIdartifactIdspring-cloud-starter/artifactId/dependency spring cloud 依赖
dependencyManagementdependenciesdependencygroupIdorg.springframework.cloud/groupIdartifactIdspring-cloud-dependencies/artifactIdversion${spring-cloud.version}/versiontypepom/typescopeimport/scope/dependency/dependencies/dependencyManagement 1.2.1.2 eureka依赖
服务端依赖
groupIdorg.springframework.cloud/groupIdartifactIdspring-cloud-starter-netflix-eureka-server/artifactId
客户端依赖
groupIdorg.springframework.cloud/groupIdartifactIdspring-cloud-starter-netflix-eureka-client/artifactId 1.2.2 配置文件
服务设置
server:port: 10086
spring:application:name: eureka server 服务注册
eureka:client:service-url:defaultZone: http://127.0.0.1:10086/eureka/
1.2 技术关键词 spring-cloud-starterspring-cloud-dependencies spring-cloud-starter-netflix-eureka-server spring-cloud-starter-netflix-eureka-client spring-boot-starter-web spring:application:name: eureka server eureka:client:service-url:defaultZone: http://127.0.0.1:10086/eureka/ SpringBootApplication
EnableEurekaServer Bean
LoadBalanced
public RestTemplate Autowired
RestTemplate restTemplate; RestController return 函数2restTemplate.getForObject(url,String.class); SpringApplication.run(Main.class); 2 代码
2.1 父工程 ?xml version1.0 encodingUTF-8?
project xmlnshttp://maven.apache.org/POM/4.0.0xmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsdmodelVersion4.0.0/modelVersionparentgroupIdcom.xjc.springcloundtest/groupIdartifactIddemo8/artifactIdversion0.0.1-SNAPSHOT/version/parentartifactIduntitled/artifactIdpropertiesmaven.compiler.source21/maven.compiler.sourcemaven.compiler.target21/maven.compiler.targetproject.build.sourceEncodingUTF-8/project.build.sourceEncoding/propertiesdependenciesdependencygroupIdorg.springframework.cloud/groupIdartifactIdspring-cloud-starter-netflix-eureka-server/artifactId/dependency/dependencies
/project
2.2 注册中 eureka
2.2.1 工程文件 ?xml version1.0 encodingUTF-8?
project xmlnshttp://maven.apache.org/POM/4.0.0xmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsdmodelVersion4.0.0/modelVersionparentgroupIdcom.xjc.springcloundtest/groupIdartifactIddemo8/artifactIdversion0.0.1-SNAPSHOT/version/parentartifactIduntitled/artifactIdpropertiesmaven.compiler.source21/maven.compiler.sourcemaven.compiler.target21/maven.compiler.targetproject.build.sourceEncodingUTF-8/project.build.sourceEncoding/propertiesdependenciesdependencygroupIdorg.springframework.cloud/groupIdartifactIdspring-cloud-starter-netflix-eureka-server/artifactId/dependency/dependencies
/project
2.2.2 配置文件
server:port: 10086
spring:application:name: eureka server
eureka:client:service-url:defaultZone: http://127.0.0.1:10086/eureka/
2.2.3 主函数
package com.xjc.springcloundtest;import com.netflix.discovery.shared.Application;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.eureka.server.EnableEurekaServer;SpringBootApplication
EnableEurekaServer
public class Main {public static void main(String[] args) {SpringApplication.run(Main.class);System.out.println(Hello world!);}
}
2.2.4 运行效果 2.3 服务工程
2.2.1 工程文件
?xml version1.0 encodingUTF-8?
project xmlnshttp://maven.apache.org/POM/4.0.0xmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsdmodelVersion4.0.0/modelVersionparentgroupIdcom.xjc.springcloundtest/groupIdartifactIddemo8/artifactIdversion0.0.1-SNAPSHOT/version/parentartifactIduntitled1/artifactIdpropertiesmaven.compiler.source21/maven.compiler.sourcemaven.compiler.target21/maven.compiler.targetproject.build.sourceEncodingUTF-8/project.build.sourceEncoding/propertiesdependenciesdependencygroupIdorg.springframework.cloud/groupIdartifactIdspring-cloud-starter-netflix-eureka-client/artifactId/dependencydependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-web/artifactId/dependency/dependencies/project
2.3.2 配置文件
spring:application:name: server1
eureka:client:service-url:defaultZone: http://127.0.0.1:10086/eureka/
2.3.3 主函数
package com.xjc.springcloundtest;import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;SpringBootApplication
public class Main {public static void main(String[] args) {SpringApplication.run(Main.class);System.out.println(Hello world!);}
}
2.3.4 控制器
package com.xjc.springcloundtest;import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;RestController
public class TestController {RequestMapping(/fun)public String fun(){return 函数1;}
}2.3.5 运行效果 2.4 消费者
2.4.1 工程文件
?xml version1.0 encodingUTF-8?
project xmlnshttp://maven.apache.org/POM/4.0.0xmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsdmodelVersion4.0.0/modelVersionparentgroupIdcom.xjc.springcloundtest/groupIdartifactIddemo8/artifactIdversion0.0.1-SNAPSHOT/version/parentartifactIduntitled2/artifactIdpropertiesmaven.compiler.source21/maven.compiler.sourcemaven.compiler.target21/maven.compiler.targetproject.build.sourceEncodingUTF-8/project.build.sourceEncoding/propertiesdependenciesdependencygroupIdorg.springframework.cloud/groupIdartifactIdspring-cloud-starter-netflix-eureka-client/artifactId/dependencydependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-web/artifactId/dependency/dependencies/project
2.4.2 配置文件
server:port: 8081
spring:application:name: server2
eureka:client:service-url:defaultZone: http://127.0.0.1:10086/eureka/
2.4.3 主函数
package com.xjc.springcloundtest;import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.web.client.RestTemplateBuilder;
import org.springframework.cloud.client.loadbalancer.LoadBalanced;
import org.springframework.context.annotation.Bean;
import org.springframework.web.client.RestTemplate;SpringBootApplication
public class Main {public static void main(String[] args) {SpringApplication.run(Main.class);System.out.println(Hello world!);}BeanLoadBalancedpublic RestTemplate restTemplate(RestTemplateBuilder builder ){return builder.build();}
}
2.4.4 消费者
package com.xjc.springcloundtest;import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.client.RestTemplate;RestController
public class TestController {AutowiredRestTemplate restTemplate;RequestMapping(/fun)public String fun(){//String url http://localhost:8080/fun;String url http://server1/fun;return 函数2restTemplate.getForObject(url,String.class);}
}2.4.5 运行效果