微服务spring-cloud 配置中心config-server本地化部署

一、服务端:需要增加配置中心服务器config-server工程;

1、pom.xml增加相关配置信息

<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-config-server</artifactId>
</dependency>

2、启动类中增加

@EnableConfigServer
@SpringBootApplication
public class ConfigServerApplication {

    public static void main(String[] args) {
        SpringApplication.run(ConfigServerApplication.class, args);
    }

}

3.yml配置文件

server:
  port: 8707
spring:
  application:
    name: config-server
  profiles:
    active: native
  cloud:
    config:
      server:
        native:
          search-locations: 
                - file:/home/wshop/service/config
                #- classpath:/config
#        git:
#          uri: ssh://git@127.0.0.1:61317/home/git/repo/java/cloud-config
#          searchPaths: dev
#          lable: master
#          strict-host-key-checking: false
#          ignore-local-ssh-settings: true
#          private-key: |
#            -----BEGIN RSA PRIVATE KEY-----
#            MIIEpQIBAAKCAQEAx8S2qMyPTZxyw6+OB7PSLRM5WH+e1FPaKiqYwLzj1v0f9yGP
#            2cf41Si8m1y7o/tyaqoNiHbVkWlBvS5Pn6JCD3hlNQxCump2ZG2XqGg46EdDt52E
#            PWB2u4flSqzp4hMN+/5ChY1FTCg7IXY6uOxJ3U864MuZ6ChumxfgyYCmLb7mkX+D
#            S8vmDqNx5AGn9UscrhhdTuMMyw6HolUMdCQmpSyNyWQWk9caVKOvQlTGKG2nCAah
#            apGHShjghpCsASGo+qk7/af/ZrRoJEj2eeu8MCLBcdyd5MOZhf/xr3wCXIZItxCJ
#            P2qyPDg8s6umv6oW7nsKsy0qUcovZTqp1XkAawIDAQABAoIBABsuO8Ap3RGtSLwx
#            ZbzMjbtOU04kRyMSqat1EkWfLczxsei5K05xc/zkxwzIiEteignTS3YW3SYk0SoB
#            ZBoPRLfAJN0b5vRgSe2OL8VdMOkB0UfpabXEK0OG0P7hGg2FlDCGPtzXBOfAzZLW
#            +FRy6fXvss4lRbKd1bbKf+5Kz9GHWy8gKWnpm9CXhnGvqCrxMkkBWuDOwpRK8VSx
#            NIUj6wZwtpSOqWJPLzB3ZCrLKhFxmaHA8cYZdiFp/5P/N5Hq+9zy+uFReCfhcr33
#            d7KgLnD1hnQdkuY7O2Jg9PTJUlxb41+W0WY4ZYW5igvtk8zirperuLbeHBbpQvsx
#            6CBx8akCgYEA9WZP9MF/joMHdtt0Mn663ycL9PEA233psnLghxeKNXR/n22MtK9Y
#            CAnHO9mNiBp7nUUDKRtGwsUytUQt0BcuhikxisY+WoeKv1lmLperz6Qv7n4TTN3D
#            7edX6lQVLV8Q0k26Cf6kKEf9Noy0Utz8AWEMzK9XwMzIVa5+RB14t9cCgYEA0GXM
#            z3MZvEe7IQnQGNvWzRFZ3lQEmpOUzzluOj+fBNh9A8v4+U5GAw7QQop5L5//rD7n
#            7DUhl5BoZOhUzdBTQr6q4rs05EBphPrwZgpGGDWXmmBzMD88fM5j1bKOC2c3ZqLs
#            TVOdWTsj+iNqvxnfvMYB6U5PdM06wVObM0Q+WY0CgYEAqOlxo7EE0d1S5/cKNi+R
#            stbDfNooI8Rx7a7WA26WMHOzuf5uyaeulNiYZf34dR86X6ak0xv98szUTE8XP5R1
#            kP5LowgWKQFskV3CEiQLKCHodU7omUI1p91M99IBvQzu87A6ffm7cW8=
#            -----END RSA PRIVATE KEY-----
eureka:
  client:
    serviceUrl:
      defaultZone: http://127.0.0.1:8700/eureka/
    registry-fetch-interval-seconds: 10
    healthcheck:
      enabled: true
  instance:
    lease-expiration-duration-in-seconds: 10
    lease-renewal-interval-in-seconds: 10

4.在linux目录“/home/wshop/service/config”下增加共享配置文件“base-dev.yml”:

文件内容比如:

# 配置hystrix
feign:
  hystrix:
    enabled: true

ribbon:
  ReadTimeout: 400000
  ConnectTimeout: 400000

# 配置hystrix
hystrix:
  metrics:
    enabled: true
  threadpool:
    default:
      coreSize: 101  #线程池核心线程数
  command:
    default:
      execution:
        isolation:
          thread:
            timeoutInMilliseconds: 400000 #超时时间,如果超时,则实现服务降级处理
      circuitBreaker:
        requestVolumeThreshold: 100  #当在配置时间窗口内达到此数量后,进行短路。默认20个
        sleepWindowInMilliseconds: 5000  #短路多久以后开始尝试是否恢复,默认5s
        errorThresholdPercentage: 50%  #出错百分比阈值,当达到此阈值后,开始短路。默认50%

management:
  endpoint:
    health:
      show-details: always
    web:
      exposure:
        include: hystrix.stream

4.run脚本启动,并访问测试

run脚本范例:

#!/bin/bash
#########################################################################
# File Name: run.sh
# Function:
# Author: Mason
# Version: V1.0
# Created Time: 28/1/2019 11:41:48
#########################################################################

# chkconfig: - 98 33
# description: Starts and stops the java project daemon \
#              used to provide some java jar packet services.

source /etc/profile

# base env parameters setting
BASEDIR=$(dirname $(readlink -f $0))
APPNAME=config-server
VERSION=1.0.0


JAVAOPT="-Xms256m -Xmx512m -XX:PermSize=128M -XX:MaxPermSize=256M"


# define some functions
get_pid(){
   PID=$(ps -ef|grep ${APPNAME} |grep "java" |grep -v grep |awk '{print $2}')
}

start(){
   if [ -z ${PID} ];then
      nohup java ${JAVAOPT} -Dlogging.config=${BASEDIR}/logback-spring.xml -D$APPNAME  -jar ${BASEDIR}/${APPNAME}-${VERSION}.jar --spring.config.location=${BASEDIR}/application.yml &>/dev/null &

      inter=1
      time=10
      i=0
      while ((i < time));do
         get_pid
         #if [ $(netstat -lntup|grep -c $PID) -le 1 ];then
          if((i>(time-2)));then
                if [ ${PID} ];then
                    echo "${APPNAME} started OK."
                    break
                else
                    sleep ${inter}
                    let i++
                fi
            else
                sleep ${inter}
                let i++
            fi
      done
      if ((i == time));then
         echo "${APPNAME} started FAIL in $((inter*time)) second!"
         exit 1
      fi
   else
      echo "${APPNAME} is still running with pid ${PID}!"
      exit 1
   fi
}

stop(){
   if [ ! -z ${PID} ];then
      kill -9 ${PID} && echo "${APPNAME} was killed."
   else
      echo "${APPNAME} is not running!"
      exit 1
   fi
}

restart(){
   stop
   start
}

status(){
   if [ ! -z ${PID} ];then
      echo "${APPNAME} is running with pid ${PID}"
   else
      echo "${APPNAME} is not running."
   fi
}

# the main program started
get_pid
case "$1" in
  start)
        start
        ;;
  stop)
        stop
        ;;
  restart)
        restart
        ;;
  status)
        status
        ;;
  *)
        echo $"Usage: $0 {start|stop|restart|status}"
        exit 2
esac
exit $?

http://192.168.60.235:8707/base-dev.yml

a8f9c7bf0dc7428078bfedbe16f314e7251.jpg

说明服务端已经启动成功;

二、客户端

1.在linux目录“/home/wshop/service/config”下增加共享配置文件“bootstrap.yml”:

其内内容如下:

spring:
  cloud:
    config:
      uri: http://127.0.0.1:8707/        #Config server的uri
      profile: dev                       #指定的环境
      name: base

启动客户端应用jar中增加配置:

/home/wshop/service/config/bootstrap.yml

完整启动命令:

nohup java ${JAVAOPT} -Dlogging.config=${BASEDIR}/logback-spring.xml -D$APPNAME  -jar ${BASEDIR}/${APPNAME}-${VERSION}.jar --spring.config.location=${BASEDIR}/application.yml,/home/wshop/service/config/bootstrap.yml &>/dev/null &

重新启动客户端,即实现客户端应用接入配置中心功能。

转载于:https://my.oschina.net/u/2322635/blog/3068561

淘客帝国V5.22稳定版,符合淘宝搜索新规范 后台管理全内置, 别的破解版没有的10大重点 1. 增加自定义页面整合 2. 增加OEM模板 两套 共15套模板 3. 增加文章整合 完整版后台 4. 增加图片延时加载 5. 修正API 新规则问题,改正搜索栏进入淘宝S8 6. 增加自定义广告一项 7. 增加伪静态设置 后台完全版 8. 伪原创功能 后台自由配置 9. 后台配置本地内置化 10. 整合淘宝页面,整合个性自定义页面多项功能 ------------------------------------------------ 【V5.23更新内容】 6月8日,更新了一些BUG:红色风模板内页仍然有搜索框的问题、API出错会输出代码的问题等。有需要者请更新。 处理淘宝新的修改问题,去除站内搜索改成进入淘宝搜索。 配置中心里顺序调整都不能及时同步到本地的BUG修复。 配置中心里增加新配置:页面和窗口设置。 喜**模板处理友情链接太多会失效的问题。 全站打开新窗口的设置,以及搜索开新窗口的设置。 搜索栏默认类别设置错误修复。 处理API调用失败重新刷新又正常了的问题 api商品 下架的商品,增加设置返回404或者是商品推荐列表 重新整理所有图片的alt属性,确保每个图片都有。 特约导购栏目部分连接失效的问题解决。 调整API调用判断,加强调用稳定性 调用文章时不调用织梦回收站里的文章。 discuz7.2未审核帖子也会调出来的问题处理。 伪静态开关统一放到自定义伪静态栏目里。 【V5.21更新内容】 增加了图片延迟加载功能 支持整合文章系统PHPwnd 后台增加开关,可开启所有内页直接跳转淘宝对应页面。跳转方式为301. 首页每个模块支持店铺 一个是"详情关键词自动锚链接"和"热门搜索关键词"不能限定类别ID 另一个是搜索商品的列表,希望能把关键词参数传递进子分类链接中 wordpress的整合BUG 类别不准确的问题。 搜索模板的LOGO设置问题。 返现比率排序 针对屏蔽调用函数的一些服务器增加处理,很多屏蔽了函数的服务器仍然可以用了。 充值框出错的问题,增加一个浮动充值框,增加 手机,游戏卡,旅行等充值。 红色主题首页商品显示兼容性,标题超长会导致错位。 默认模板的我的位置 ,类别和关键词连接没分开。 搜索栏类别列表自动识别当前类别 增加了调用API的函数,确保部分屏蔽函数的空间一样可以使用 支持wordpress文章的定时发布功能。 屏蔽蜘蛛功能改进,给蜘蛛返回404页面。 商品详情的大图也连接到淘宝。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值