2016

自从上次被腾讯莫名其妙的改面试地点挂掉之后就很不爽,面试这种宝贵的人生经验多多益善哉,所以抱着增长姿势的目的去投了个渣浪结果过了那个煞笔透顶的笔试(全是谭语言的笔试题你们真的要招运维?)然后竟然过了于是今天(7号,准确的说是昨天)去面了一下,总体而言因为面试官说自己实际上是 IT 而不是运维(渣浪的 IT 和网易的职能略有区别,渣浪的内部系统和私有云、容器、直播信号管理也是 IT 维护,相对来说不知道他们运维是不是只专注于业务运维,还顺便问了问渣浪对容器技术的使用情况,看起来明年才会在内部系统里大规模使用)

总结一下就是最有价值的问题是:“如何在客户端零配置的前提下根据需要,对于不同用户授予[……]

Read more

TL; DR

这是一篇吐槽,主要干货用最简单的话说就是:

  • thunderbolt3 是 USB-C 的超集
  • thunderbolt3 是 USB-C 的一种 alternate mode
    • 这两个观点都是对的并不矛盾
  • 实现上目前仅有的 TB3 控制器 Intel DSL6340/6540(代号Alpine Ridge)同时实现了 USB3 的控制器
  • USB-C 是一个接口的标准不是速率的标准,他可以是 USB2.0 也可以是 3.1 Gen2
  • USB-C 可以通过 alternate mode 原生支持 DP 和 HDMI 输出
  • USB-C 当前外设和线材市场极其混乱和原始

好了[……]

Read more

shell 脚本如何判断所在目录问题

这是某业务广泛的 QQ 群里的一次讨论,尘光大前辈问起都是怎么获取脚本所在绝对路径。

首先有同学表示可以使用 pwd配合 $0参数,但是很明显脚本执行的时候并不一定在当前 working dir,这就会带来一个明显的问题就是,如果执行的方式是 ./a.sh,那么获取到的$0和 pwd 的结果才是相同的,否则就是不同的:

当然,可以说判断执行的方式,根据判断$0是否是绝对路径等方法可以区分这个情况,但是首先这样就变[……]

Read more

目录

  1. 什么是 Websocket
  2. 为什么使用 Websocket
  3. 性能理论分析
  4. Websocket 服务端和反代实践
  5. 对反代性能进行测试
  6. Websocket 和 HTTP

什么是 Websocket

Websocket 是起初由 HTML5 定义的一个建立在单 TCP 连接上的全双工通信协议,后从 HTML5 规范独立并由 RFC 6445 标准化,但仍被习惯性地称为 HTML5 Websocket。

Websocket 工作在 HTTP 的80和443端口并使用前缀 ws://或者[[……]

Read more

在 Nginx 中,四层的数据被称为 stream,和四层代理有关的模块主要有:

  • ngx_stream_core_module:四层代理的基本功能模块
  • ngx_stream_upstream_module:四层代理转发到上游的模块
  • ngx_stream_proxy_module:四层代理相关配置

其他 stream 相关模块用于如 SSL 支持、geoip 支持、简单访问控制支持等,本次测试并没有使用到。

使用的注意事项

Nginx 的四层反代功能较为简单,其访问控制模块因为源站 IP 可以进行伪造,[……]

Read more