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

网站建设业动态网站建设构造学习

网站建设业动态,网站建设构造学习,做利基网站用备案,做产品封面的网站项目上线后#xff0c;除了能保障正常运行以外#xff0c;也需要服务运行的各个指标进行监控#xff0c;例如 服务器CPU、内存使用占比#xff0c;Full GC 执行时间等#xff0c;针对一些指标出现异常#xff0c;可以加入一些报警机制能及时反馈给开发运维。这样#xf…项目上线后除了能保障正常运行以外也需要服务运行的各个指标进行监控例如 服务器CPU、内存使用占比Full GC 执行时间等针对一些指标出现异常可以加入一些报警机制能及时反馈给开发运维。这样对于一些突发异常能提前预知、并及时修复避免服务宕机造成的损失。 针对 SpringBoot 项目Spring 团队提供了对应 stater spring-boot-actuator 模块通过 HTTP endpoints 来获取 SpringBoot 项目中的审计、健康状况以及一些配置项、容器注册 bean 以及heapdump 等信息 actuator 通过开放 http 接口方式来表示各个指标详情但这种方式并不直观并且针对一些指标阈值并没有提供一些报警规则因此需要引入另外一个服务Prometheus 专用于事件监视以及报警的开源工具。 Prometheus 指标是基于事件戳方式进行记录的通过 key、value 方式存储记录指标在时间维度方面颗粒度更小除了Prometheus 外针对指标可视化还需要一个工具Grafana专用于数据查询、以及指标可视化 SpringBoot 创建一个 SpringBoot 项目加入 spring-boot-starter-actuator 以及 micrometer-registry-prometheus 依赖对外暴露 /actuator/permetheus 端口服务让Prometheus 用于数据抓取 项目 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 https://maven.apache.org/xsd/maven-4.0.0.xsdmodelVersion4.0.0/modelVersionparentgroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-parent/artifactIdversion2.1.8.RELEASE/versionrelativePath/ !-- lookup parent from repository --/parentgroupIdcom.example/groupIdartifactIddemo/artifactIdversion0.0.1-SNAPSHOT/versionnamedemo/namedescriptionDemo project for Spring Boot/descriptionpropertiesjava.version1.8/java.version/propertiesdependenciesdependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-web/artifactId/dependencydependencygroupIdcom.alibaba/groupIdartifactIddruid-spring-boot-starter/artifactIdversion1.1.17/version/dependencydependencygroupIdmysql/groupIdartifactIdmysql-connector-java/artifactIdversion8.0.15/version/dependencydependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-data-jpa/artifactId/dependencydependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-actuator/artifactId/dependencydependencygroupIdio.micrometer/groupIdartifactIdmicrometer-registry-prometheus/artifactId/dependencydependencygroupIdorg.projectlombok/groupIdartifactIdlombok/artifactIdoptionaltrue/optional/dependencydependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-test/artifactIdscopetest/scope/dependency/dependenciesbuildpluginsplugingroupIdorg.springframework.boot/groupIdartifactIdspring-boot-maven-plugin/artifactIdversion2.1.8.RELEASE/versionconfigurationexcludesexcludegroupIdorg.projectlombok/groupIdartifactIdlombok/artifactId/exclude/excludes/configuration/plugin/plugins/build/project 服务 yml 配置项除了将 actuator 的 metrics、health 等接口暴露给 prometheus 服务外服务还加入了 druid 数据连接池监控 MYSQL数据库的运行密码是经过 Druid 加密后处理的。 server:port: 8082spring:application:name: metricsLocalAppredis:host: localhostport: 6379password: 123456datasource:url: jdbc:mysql://localhost:3306/xxx?useUnicodetruecharacterEncodingutf-8serverTimezoneAsia/ShanghaiuseSSLfalseusername: rootpassword: YjHh36LKJ62yxE9RhYVQLDDWK2QseZ/S7OgtBC7sv1Yzi6YLUOZMN8BcFrAbzLJmjXtmXW2f9nISSReTobqZQdriver-class-name: com.mysql.cj.jdbc.Driver# 开启druid驱动type: com.alibaba.druid.pool.DruidDataSourcedruid:filter:config:enabled: true# 初始化建立物理连接个数initial-size: 3# 最凶奥连接池min-idle: 3# 连接池最大连接数max-active: 20# 获取连接时最大等待时间单位毫秒max-wait: 60000# 申请连接的时候检测如果空闲时间大于timeBetweenEvictionRunsMillis执行validationQuery检测连接是否有效。test-while-idle: true# 既作为检测的间隔时间又作为testWhileIdel执行的依据time-between-connect-error-millis: 60000# 销毁线程时检测当前连接的最后活动时间和当前时间差大于该值时关闭当前连接min-evictable-idle-time-millis: 30000# 用来检测连接是否有效的sql 必须是一个查询语句# mysql中为 select x# oracle中为 select 1 from dualvalidation-query: select x# 申请连接时会执行validationQuery检测连接是否有效,开启会降低性能,默认为truetest-on-borrow: false# 归还连接时会执行validationQuery检测连接是否有效,开启会降低性能,默认为truetest-on-return: false# 是否缓存preparedStatement,mysql5.5建议开启pool-prepared-statements: true# 当值大于0时poolPreparedStatements会自动修改为truemax-pool-prepared-statement-per-connection-size: 20# 合并多个DruidDataSource的监控数据use-global-data-source-stat: false# 配置扩展插件filters: stat,wall,slf4j# 通过connectProperties属性来打开mergeSql功能慢SQL记录connect-properties: druid.stat.mergeSqltrue;druid.stat.slowSqlMillis2000# 定时输出统计信息到日志中并每次输出日志会导致清零reset连接池相关的计数器。time-between-log-stats-millis: 300000# 配置DruidStatFilterweb-stat-filter:enabled: trueurl-pattern: /*exclusions: *.js,*.gif,*.jpg,*.bmp,*.png,*.css,*.ico,/druid/*# 配置DruidStatViewServletstat-view-servlet:# 是否启用StatViewServlet监控页面默认值为false考虑到安全问题默认并未启动如需启用建议设置密码或白名单以保障安全url-pattern: /druid/*# 禁用HTML页面上的“Reset All”功能reset-enable: false # # druid登录名login-username: admin# 登录密码login-password: adminenabled: trueconnection-properties: config.decrypttrue;config.decrypt.keyMFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBAOuIUu/iVnxlfq9EYCmu9CVVEYrjwMjI8/DZ7zMwVnLov9cNxRnK3TV94SDL6p5C0EjFx1NKW5ntJwVoe8jZxV8CAwEAAQmanagement:server:port: 9001 # 开启 actator 服务endpoints:web:exposure:include: * # 暴露 metrics 端口endpoint:metrics:enabled: true # 配置 prometheus 服务prometheus:enabled: truemetrics:export:prometheus:enabled: truetags:application: ${spring.application.name} 此外SpringBoot启动入口将服务名注册到 micrometer 中的 application用于prometheus 数据抓取 SpringBootApplication public class DemoApplication {public static void main(String[] args) {SpringApplication.run(DemoApplication.class, args);}BeanMeterRegistryCustomizerMeterRegistry configurer(Value(${spring.application.name}) String applicationName){return (registry) - registry.config().commonTags(application,applicationName);} }项目启动浏览器输入 http://localhost:9001/actuator/prometheus就可以看到如下基本指标包含jvm、tomcat 以及 系统cpu、线程及内存信息 Prometheus 配置 以下操作都以假设你的电脑已经安装好 Docker 工具为前提 本机环境 OS Windows10 1从dockerhub 拉取 prometheus 镜像 docker pull prom/prometheus:v2.37.52在合适文件中创建 prometheus.yml 配置文件 global: # 数据抓取频率scrape_interval: 60s# 数据评估频率evaluation_interval: 60s# 抓取配置项 scrape_configs:# 指定 springboot name标签- job_name: metricsLocalApp# 设定metrics 的路径metrics_path: /actuator/prometheusstatic_configs:# 配置目标关联 host如果是本机的话建议用 内网ip而不用 localhost- targets: [192.168.0.108:9001]3打开 terminal启动刚刚拉取的 permetheus 镜像注意 D:/programCoding/Docker/permetheus/config/prometheus.yml 为我的电脑中 permetheus 的安装路径这里目的是要挂载到镜像中的配置文件夹中 docker run -d -p 9090:9090 -v D:/programCoding/Docker/permetheus/config/prometheus.yml:/etc/prometheus/prometheus.yml prom/prometheus:v2.37.5镜像启动成功后浏览器输入http://localhost:9090点击上方菜单栏中的 status 下选框点击 Targets就能看到类似于下面的页面效果第一个对应上文中的 SpringBoot 项目 Grafana 安装 prometheus 配置完成之后下面需要配置 Grafana 这里也是借助 Docker 镜像 docker 拉取 grafana 镜像 docker pull grafana/grafana:9.2.13运行镜像 docker run -d -p 3000:3000 --namegrafana -v D:/programCoding/Docker/grafana/storage:/var/lib/grafana grafana/grafana:9.2.13启动成功后浏览器输入http://localhost:3000Grafana 初始账号和密码都为 admin 首先创建数据源 然后创建dashboard 选取数据源指定metrics 指标 然后 Grafana 就能根据你的设置生成N个可视化面板。
http://www.dnsts.com.cn/news/190412.html

相关文章:

  • 电子商务网站建设与管理pdf下载企业移动网站品牌
  • 做网站用到什么开发语言个人微信小程序免费制作
  • 成考做那个网站的题比较好专业搜索引擎seo合作
  • wordpress编辑首页网络优化推广
  • 1688货源网登录wordpress谷歌seo
  • 如何开发一个软件seo网站关键词优化哪家好
  • 招聘信息网站建设网站开发工作方案
  • 成都公租房官方网站win7电脑做网站服务器
  • 部门网站建设方案新品发布会视频
  • 做百度快照要先有网站吗3合1网站建设价格
  • 天津网站建设代理商本公司经营网站建设
  • 网站建设初步策划方案wordpress插件根目录
  • 导航网站 win8风格宽带技术网网站
  • 岳阳高端网站建设手机系统网站
  • 外贸网站建设多少钱长沙seo
  • php mysql 网站建设特价服务器
  • 湟源县wap网站建设公司wordpress 无法创建目录 linux
  • 国家开发银行网站高端瓶装水品牌
  • 网站 做英文 翻译 规则装修设计用什么软件
  • 合肥seo网站建设一般通过什么判断鱼的年龄
  • 网页模板下载工具seo1短视频网页入口营销
  • 做跨境电商哪个平台好seo的作用
  • 怎样购买网站温州网络科技技术有限公司
  • 114百事通做网站600哈尔滨在线制作网站
  • 智慧团建网站登录平台pc端网站app怎么做的
  • 网站建设服务便宜网易企业邮箱入口官网
  • iis网站重定向设置微信小程序聊天室源码
  • 沈阳网站建设策划方案进口博览会2022
  • 常州企业建站系统模板六安市公司网站建设
  • 如何代做网站网站怎么做万词