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

做网站的术语做广告推广哪个平台好

做网站的术语,做广告推广哪个平台好,广州金融网站建设,怎样做水果外卖加盟网站在使用spring config server服务的时候发现在启动之后的一段时间内控制台会抛出异常,spring admin监控爆红,控制台信息如下 --2024-06-26 20:38:59.615 - WARN 2944 --- [oundedElastic-7] o.s.c.c.s.e.JGitEnvironmentRepository : Error occured …

在使用spring config server服务的时候发现在启动之后的一段时间内控制台会抛出异常,spring admin监控爆红,控制台信息如下

--2024-06-26 20:38:59.615  - WARN 2944 --- [oundedElastic-7] o.s.c.c.s.e.JGitEnvironmentRepository    : Error occured cloning to base directory.
-
org.eclipse.jgit.api.errors.TransportException: git@gitee.com:xxx/app-config.git: socket is not establishedat org.eclipse.jgit.api.FetchCommand.call(FetchCommand.java:254) ~[org.eclipse.jgit-5.1.3.201810200350-r.jar:5.1.3.201810200350-r]at org.eclipse.jgit.api.CloneCommand.fetch(CloneCommand.java:306) ~[org.eclipse.jgit-5.1.3.201810200350-r.jar:5.1.3.201810200350-r]at org.eclipse.jgit.api.CloneCommand.call(CloneCommand.java:200) ~[org.eclipse.jgit-5.1.3.201810200350-r.jar:5.1.3.201810200350-r]

配置的 spring.cloud.config.server.git.uri=git@gitee.com:xxx/{application}-config.git采用的是多微服务git仓库隔离的方式进行管理,但是我当前的集群中仅仅启动了spring cloud config server节点,并且集群中并不存在名字为app的服务,通过断点代码查询发现是actuate health功能导致的,在org.springframework.cloud.config.server.config.EnvironmentRepositoryConfiguration.ConfigServerActuatorConfiguration根据配置spring.cloud.config.server.health.enabled实例化了一个health bean,而该值在默认情况下为true

  @ConditionalOnClass({AbstractHealthIndicator.class})@ConditionalOnProperty(value = {"spring.cloud.config.server.health.enabled"},matchIfMissing = true)protected static class ConfigServerActuatorConfiguration {protected ConfigServerActuatorConfiguration() {}@Beanpublic ConfigServerHealthIndicator configServerHealthIndicator(EnvironmentRepository repository) {return new ConfigServerHealthIndicator(repository);}}

ConfigServerHealthIndicator实现了HealthIndicator接口,在当前节点内,在eureka调用/actuator/health 的时候就会执行(之前一一直理解为定时器执行),它的health check如下

@Overrideprotected void doHealthCheck(Health.Builder builder) throws Exception {builder.up();List<Map<String, Object>> details = new ArrayList<>();for (String name : this.repositories.keySet()) {Repository repository = this.repositories.get(name);String application = (repository.getName() == null) ? name: repository.getName();String profiles = repository.getProfiles();try {Environment environment = this.environmentRepository.findOne(application,profiles, repository.getLabel(), false);HashMap<String, Object> detail = new HashMap<>();detail.put("name", environment.getName());detail.put("label", environment.getLabel());if (environment.getProfiles() != null&& environment.getProfiles().length > 0) {detail.put("profiles", Arrays.asList(environment.getProfiles()));}if (!CollectionUtils.isEmpty(environment.getPropertySources())) {List<String> sources = new ArrayList<>();for (PropertySource source : environment.getPropertySources()) {sources.add(source.getName());}detail.put("sources", sources);}details.add(detail);}catch (Exception e) {logger.debug("Could not read repository: " + application, e);HashMap<String, String> map = new HashMap<>();map.put("application", application);map.put("profiles", profiles);builder.withDetail("repository", map);builder.down(e);return;}}builder.withDetail("repositories", details);}@PostConstructpublic void init() {if (this.repositories.isEmpty()) {this.repositories.put("app", new Repository());}}

在bean 构造完成的时候会执行一个init方法,直接推了一个app 进去,这就是罪魁祸首,可以把spring.cloud.config.server.health.enabled设置为false关闭health的检查或者配置一个spring.cloud.config.server.health.repositories配置一个真实的应用比如

spring.cloud.config.server.health.repositories.fxdanmugw-config.label=master
spring.cloud.config.server.health.repositories.fxdanmugw-config.name=xxx

排查这个问题的时候还在好奇为什么spring会提供这种能力?不过一想,确实有存在的必要,比如仓库中提供的配置被不小心删除了,微服务那边自己本身有一套默认配置,默认配置也可以让微服务成功启动,但是提供的服务存在差异,此时从服务状态上是很难直接预警的,但是如果有这个能力之后,endpoint 就能提供对应监视仓库文件是否存在,且配合Grafana Prometheus 提供预警能力,另外config server完全可以给客户端提供配置服务,比如游戏的配置服务,还自带版本管理,是一个有效的使用场景

我明确的记得在使用单个固定的git仓库的时候这个配置点是可以正常进行health check的,为什么改为多项目单仓库隔离就会出问题?真是奇怪这个需要进一步探究,又或者在启动的时候直接吧app这个给移除?

对应的官方描述在这里 health_indicator
在这里插入图片描述

http://www.hrbkazy.com/news/20685.html

相关文章:

  • 大陆用户禁止访问app郑州网站seo外包
  • 镇江网站seo外包百度公司招聘2022年最新招聘
  • 流量网站制作最新小组排名
  • 北京做网站开发公司电话培训课程设计
  • 专门代做毕设的网站深圳网站建设找哪家公司好
  • 做外贸相关的网站西安关键词排名首页
  • 做vip兼职设计师的网站有哪些万能搜索网站
  • 企业所得税税率5% 10% 25%郑州seo管理
  • 做医药行业找药的网站seo品牌
  • 免费门户网站源码推广手段
  • 惠州网站建设制作营业推广怎么写
  • 网站建设和管理中小企业网络营销现状
  • 查询公司信息去哪里查成都seo经理
  • b2c是什么意思的缩写厦门seo关键词
  • 网站备案在哪个网站持续优化完善防控措施
  • 校园网站建设软件搭建网站步骤
  • wordpress地区分站如何建造一个网站
  • 做图神器的网站百度知道官网首页登录入口
  • 微网站 案例seo领导屋
  • 北京设计网站的公司哪家好阿里云域名注册官网网址
  • 源码做网站谷歌chrome浏览器官方下载
  • 苹果cms源码廊坊seo排名外包
  • 域名被墙查询检测旺道网站排名优化
  • 无锡做网站中企动力创建自己的网站怎么弄
  • 腾讯域名怎么建设网站中国营销网官网
  • 青岛建网站公司如何自己创建网址
  • 简+wordpress+主题百家号seo
  • 合肥做网站建设公司国内b2b十大平台排名
  • 免费刷网站百度关键词跨境电商平台哪个最好最可靠
  • dz门户做视频网站深圳百度公司地址在哪里