java生产环境CPU 100%排查
排查思路1、查出消耗CPU最高的进程PID
1执行 top -c ,列出进程运行信息表,再按P,进程就会按照cpu使用率从高到底排序,记录最高的PID
2、根据PID查出消耗CPU最高的进程
1执行 top -Hp PID ,列出该进程下的线程运行信息表,按下P,线程会从高到低排序,记录最高线程号
3、根据得到的线程号,进行跟踪排查
12执行 jstack 线程号 > ./线程号.stack执行 cat 线程号.stack | grep -A 10 进程号的16进制,查找该线程号的日志信息,定位问题
print输出到文件
123456789f = open("D:/change_audit_task/auditchange.log","a") try: app = daily_aduitchange() app.audit_change() except Exception as e: print(datetime.now(),file=f) print(e,file=f)print(" ")f.close()
其中"a"表示追加,"w"为覆盖
慢查询分析
mysql慢查询日志开启mysql 提供一种慢查询日志记录,用于记录响应时间超过阈值的SQL语句(默认是关闭的)。
1234567891011121314151617181920212223临时开启:mysql> show variables like '%slow_query_log%';+---------------------+-----------------------------------------------+| Variable_name | Value |+---------------------+-----------------------------------------------+| slow_query_log | OFF || slow_query_log_file | /home/WDPM/MysqlData/mysql/DB-Se ...
微信多开
wechat 多开用python写的多开
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182#coding: UTF-8import osimport subprocessimport tkinterfrom tkinter import messageboxfrom tkinter import filedialog#关闭提示def close_app(): if messagebox.askokcancel("提示","确定要退出吗?"): window.destroy() #销毁#获取wechat路径def OpenFilePath(): file_path = filedialog.askdirectory() #获取路径 if file_path ...
butterfly主题配置背景音乐
安装插件基于hexo-tag-aplayer这个插件,所以先安装。
1npm install hexo-tag-aplayer
主题文件配置在_config.butterfly.yml 添加以下配置项:在主题配置文件中,将aplayerInject 的两个参数都设置为true
123aplayerInject: enable: true per_page: true
为了播放不被打断,将pjax开启
12pjax: enable: true
在inject 处插入代码
12345inject: head: bottom: - <div class="aplayer no-destroy" data-id="547187496" data-server="netease" data-type="playlist" data-fixed="true" data-mini="true" data-listFolded="false&qu ...
文本三剑客之grep
用法:
grep [-acinv] [--color=auto] '匹配内容' filename
常用选项:
123456789101112131415-E: 开启扩展正则表达式。-i: 忽略大小写。-v: 反选,只打印匹配不到的。-n: 显示行号。-w: 被匹配的文本只能是单词,而不是单词的某一部分,即精确匹配。-c: 显示总共有多少行被匹配到,同时使用-cv则显示有多少行没有被匹配到。-o: 只显示被模式匹配到的字符串。-l: 列出包含匹配内容的文件名称。-L: 列出不包含匹配内容的文件名称。-d: 指定查到的是目录而非文件。-R/-r: 递归查询,配合-l可以递归查询某目录下包含匹配内容的文件名称。--color: 将匹配到的内容高亮显示。-A n: 显示匹配到的字符串所在行及其后n行。-B n: 显示匹配到的字符串所在行及其前n行。-C n: 显示匹配到的字符串所在行及其前后各n行。
举例:
12# grep root /etc/passwd
磁盘格式化为LVM挂载
磁盘格式化为LVM挂载查看新加硬盘12345678910111213141516171819202122232425262728293031323334[root@localhost ~]# fdisk -lDisk /dev/sda:30 GiB,32212254720 字节,62914560 个扇区单元:扇区 / 1 * 512 = 512 字节扇区大小(逻辑/物理):512 字节 / 512 字节I/O 大小(最小/最佳):512 字节 / 512 字节磁盘标签类型:dos磁盘标识符:0xef4acff5设备 启动 起点 末尾 扇区 大小 Id 类型/dev/sda1 * 2048 2099199 2097152 1G 83 Linux/dev/sda2 2099200 62914559 60815360 29G 8e Linux LVMDisk /dev/sdb:20 GiB,21474836480 字节,41943040 个扇区单元:扇区 / 1 * 512 = 512 字节扇区大小(逻辑/物理):512 ...
kubernetes基础
Kubernetes 系统基础Kubernetes介绍什么是Kubernetes?Kubernetes是容器集群管理系统,是一个开源的平台,可以实现容器集群的自动化部署、自动扩缩容、维护等功能。使用Kubernetes可以:
自动化容器的部署和复制
随时扩展或收缩容器规模
将容器组织成组,并且提供容器间的负载均衡
很容易地升级应用程序容器的新版本
节省资源,优化硬件资源的使用
提供容器弹性,如果容器失效就替换它,等等…
Kubernetes特点
便携性:支持公有云、私有云、混合云、多重云(multi-cloud)
可扩展:模块化、插件化、可组合、可挂载
自修复:自动部署,自动重启,自动复制,自动伸缩扩展
Kubernetes特性Kubernetes是一种用于在一组主机上运行和协同容器化应用程序的系统,旨在提供可预测性、可扩展性与高可用的性的方法来完全管理容器化应用程序和服务的生命周期的平台。它具有以下几个重要的特性:
自动装箱:构建于容器之上,基于资源依赖及其他约束自动完成容器部署且不影响其可用性,并通过调度机制混合关键型应用和非关键型应用的工作负载于同一节点以提升资源利用率。 ...
dockerfile详解
dockerfile说明Dockfile是一种被Docker程序解释的脚本,它由一条条的指令组成,每条指令对应Linux下面的一条命令。Docker程序将这些Dockerfile指令翻译成真正的Linux命令。Dockerfile有自己书写格式和支持的命令,Docker程序解决这些命令间的依赖关系,类似于Makefile。Docker程序将读取Dockerfile,根据指令生成定制的image。相比image这种黑盒子,Dockerfile这种显而易见的脚本更容易被使用者接受,它明确的表明image是怎么产生的。有了Dockerfile,当我们需要定制自己额外的需求时,只需在Dockerfile上添加或者修改指令,重新生成image即可,省去了敲命令的麻烦。
总的来说:
Dockerfile分为四部分:基础镜像信息、镜像创建者信息、镜像操作指令、容器启动执行指令。
一开始必须要指明所基于的镜像名称,接下来一般会说明镜像创建者信息,后面则是镜像操作指令。
一、Dockerfile的书写规则及指令使用方法Dockerfile的指令是忽略大小写的,建议使用大写,使用 # 作为注释,每一行只支 ...
统计工作日数据
weekday()函数mysql中weekday(date)可以返回对应日期的工作日索引,0便是周一,1表示周二,......,6表示周日。
12345678mysql> SELECT WEEKDAY('2017-12-15');+-----------------------+| WEEKDAY('2017-12-15') |+-----------------------+| 4 |+-----------------------+1 row in set (0.00 sec)也可以是'2017-12-15 13:00:00'的日期时间格式
123456select (case when weekday(date)<5 then 'yes' when weekday(date)>=5 then 'no' else end) as ifworkdayfrom tableyes就是周-到周五的,no就是周六到周日
...