文章 67
评论 61
浏览 75441
vim常用快捷键以及方法

vim常用快捷键以及方法

vim平常会用到的方法

讲一个向外借钱的故事

讲一个向外借钱的故事

记录真实事件

2019年3月份述职报告

2019年3月份述职报告

为什么要公开,只是因为心里的一丝凄凉与迷惑 述职报告 :dizzy_face:

Mysql临时表示例

Mysql临时表示例

一年前遇到过这个问题,当时是非常蠢的用了java代码将所有时间段初始化的手段,这次算是进步

zabbix监控端口自动发现功能

zabbix监控端口自动发现功能

该文章已经加密。

通过命令查看服务器硬件信息

通过命令查看服务器硬件信息

查看CPU信息(个数): [root@zabbix ~]# cat /proc/cpuinfo | grep "physical"| sort |uniq -c 32 address sizes : 46 bits physical, 48 bits virtual 16 physical id : 0 16 physical id : 1 两个16核CPU 2.查看CPU型号: [root@zabbix ~]# cat /proc/cpuinfo |grep "name" |cut -f2 -d: |uniq -c 32 Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz 3.查看服务器厂商: [root@zabbix ~]# dmidecode |grep Vendor Vendor: Dell Inc. 4.查看服务器型号: [root@zabbix ~]# dmidecode |grep Product Product Name: PowerEdge R430 Product Name: 03XKDV 5.查看服务器磁盘信息: [roo....

centos7 安装NVIDIA P4000

centos7 安装NVIDIA P4000

Quadro P4000显卡在centos7安装 官网下载对应redhat驱动: https://www.dell.com/support/home/cn/zh/cnbsd1/product-support/servicetag/2xhzrt2/drivers 执行: [root@localhost ~]# sh NVIDIA-Linux-x86_64-396.37.run 出现如下报错: ERROR: The Nouveau kernel driver is currently in use by your system. This driver is incompatible with the NVIDIA driver, and must be disabled before proceeding. Please consult the NVIDIA driver README and your Linux distribution's documentation for details on how to correctly disable the Nouveau kerne....

记一次grafana变量取值的过程

记一次grafana变量取值的过程

Grafana官网相关:https://grafana.com/docs/ 1、首先把变量整到dashboard中,这次取zabbix的值由如下几个变量组成: 分别展示下变量的组成: 主机组: `` 主机: 应用监控项 监控项: 还有一个是网卡流量的监控取值 Query:*.$host.Network interfaces.* Regex:/(?:Incoming|Outgoing) network traffic on (.*)/ 看下监控仪表盘模板展示,会应用到各个主机: 添加变量后期更改数据只改变量即可,其他参数不用改变。 然后设置主机组匹配规则: 主机匹配:

并发工具类 ---Semaphore

并发工具类 ---Semaphore

模拟场景: 北京开往邯郸的火车K7761开始售票,在9号站台验票进站,进站口只有三个,许许多多的乘客排成长队验票进站。 那么此时三个进站口就是有限的公共资源,乘客们就是线程。 Semaphore信号量是用来控制同时访问特定资源的线程数量,它通过协调各个线程,以保证合理的使用公共资源。 public class testMain { public static void main(String[] args) { int ticketGate = 3;//检票口 int numberOfPassengers = 9527;//乘客数量d Semaphore semaphore = new Semaphore(ticketGate); //允许进入3人,剩下的人想进入时,需等待前面的人已经进入站。 for (int i = 0; i < numberOfPassengers; i++) { new Through(i,semaphore).start(); } } static class Through extends Thread{ private int n; private ....

多线程之倒计时计数器 CountDownLatch

多线程之倒计时计数器 CountDownLatch

上篇回顾:多线程回环栅栏 CyclicBarrier 使用场景 假设有一个列表,多选之后,点击压缩。此时后台肯定是多线程跑压缩任务,那我们就可以使用CountDownLatch来在全部压缩完成之后处理一些事情。 示例代码 public class testMain { public static void main(String[] args) { // 初始化计数 AtomicInteger count = new AtomicInteger(0); // 创建 10 个线程 ExecutorService es = Executors.newFixedThreadPool(10); // 设置 CountDownLatch 为 10 CountDownLatch countDownLatch = new CountDownLatch(10); for (int i = 0; i < 10; i++) { es.execute(() -> { // 每个线程累计增加 1000 次 for (int j = 0; j < 1000; j++) { count.addA....

java数值类型的拆装箱与升降级之间的关系

java数值类型的拆装箱与升降级之间的关系

该文章已经加密。

部署solo博客自动升级

部署solo博客自动升级

1.1版本 特性:自动升级solo博客版本,打印升级所用时间,是否报错等信息 定于每周三的早上5点准时升级solo,有那么一段时间发现pull一个solo镜像用了好长时间,打算打印一下时间计算下pull一个镜像到底又做猛? #!/bin/bash # # Solo docker 升级并且重启脚本 # 参考solo指南 https://hacpai.com/article/1492881378588 # echo "-----------------升级前------------------------------------" start_time=`date +'%Y-%m-%d %H:%M:%S'` docker pull b3log/solo docker stop solo docker rm solo docker run --detach --name solo --network=host \ --env RUNTIME_DB="MYSQL" \ --env JDBC_USERNAME="root" \ --env JDBC_PASSWORD="xxxxxxxxxxx" ....

记录精彩的坎坷人生,经营属于自己的世界!