iTerm2技巧 维护多个host与固定tab页面标题

iTerm我已经使用了很长时间了,总体各方面的特点都非常好,但是有几个地方也是让我苦恼的地方。 tab 页面的标题会根据执行的命令或者路径发生变化,如果你开了七八个ssh远程,有时候很难区分这个tab页面到底是连接的哪台机器。 如果你有十几个机器需要连接,你不可能手动输入ssh root@ip地址的方式去连接,太多了记不住。 如何维护多个远程host? 使用profile维护多个远程host, 每个profile对应连接到一台机器。profile name填入该host的名字。 注意右边的Command, Send text at start的输入框,这个输入框,就是要执行的ssh指令,里面包含了远程host的地址。 然后你就可以在Profils的菜单中选择一个profile进行连接了。 如何让tab页面的标题不改变? 一定不要勾选Applications in terminal may change the title, 默认这项是勾选的。 Ttile一定要选择Name, badge的妙用? 如果标签页的tab的名称还不够强调当前tab页面是连接哪个标签页面的,你可以用用Badge去强调一下。

2020-06-30 13:16:05 · 1 min · Eddie Wang

MacOS 随航功能链接ipad超时

首先去官网查看一下,macos的系统版本和硬件以及ipad的版本是否支持随航。这是前提条件。 macos 和 ipad 需要登录同一个AppleID macos和iPad需要在同一个Wi-Fi下 遇到报错提示链接超时时: MacOS 退出apple账号,然后重新登录,登录完了之后重启电脑 再次尝试连接,就可以连接成功了。

2020-06-28 07:54:04 · 1 min · Eddie Wang

xcrun: error: invalid active developer path

macos 升级后,发现git等命令都不可用了。 第一次使用xcode-select –install, 有报错。于是就用brew 安装了git。 xcode-select --install 后续使用其他命令是,发现gcc命令也不可用。于是第二天又用 xcode-select --install 执行了一遍,忽然又可以正常安装开发软件了。 所以又把brew 安装的git给卸载了。

2020-06-27 11:20:08 · 1 min · Eddie Wang

生产环境nginx配置

最近遇到一个问题,WebSocket总是会在下午出现比较大的断开的量。 首先怀疑的是客户端的网络到服务端的网络出现抖动或者断开,要么就是入口的nginx有异常,或者是内部的服务出现异常。 排查下来,发现nginx的最大打开文件个数是1024 nginx master进程 nginx work进程 当进程打开文件数超过限制时,会发生什么? 当进程超过最大打开文件限制时,会收到SIGXFSZ信号。这个信号会默认行为会杀死一个进程。进程内部也可以捕获这个信号。 我试着向nginx wrok进程发送SIGXFSZ信号, work进程会退出,然后master监听了这个事件后,会重新启动一个work进程。 kill -XFSZ work_pid 在nginx的error.log文件中,可以看到类似的日志输出。 这里的25就是XFSZ信号的整数表示。 ... [alert] ...#.: work process ... exited on signal 25 _ 参考 https://www.monitis.com/blog/6-best-practices-for-optimizing-your-nginx-performance/ https://www.cnblogs.com/shansongxian/p/9989631.html https://www.cnblogs.com/jpfss/p/9755706.html https://man7.org/linux/man-pages/man2/getrlimit.2.html https://man7.org/linux/man-pages/man5/proc.5.html

2020-06-24 19:36:06 · 1 min · Eddie Wang

[未完成] WebSocket调研

调研目的 在异常情况下,网络断开对WebSocket的影响 测试代码 测试代码没有心跳机制 心跳机制并不包含在WebSocket协议内部 var ws = new WebSocket('wss://echo.websocket.org/') ws.onopen =function(e){ console.log('onopen') } ws.onerror = function (e) { console.log('onerror: ' + e.code) console.log(e) } ws.onclose = function (e) { console.log('onclose: ' + e.code) console.log(e) } 场景1: 断网后,是否会立即触发onerror, 或者onclose事件? 答案:不会立即触发 测试代码中没有心跳机制,断网后,并不会立即触发onerror或者onclose的回调函数。 个人测试的情况 及其 测试场景 Macbook pro chrome 83.0.4103.106 每隔10秒发送一次消息的情况下,40秒后出发onclose事件 Macbook pro chrome 83.0.4103.106 一直不发送消息,一直就不回出发onclose事件 Macbook pro chrome 83.0.4103.106 发出一个消息后? 场景2: 断网后,使用send()发送数据,回触发事件吗? 为什么无法准确拿到断开原因? WebSocket关闭事件中有三个属性 code 断开原因码 reason 具体原因 wasClean 是否是正常断开 官方文档上,code字段有很多个值。但是大多数情况下,要么拿到的值是undefined, 要么是1006,基本上没有其他情况。...

2020-06-24 11:09:02 · 2 min · Eddie Wang

fping 网络状态监控测试

新建一个文件 ip.list.cfg, 包含所有的带测试的ip地址。 192.168.40.20 192.168.40.21 执行命令: nohup fping -D -u -l -p 2000 -f ip.list.cfg & -D 显示时间戳 -u 显示不可达的目标 -l 持续的ping -p 每隔多少毫秒执行一次 -f 指定ip列表文件 在nohup.out中,回持续的显示到各个ip的网络状况。 [1592643928.961414] 192.168.40.20 : [0], 84 bytes, 3.22 ms (3.22 avg, 0% loss) [1592643928.969987] 192.168.40.21 : [0], 84 bytes, 1.22 ms (1.22 avg, 0% loss) [1592643930.965753] 192.168.40.20 : [1], 84 bytes, 5.25 ms (4.23 avg, 0% loss) [1592643930.972833] 192.168.40.21 : [1], 84 bytes, 1.14 ms (1....

2020-06-20 17:06:42 · 1 min · Eddie Wang

oh-my-zsh 安装 tmux插件

.zshrc配置 vim ~/.zshrc plugins=(git tmux) # 加入tmux, 然后保存退出 source ~/.zshrc tmux 快捷键 Alias Command Description ta tmux attach -t Attach new tmux session to already running named session tad tmux attach -d -t Detach named tmux session ts tmux new-session -s Create a new named tmux session tl tmux list-sessions Displays a list of running tmux sessions tksv tmux kill-server Terminate all running tmux sessions tkss tmux kill-session -t Terminate named running tmux session tmux _zsh_tmux_plugin_run Start a new tmux session

2020-06-17 13:20:24 · 1 min · Eddie Wang

Nodejs诊断报告

2020-06-12 09:07:08 · 0 min · Eddie Wang

解决问题的最后一个思路:拼写错误!!

从各种层次排查了问题,包括 docker版本不一样 脚本不一样 镜像的问题 … 从各种角度排查过后,却发现,问题在是拼写错误。环境变量没有设置对,导致进程无法前台运行。 能不拼写就不要拼写!!直接复制。 大文件在传输图中可能会文件损坏,最好使用md5sum计算文件校验和,然后做对比。

2020-06-05 11:55:40 · 1 min · Eddie Wang

01 手绘风格的流程图

webrtc的各种demo https://webrtc.github.io/samples/ 在线音频处理 https://audiomass.co/ 值得深入阅读,关于如何demo的思考 https://kitsonkelly.com/posts/deno-is-a-browser-for-code/ 不错的介绍demo的博客 https://kitsonkelly.com/posts js如何获取音频视频 https://www.webdevdrops.com/en/how-to-access-device-cameras-with-javascript/ bats可以用来测试shell脚本 https://github.com/bats-core/bats-core 手绘风格的流程图 https://excalidraw.com/

2020-06-05 09:31:37 · 1 min · Eddie Wang