自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(19)
  • 收藏
  • 关注

原创 Grafana插件—simpod-json-datasource的安装及使用

需求:grafana中的dashboard的metric需要根据不同的参数进行逻辑处理后获取可选项如:不同的用户访问该dashboard,某指标需要根据该用户信息,返回不同的可选项。这里,我们就需要simpod-json-datasource这一插件来帮助实现。1. 安装simpod-json-datasource1.1 本地安装本地安装十分简单,只需要使用grafana-cli工具,运行grafana-cli plugins install simpod-json-datasource然

2020-12-22 17:32:48 2177

原创 git tag不能显示所有tags

git fetch --tagsgit tag

2020-12-02 10:00:58 2178

原创 grafana后端权限校验源码分析及二次开发

从github上可以直接下载grafana的开源代码。打开后如果有飘红,可以试一下go mod download。然后来看代码。pkg包中为主要后端部分的代码。其中,pkg/cmd/grafana-server/main.go为入口文件;pkg/services包中为具体的逻辑处理;pkg/api中为所有的接口处理;pkg/middleware/middleware.go中为所有请求进行逻辑处理前的权限校验。可以看到,主要有这几种校验方式:switch { case initContextWit

2020-11-04 10:39:26 2169 1

原创 go常用方法

读文件b,err:=ioutil.ReadFile("action.log")if err!=nil{ fmt.Print(err)}fmt.Println(string(b))调用脚本command := "./src/load.sh"+percentcmd := exec.Command("/bin/bash","-c",command)var out bytes.Buffercmd.Stdout = &outerr: = cmd.Run()fmt.Printf.

2020-09-17 19:52:08 143

原创 K8S client-go Patch

1. client-go 安装$ go get k8s.io/client-go/…$ go get -u k8s.io/apimachinery/…2. 在 k8s 集群外使用Patch更新node标签func PatchNodeLabel() { // 配置 k8s 集群外 kubeconfig 配置文件 var kubeconfig *string kubeconfig = flag.String("kubeconfig", "/Users/xiaozhao/.kube/qz-ci.c

2020-09-16 15:52:47 2427

原创 删除磁盘上 .DS_Store

需要删除磁盘上的 .DS_Store,可以使用下面的命令来删除当前目录及其子目录下的所有.DS_Store 文件:find . -name '*.DS_Store' -type f -delete

2020-08-16 20:00:23 173

原创 Incorrect string value: ‘\xE6\xB5\x81\xE8\xA1\x8C‘ for column ‘label‘ at row 1

MySQL数据库插入中文失败,考虑是否为编码问题修改单个列编码属性alter table music change label label varchar(50) character set utf8;插入成功

2020-08-03 14:23:13 410

原创 mysql存在值加1,不存在插入

目的:在user_id和commodity_id同时相同的情况下,num值+1,否则的话插入新数据。alter table shopping_cart add unique key new_uk_name (user_id,commodity_id)创建唯一索引alter table shopping_cart change id id BIGINT (20) AUTO_INCREMENT COMMENT 'id';设置id自增,否则会报错id没有默认值insert into sho.

2020-07-30 23:26:51 880

转载 Mysql不能写入中文

转自:https://blog.csdn.net/hon_3y/article/details/60875742①: 检查数据表所有字段的状态show full columns from 表名;②:发现Collation项非utf8,修改! 【两处的字段名要相同的】alter table 表名 change 字段名 字段名 varchar(100) character set utf8 collate utf8_unicode_ci not null default '';...

2020-07-30 13:54:42 284 1

原创 生产环境服务器变慢,诊断思路和性能评估

查看范围指令整机topcpuvmstat内存free硬盘df -h硬盘IOiostat网络IOIfstat整机: top(update:系统性能命令的精简版)CPU: vmstat查看所有CPU核信息 : mpstat -P ALL 2每个进程使用cpu的用量分解信息:pidstat -u 1 -p 进程编号内...

2020-02-20 14:04:03 150

转载 Java四种访问权限

一、访问权限简介访问权限控制: 指的是本类及本类内部的成员(成员变量、成员方法、内部类)对其他类的可见性,即这些内容是否允许其他类访问。Java 中一共有四种访问权限控制,其权限控制的大小情况是这样的:public > protected > default(包访问权限) > private ,具体的权限控制看下面表格,列所指定的类是否有权限允许访问行的权限控制下的内容:...

2019-09-10 15:28:24 993

原创 TCP连接管理

三次握手客户机的TCP首先向服务器的TCP发送一个连接请求报文段(SYN=1,seq = x)服务器的TCP收到连接请求报文段后,如同意建立连接,就向客户机发回确认,并为该TCP连接分配TCP缓存和变量。(SYN=1,ACK=1,seq=y,ack=x+1)当客户机收到确认报文段后,还要向服务器给出确认,并且也要给该连接分配缓存和变量。(ACK=1,seq = x+ 1,ack = y +...

2019-09-08 22:53:46 140

原创 Java运行时数据区域

程序计数器程序计数器是一块较小的内存空间,它可以看作是当前线程所执行的字节码的行号指示器。在虚拟机的概念模型里(仅是概念模型,各种虚拟机可能会通过一些更高效的方式去实现),字节码解释器工作时就是通过改变这个计数器的值来选取下一条需要执行的字节码指令,分支、循环、跳转、异常处理、线程恢复等基础功能都需要依赖这个计数器来完成。由于Java虚拟机的多线程是通过线程轮流切换并分配处理器执行时间的...

2019-09-02 15:41:19 89

转载 爬虫与反爬的常见套路

【当前常见的爬虫、反爬虫“套路”】【一些网站的反爬虫手段】【1】亚马逊亚马逊在一个爬虫的请求只包含ip,不包含cookie的情况下,会先允许爬取。在短时间内请求次数达到一定次数之后(如16个线程,每个线程各20个请求,每秒的请求数达到3个以上),会开始出现爬取失败的情况,且爬取失败的情况出现频率会逐渐增加,不会一下都访问不了。请求被阻止后会来到验证码页面进行人机识别的确认。若攻破验证码...

2019-08-29 20:59:47 911

原创 Java垃圾收集机制(二)垃圾收集算法

标记-清除算法分为”标记“和”清除“两个阶段:首先标记出所有需要回收的对象,在标记完成后统一回收所有被标记的对象。缺点:标记和清除两个过程的效率都不高;标记清除后会产生大量不连续的内存碎片,空间碎片太多可能会导致以后在程序运行过程中需要分配较大对象时,无法找到足够的连续内存而不得不提前触发另一次垃圾收集动作。复制收集算法将可用内存按容量划分为大小相等的两块,每次只使用其中的一块。当这...

2019-08-22 18:00:10 85

原创 Java垃圾收集机制(一)对象存活判定算法

当需要排查各种 内存溢出、内存泄漏 问题时,当垃圾收集成为系统达到更高并发量的瓶颈时,我们就需要对于这些“自动化”的技术实施必要的监控和调节。Java堆和方法区内存的分配和回收都是动态的,垃圾收集器所关注的就是这部分内存。判断哪些内存需要回收,有以下两种方法。引用计数算法给对象中添加一个引用计数器,每当有一个地方引用它时,计数器值就加1;当引用失效时,计数器值就减1;任何时刻计数器为0的...

2019-08-22 16:59:39 148

原创 优化SQL语句一般步骤

1. 通过show status命令了解各种SQL的执行频率即查询到当前session执行select、insert、update、delete操作的次数,了解到当前数据库的应用是以更新为主还是以查询为主,以及各种类型的SQL大致的执行比例是多少。对于事务型的应用,通过Com_commit和Com_rollback可以了解事务提交和回滚的情况,对于回滚操作非常频繁的数据库,可能意味着引用编写存...

2019-06-07 15:52:56 297

原创 面试结尾:你还有什么想问我的?

1. 询问岗位的职责和日常工作内容在问到岗位职责时,一定要结合面试中已经了解的信息和面试前投递时的岗位描述信息,不能直接问日常工作职责,表现的一无所知就演过了,控制,要控制。#示例:之前了解到这个岗位是做XXX的工作,可能需要负责AAA和BBB两部分,我想了解如果我能入职的话,主要工作内容可能偏向什么方向呢2. 询问岗位的能力要求问到岗位要求时,可以结合自身的特质和官方给出的工作要求来问...

2019-06-05 15:45:38 1372

原创 MySQL存储引擎(表类型)的区别和选择

MySQL存储引擎(表类型)的区别和选择1. MyISAM2. InnoDB3. MEMORY4. MERGE5. TokuDB6. 如何选择1. MyISAMMyISAM是MySQL默认的存储引擎,不支持事务、也不支持外键,其优势是访问速度快,对事务完整性没有要求或者以SELECT、INSECT为主的应用基本上都可以使用这个引擎来创建表。每个MyISAM在磁盘上存储成3个文件,其文件名都和...

2019-05-28 14:36:10 283

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除