Category: 服务器运维

30 篇文章

编译protobuf.so扩展
在官网下载适合php版本的包。pecl官网 解压 tar zxvf protobuf.tar.gz cd到目录并用phpize生成configure文件 cd protobuf-3.7.1/(如果是从github下载的,则cd到protobuf-3.7.1/php/ext/google/protobuf) phpize 编译三板斧 ./config…
用lockf保证同一时间只有一个进程运行
安装 参见github 使用场景 保证同一时间只有一个进程运行。 例如 crontab 设定每分钟跑一次 1.php ,但如果超过1分钟该脚本还没执行完,就会出现多个php脚本同时运行的情况,在某些场景下可能会有问题。 为了满足上述需求,我们可能会在脚本里添加一段代码,创建锁,执行完后删除锁,若锁文件存在则直接return。 还有另一种解决方案就是…
在mac安装nginx模块
今天有需求需要用到nginx的stream模块,但mac已经安装的nginx默认是不带该扩展的。 我选择了重新安装nginx。 brew tap denji/nginx brew install nginx-full --with-stream #如果已经是最新版本,则会提示nginx版本已安装,可选择重新安装 brew reinstall ngi…
给你的Mac/Linux的rm装一个回收站
作为程序员,在工作中经常用到rm。我在不久前用vscode写代码,在底下的终端里想删掉没用的文件,手抖把未提交到git的代码文件删了。还好代码量不多,否则会崩溃。毕竟重写代码是很痛苦的~ 因此本文标题提上了日程 选择一款安全的删除脚本 Github看到一个脚本满足需求。 github地址,里边有多种安装方式。我选择的是npm全局安装。 npm i …
排查elasticsearch的cpu居高不下,查询慢的问题
背景 近来es查询很慢,kibana的discover界面偶尔还会因为查询请求超时而无法显示数据。/_cat/indices?v 等对es的查询也慢的出奇,需要1、2分钟才返回结果。 排查 top命令看了es的java进程,发现cpu一直很高,130%左右,一直没有下降过。查看es的日志,发现gc.log中几乎每秒都要触发一次GC Full GC …
mac卸载和安装java指定版本
2020-04-02更新: 之前的安装方法已经废弃了,可通过以下方式安装 brew tap AdoptOpenJDK/openjdk brew cask install <version> 这里有全部的version列表 例如可以这么安装 brew cask install adoptopenjdk8     之前用…
在挂着VPN的虚拟机搭建代理服务
背景 公司有台机器需要用VPN访问,资源包括ssh和web页面。在物理机上开VPN能够访问该内网资源,但会影响公网的访问效率和一些资源(毕竟通过VPN绕了一圈内网再回来)。很自然想到用虚拟机挂VPN,需要访问内网资源的时候到虚拟机上去解决。尽管我使用mac,触摸板划一下就能无缝切换虚拟机窗口,但多了个操作系统环境还是有些不方便。毕竟我想在同一个浏览…
mysql命令行神器mycli
为什么使用它 受够了mysql原生client后,你会爱上mycli的自动补全和高亮。对于我这种常常记不住表结构的人来说,自动补全真是爽得不行。 ps:sql新手谨慎使用,建议多裸写sql后再来使用该软件 安装 Mac brew install mycli CentOS # 请尽量先将pip升级到最新版本 pip install --upgrade…
Squid使用SSLBump正向代理
背景:最近需要使用nodeJs访问一个历史久远的网站,那个网站的服务器证书是错误的,且使用的协议是TLSv1.0。浏览器上不得不使用IE并关闭各种安全设置和设置为兼容模式才能正常访问。Nodejs的新版本已经不支持这种不安全的协议,所以需要搭建一个代理服务进行访问。刚开始使用的是mitmproxy ,当时的最新版本对于SSL错误会报错,所以将源码中…
Linux Kernel 4.9 中的 BBR 算法与之前的 TCP 拥塞控制相比有什么优势?
本文经原作者授权转载。 来源知乎 以下为原文 中国科大 LUG 的@高一凡在 LUG HTTP 代理服务器上部署了 Linux 4.9 的 TCP BBR 拥塞控制算法。从科大的移动出口到新加坡 DigitalOcean 的实测下载速度从 647 KB/s 提高到了 22.1 MB/s(截屏如下)。 此次 Google 提交到 Linux 主线并发…