当前位置: 首页 > news >正文

廊坊公司快速建站项目管理平台系统

廊坊公司快速建站,项目管理平台系统,嵌入式开发培训哪家好,网站建设网站排行一、简介 在分布式系统中#xff0c;由于服务数量巨多#xff0c;为了方便服务配置文件统一管理#xff0c;实时更新#xff0c;所以需要分布式配置中心组件。 在Spring Cloud中#xff0c;有分布式配置中心组件spring cloud config #xff0c;它支持配置服务放在配置服…一、简介 在分布式系统中由于服务数量巨多为了方便服务配置文件统一管理实时更新所以需要分布式配置中心组件。 在Spring Cloud中有分布式配置中心组件spring cloud config 它支持配置服务放在配置服务的内存中即本地也支持放在远程Git仓库中。 在spring cloud config 组件中分两个角色 一是config server二是config client。 在企业中这2个应用都应该要注册到Eureka-server上面这样可以更好的监控服务的状态。 二、构建Config Server 第1步创建父工程(maven)父pom文件 ?xml version1.0 encodingUTF-8? project xmlnshttp://maven.apache.org/POM/4.0.0 xmlns: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/modelVersionparentgroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-parent/artifactIdversion2.0.3.RELEASE/versionrelativePath//parentmodulesmoduleconfig-server/modulemoduleeureka-server/modulemoduleconfig-client/module/modulesgroupIdcom.gblfy/groupIdartifactIdsc-f-chapter6/artifactIdversion0.0.1-SNAPSHOT/versionpackagingpom/packagingnamesc-f-chapter6/namedescriptionDemo project for Spring Boot/descriptionpropertiesproject.build.sourceEncodingUTF-8/project.build.sourceEncodingproject.reporting.outputEncodingUTF-8/project.reporting.outputEncodingjava.version1.8/java.versionspring-cloud.versionFinchley.RELEASE/spring-cloud.version/propertiesdependenciesdependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-test/artifactIdscopetest/scope/dependency/dependenciesdependencyManagementdependenciesdependencygroupIdorg.springframework.cloud/groupIdartifactIdspring-cloud-dependencies/artifactIdversion${spring-cloud.version}/versiontypepom/typescopeimport/scope/dependency/dependencies/dependencyManagementbuildpluginsplugingroupIdorg.springframework.boot/groupIdartifactIdspring-boot-maven-plugin/artifactId/plugin/plugins/build/project第2步 创建一个spring-boot项目取名为config-server 其pom.xml如下 ?xml version1.0 encodingUTF-8? project xmlnshttp://maven.apache.org/POM/4.0.0 xmlns: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.gblfy/groupIdartifactIdsc-f-chapter6/artifactIdversion0.0.1-SNAPSHOT/version/parentgroupIdcom.gblfy/groupIdartifactIdconfig-server/artifactIdversion0.0.1-SNAPSHOT/versionnameconfig-server/namedescriptionDemo project for Spring Boot/descriptiondependenciesdependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-web/artifactId/dependencydependencygroupIdorg.springframework.cloud/groupIdartifactIdspring-cloud-starter-netflix-eureka-client/artifactId/dependencydependencygroupIdorg.springframework.cloud/groupIdartifactIdspring-cloud-config-server/artifactId/dependency/dependencies /project第3步在程序的入口Application类加上EnableConfigServer注解开启配置服务器的功能 代码如下 SpringBootApplication EnableConfigServer public class ConfigServerApplication {public static void main(String[] args) {SpringApplication.run(ConfigServerApplication.class, args);}}第4步需要在程序的配置文件application.properties文件配置以下 #注册中心地址 eureka:client:serviceUrl:defaultZone: http://localhost:8761/eureka/ #服务端口号 server:port: 8888 #应用名称 #git远程仓库的配置信息 地址 账号 秘钥 本地保存配置文件的路径 spring:application:name: config-servercloud:config:server:git:uri: gitgithub.com:gb-heima/config-rep.gitusername:password:basedir: /Users/Administrator.PC-20180929LWLP/Desktop/springcloud-practical-column/sc-f-chapter6/config/basedirspring.cloud.config.server.git.uri配置git仓库地址spring.cloud.config.server.git.searchPaths配置仓库路径spring.cloud.config.server.git.username访问git仓库的用户名spring.cloud.config.server.git.password访问git仓库的用户秘钥spring.cloud.config.server.git.basedir保存配置文件的本地路径 如果Git仓库为公开仓库可以不填写用户名和密码如果是私有仓库需要填写本例子是公开仓库放心使用。 第5步在远程仓库创建仓库和新增配置文件 在远程仓库创建一个仓库名称为config-re在config-rep仓库中新建一个文件名为config-client-dev.properties文件中的内容属性如下 #应用名称 spring:application:name: config-client #环境分支 env: dev # 测试远程拉取信息1 girl:name: yuxinage: 1远程仓库地址https://github.com/gb-heima/config-rep.git 场景测试1 config-server服务成功注册到eureka-server(注册中心)config-server成功从远程git仓库拉取文件并在浏览器正常显示仓库配置的信息 操作流程如下 先启动eureka-server工程端口号8761再启动config-server工程端口号8888启动程序访问http://localhost:8888/config-client-dev.yml测试效果图1 也可以访问:http://localhost:8888/gblfy/dev效果图2 { name: girl, profiles: [ dev ], label: null, version: cfab60b6d3e093ab5227f0694f0f4b5e8a80e9e2, state: null, propertySources: [] }证明配置服务中心可以从远程程序获取配置信息 注配置好远程仓库信息后可以通过配置中心验证配置信息是否正确正确会正常显示不正确会有提示根据提示进行修改即可 http请求地址和资源文件映射如下: /{application}/{profile}[/{label}]/{application}-{profile}.yml/{label}/{application}-{profile}.yml/{application}-{profile}.properties/{label}/{application}-{profile}.properties 三、构建一个config client 第1步重新创建一个springboot项目取名为config-client, 引入pom依赖如下所示 ?xml version1.0 encodingUTF-8? project xmlnshttp://maven.apache.org/POM/4.0.0 xmlns: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.gblfy/groupIdartifactIdsc-f-chapter6/artifactIdversion0.0.1-SNAPSHOT/version/parentgroupIdcom.gblfy/groupIdartifactIdconfig-client/artifactIdversion0.0.1-SNAPSHOT/versionnameconfig-client/namedescriptionDemo project for Spring Boot/descriptiondependenciesdependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-web/artifactId/dependencydependencygroupIdorg.springframework.cloud/groupIdartifactIdspring-cloud-starter-config/artifactId/dependencydependencygroupIdorg.springframework.cloud/groupIdartifactIdspring-cloud-starter-netflix-eureka-client/artifactId/dependency/dependencies /project在上面依赖基础上再添加以下3个依赖 lombok省区写getsetspring-boot-starter-data-jpa控制台输出sql 操作数据库mysql-connector-java数据库依赖及驱动等信息 dependencygroupIdorg.projectlombok/groupIdartifactIdlombok/artifactId/dependencydependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-data-jpa/artifactId/dependencydependencygroupIdmysql/groupIdartifactIdmysql-connector-java/artifactId/dependency第2步添加启动主类 SpringBootApplication EnableEurekaClient EnableDiscoveryClient public class ConfigClientApplication {public static void main(String[] args) {SpringApplication.run(ConfigClientApplication.class, args);}}第3步全局配置文件bootstrap.yml mysql和jpa的配置信息配置到git远程仓库中的config-client-dev.yml文件中 config-client-dev.yml文件内容如下所示 #应用名称 spring:application:name: config-client # 数据库配置datasource:driver-class-name: com.mysql.jdbc.Driverusername: rootpassword: rooturl: jdbc:mysql://127.0.0.1:3306/springcloud_sell?characterEncondingutf-8useSSLfalse # 控制台输出sqljpa:show-sql: true #环境分支 env: dev # 测试远程拉取信息 girl:name: yuxinage: 1本地bootstrap.yml配置内容如下 #应用名称 spring:application:name: config-clientcloud:config:discovery:enabled: true # 服务端应用名称service-id: CONFIG-SERVERprofile: dev #注册中心地址 eureka:client:service-url:defaultZone: http://localhost:8761/eureka #服务端口号 server:port: 8881spring.cloud.config.profile dev开发环境配置文件test测试环境pro正式环境 注意这里配置文件名称不是application.yml而是替换成bootstrap.yml 理由如下 1、当全局配置文件为application.yml时应用启动就会从配置文件中读取配置信息再去将自己的服务注册到eureka-server上面 2、当全局配置文件为bootstrap.yml时应用启动就会先将服务注册中eureka-server注册中心然后通过应用名称在注册中心找到配置中心的应用也就是(CONFIG-SERVER) 3、CONFIG-SERVER就会从git远程仓库中拉取配置信息 举个栗子 在config-client服务中配置了mysq数据库的配置而mysql的配置信息放到了远程的git仓库中在本地是没有的。用application.yml当配置文件时就是启动报错异常信息时找不到jdbc的信息。 解决方案 将application.yml配置文件更名为bootstrap.yml(注文件后缀名.properties也支持) 本地的bootstrap.yml和远程的bootstrap.yml是通过config-server端连接git远程仓库拉取配置信息再通过应用名称来取配置信息应用名称一致config-server就可以成功拉取配置信息config-client在从config-server服务中拉取配置信息。 架构如图所示: 第4步写一个与bootstrap.yml配置文件中信息对应的配置类GirlConfig(用户去配置文件中的信息) Data Component ConfigurationProperties(prefix girl) public class GirlConfig {private String name;private Integer age; }第5步程序的入口类GirlController写一个API接口“/girl//info”返回从配置中心读取的girl对象变量的值 代码如下 RestController RequestMapping(/girl) public class GirlController {Autowiredprivate GirlConfig girlConfig;GetMapping(/info)public String getGirlInfo() {return name: girlConfig.getName() , girlConfig.getAge();} } 启动config-client查看控制台发现config-client从config-server应用中拉取配置信息Fetching config from server at : http://PC-20180929LWLP:8888/打开网址访问http://localhost:8881/girl//info网页显示这就说明config-client从config-server获取了girl对象的属性而config-server是从git远程仓库再区配应用名称读取的 本文源码下载 dev分支(最新企业实战版本): https://github.com/gb-heima/springcloud-practical-column/tree/dev/sc-f-chapter6 master分支(入门版本): https://github.com/gb-heima/springcloud-practical-column/tree/master/sc-f-chapter6
http://www.sadfv.cn/news/70695/

相关文章:

  • 高安市帮助做公司网站蝉知使用WordPress模板
  • 永泰县住房和城乡建设局网站按月付费网站建设
  • xp网站建设最专业的营销网站建设价格
  • 官方网站下载手电筒取消网站备案时间
  • 海淀企业型网站建设wordpress同行者画廊
  • 怎么做网络销售的网站手机网站一键分享到微信
  • 成品网站建设商城app下载安装
  • 网站带数据库下载网站建设进程表
  • 海淀做网站哪家公司好专业建站制作
  • 化工网站建站模板下载网站备案要营业执照吗
  • 洪梅镇网站建设帝国cms网站地图生成
  • 做网站的客户高校网站模板
  • 网站内页做排名有服务器怎么做网站
  • 网站的版权信息聚名网域名综合查询
  • 如何做分享赚钱的网站用网站做成软件
  • 网站空间买什么的好wordpress ssh
  • 网站栏目建设海尔公司的网站建设
  • 营销网站建设哪家好开发网站需要用到的专业技术知识
  • 福鼎网站建设温岭做网站公司
  • 清远市企业网站seo联系方式宣传推广费用预算
  • 网站本地化怎么做做英文网站 赚钱
  • 大型企业网站建设制作四川聚锋建设工程有限公司官方网站
  • 深圳聘请做网站人员html所有标签大全
  • 产品分类 网站模板com域名为什么那么贵
  • 如何搜索到自己的网站榆林做网站电话
  • 河南省大型项目建设办公室网站用友财务软件官方网站
  • 网站制作添加视频家装室内设计师培训班
  • 中英文网站建设价格包括搜索引擎排名、网页标签优化、相关链接交换、网络广告投放等
  • 网站图片设置4:3泰州网站设计培训
  • 哔哩哔哩视频推广极限优化wordpress