记录windows11+wsl2环境搭配
点击创建win11安装,以使用usb方式制作启动盘 下载之后进行安装及配置启动盘(下一步下一步即可)WSL启用Window子系统及虚拟化 虚拟机平台只是hyper-v的部分功能,为了使用wsl2下的图形界面可视化,需要开启全部功能的hyper-v 打开 控制面版 访问 程序和功能 子菜单 打开或关闭Windows功能 选择适用于Linux的Windows子系统、 虚拟机平台与Hyper-V 点击确定 重启 升级wsl 以解决:Windows11 WSL 打开Ubuntu 报错 WslRegisterDistribution failed with error: 0x800701bc 下载 适用于 x64 计算机的 WSL2 Linux 内核更新包:https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi 然后安装升级包 配置wsl2为默认1wsl --set-default-version 2 wsl更新 使用指令:wsl --update 如果上述指令会很慢,可以在git...
Centos7升级Glibc-2.28
检查glibc版本1ldd --version 安装 glibc-2.28 编辑时间可能会很长,最好找个空闲时间来升级 123456789101112# 下载并解压 glibc-2.28$ yum install -y bison$ cd /usr/src/$ wget https://ftp.gnu.org/gnu/glibc/glibc-2.28.tar.gz$ tar -xzvf glibc-2.28.tar.gz$ cd glibc-2.28# 创建临时文件$ mkdir build && cd build$ ../configure --prefix=/usr --disable-profile --enable-add-ons --with-headers=/usr/include --with-binutils=/usr/bin# 这一步时, 如果发生如下错误, 则需要进行gcc & make的升级,否则进行最后一步【继续编译glibc】These critical programs are missing or too old: mak...
CompletableFuture
CompletableFuture 在Java8中,CompletableFuture提供了非常强大的Future的扩展功能,可以帮助我们简化异步编程的复杂性,并且提供了函数式编程的能力,可以通过回调的方式处理计算结果,也提供了转换和组合 CompletableFuture 的方法。 它可能代表一个明确完成的Future,也有可能代表一个完成阶段( CompletionStage ),它支持在计算完成以后触发一些函数或执行某些动作。 它实现了Future和CompletionStage接口 创建CompletableFuture supplyAsync 有 runAsync 无两者的区别在于是否返回result 执行 CompletableFuture.allOf() CompletableFuture.anyOf()两者的区别在于是否需要全部任务执行完在继续allOf是阻塞式的,需要全部future执行完才会继续anyOf则是有个执行完就ok调用get方法,得到结果值 回调函数 thenApply回调函数(callback) 当前阶段正常完成以后执行,而且当前阶...
jmeter连接jdbc
数据库驱动包下载与安装 示例: 连接mysql 下载connectorhttps://dev.mysql.com/downloads/connector/j/ 安装下载完成后解压放到jmeter的lib/ext下 重启jmeter JDBC的连接配置添加配置元件-JDBC Connection Configuration 参数详解 Variable Name for created pool:自己定义连接数据库的名称, 需要记住, 这里会在后续使用jdbc request中用到Database URL:数据库url,jdbc:mysql://主机ip或者机器名称:mysql监听的端口号/数据库名称,如:jdbc:mysql://localhost:3306/kyjurl后面的参数(可以不写)characterEncoding=utf8&useSSL=true&serverTimezone=UTC设置时区和编码格式JDBC Driver clas...
k8s之dnsPolicy应用场景
转自: https://help.aliyun.com/document_detail/188179.html?utm_content=g_1000230851&spm=5176.20966629.toubu.3.f2991ddcpxxvD1#title-b7y-d6a-bcy DNS原理和配置说明本文介绍Kubernetes集群中集群DNS服务原理,并针对不同场景介绍如何进行DNS策略配置。 背景信息K8S集群默认部署了一套DNS服务,通过kube-dns的服务名暴露DNS服务。你可执行以下命令查看kube-dns的服务详情。 1kubectl get svc kube-dns -n kube-system 预期输出: 12NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGEkube-dns ClusterIP 172.24.0.10 <none> 53/UDP,53/TCP,9153/TCP 27d K8S部署的D...
缓存的使用,开启gzip以及各种header的操作
Nginx里Header修改 修改Nginx默认Header 修改普通请求的HeaderNginx内置的模块暂时仅支持修改响应头,使用add_header。其中: add_header 来自内置模块ngx_http_headers_module,用于设置response header。参考:http://www.cnblogs.com/linxiong945/p/4174262.html 如果需要设置普通请求的request header,则需要单独安装headers-more-nginx-module模块。该模块提供了more_set_headers,more_set_input_headers分别用于设置请求、响应头。 示例: 12345678910location ~ .*\.(php|php5)?$ { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param LOG_ID $request_id; more_set_input_headers "...
自定义监控指标开发(五):整合Springboot和Prometheus实现自定义指标
我在第二章中有介绍使用koa整合Prometheus自定义指标,这里记录下整合Springboot和Prometheus实现自定义指标 要在Spring Boot中使用Micrometer-registry-prometheus记录QPS和响应时间,可以按照以下步骤操作 Spring-boot-starter-actuatorSpringBoot中的spring-boot-starter-actuator依赖已经集成了对Micrometer的支持,其中的metrics端点的很多功能就是通过Micrometer实现的,prometheus端点默认也是开启支持的,实际上actuator依赖的spring-boot-actuator-autoconfigure中集成了对很多框架的开箱即用的API,其中prometheus包中集成了对Prometheus的支持,使得使用了actuator可以轻易地让项目暴露出prometheus端点,使得应用作为Prometheus收集数据的客户端,Prometheus(服务端软件)可以通过此端点收集应用中Micrometer的度量数据。 整合M...
京东混沌演练实践
摘自: https://developer.jdcloud.com/article/2725 https://developer.jdcloud.com/article/2953 混沌工程介绍什么是混沌工程混沌工程是通过主动制造故障场景并根据系统在各种压力下的行为表现确定优化策略的一种系统稳定性保障手段,简单说就是通过主动注入故障的方式、提前发现问题,然后解决问题规避风险。 为什么要进行混沌演练随着互联网业务发展,微服务架构、分布式架构和虚拟化容器技术的广泛普及,软件架构的复杂度在不断提升,服务之间的依赖所带来的不确定性也成指数级增长,在这样的服务调用网中,任何一环出现的正常或者异常的变化,都有可能对其他服务造成类似蝴蝶效应一般的影响。目前营销体系的服务量级不断增加,整体链路增长以及数据流转复杂,对整个系统的可用性、稳定性挑战也越来越大,所以引入混沌演练,主动找出系统中的脆弱环节,然后针对性地进行加固、防范,从而避免故障发生时所带来的严重后果,进一步提升业务系统的高可用,提高业务系统应急保障能力。 混沌演练的价值应用混沌演练可以对系统抵抗扰动并保持正常运作的能力进行校验和评估...
自定义监控指标开发(一):基于Docker搭建Prometheus+Grafana
摘自:https://juejin.cn/post/7097166804044218405 安装运行Prometheus(docker版)Grafana是一个开源的功能丰富的数据可视化平台,通常用于时序数据的可视化。它内置了多种数据源的支持 下载镜像包123docker pull prom/node-exporterdocker pull prom/prometheusdocker pull grafana/grafana 启动node-exporter12345docker run -d -p 9100:9100 \ -v "/proc:/host/proc:ro" \ -v "/sys:/host/sys:ro" \ -v "/:/rootfs:ro" \ prom/node-exporter 访问url: http://127.0.0.1:9100/metrics 效果如下: 这些都是收集到的数据,有了它就可以做数据展示了。 启动prometheus新建目录 prometheus,编辑配置文件p...
自定义监控指标开发(六):精简Prometheus指标减少资源占用
前言随着 Prometheus 监控的组件、数量、指标越来越多,Prometheus 对计算性能的要求会越来越高,资源占用也会越来越高。 在这种情况下,要优化 Prometheus 性能, 优化存储占用. 第一时间想到的可能是各种 Prometheus 的兼容存储方案, 如 Thanos 或 VM、Mimir 等。但是实际上虽然集中存储、长期存储、存储降采样及存储压缩可以一定程度解决相关问题,但是治标不治本。 真正的本,还是在于指标量(series)过于庞大。 治本之法,应该是减少指标量。有 2 种办法: 解决高基数问题 根据实际使用情况,只保留(keep)展示(Grafana Dashboards)和告警(prometheus rules)会用到的指标。 高基数问题什么是基数(Cardinality)?基数的 基本定义 是指一个给定集合中的元素的数量。 在Prometheus中指代series 的基数 (High Cardinality) 在 Prometheus 和可观察性的世界里,标签基数 是非常重要的,因为它影响到你的监控系统的性能和资源使用。 下面这张...
