用 kcptun 加速 Shadowsocks

标签:无

自从离职后,没有了流畅的 VPN,我上网就各种别扭。
虽然 DigitalOcean 的 VPS 也凑合能用,但是新加坡线路抽风严重,经常连 Gmail 都打不开,所以决定更换一个 CN2 线路的 VPS。
找了几家 VPS 后,虽然更中意 KVM 的,但是喜欢的几款都没货了,于是买了个 Bandwagon Host(搬瓦工) 的特价版 OpenVZ VPS,用优惠码后年付 19 美元(顺带一提,电脑上选择用支付宝没反应,手机上可正常打开),512 MB 内存,1000 GB 月流量,洛杉矶 CN2 线路,广东电信 160 ~ 170 ms 的 ping 值,基本不丢包,看上去应该够用了。然而看 Youtube 仍然很卡,只有 500Kbps 左右的速度,勉强能看 480P 吧。
于是又查了下有没有办法优化,然后发现了 kcptun 这个神奇的玩意。

Python 项目的配置管理

标签:Python

每次开始一个新的 Python 项目,我都会为怎么管理配置文件而头疼。不过在迁移我的博客时,终于有空花了点时间,把这件事想清楚。
一年多的时间过去了,一切似乎都很顺利,连我在知乎所做的新项目也沿用了该方案,于是决定把解决方案记录下来。

ASUS RT-AC68U 和 Netgear R7000 路由器刷梅林改版固件

标签:无

上个月因为女朋友房间里 WiFi 信号不好,于是想挑个信号比较好的路由器送她。由于时间比较仓促,我稍作比较后,就挑了 Netgear R7000。
而前几天收到什么值得买的推送,发现 ASUS RT-AC68U 也降价了,于是又给自己买了台。

Docker 学习后记

标签:Docker

近来 Docker 比较火,知乎的很多业务都开始用 Docker 来跑了。可由于知乎目前的应用平台对开发者来说是透明的,我只能修改业务代码,没法协助解决使用过程中遇到的坑,于是觉得有必要花点时间学学的。然后熬了三天夜,把 Docker 的基础知识给弄懂了。趁还没忘掉,便记录在此。
由于时间有限,我基本上是按自己的理解写的,所以难免会有误,最好结合官方文档看吧(其实官方文档也很不详细)。另外,Docker 变化挺频繁的,我目前用的是 1.10 版,未来可能不完全适用。

关于 XSS 防范的一些思考

标签:HTML, JavaScript

最近在看一些 web 安全相关的文章,大部分都有系统和完善的解决方案,然而 XSS(Cross-site scripting)攻击相关的资料却很杂乱,甚至连 HTML 实体转义能解决哪些地方的 XSS 攻击都说不清。
于是在翻了一堆资料后,觉得还是把自己对它的一些思考记录下来吧。

加载 JavaScript 的各种姿势

标签:JavaScript

前天我给自己的博客做了些优化,让大部分的页面对所有人都输出相同的内容,然后再针对不同的用户,用 JavaScript 动态地修改一些细微的部分。
这样的好处是 HTTP 缓存可以设为 public 了,甚至可以用 nginx 的 proxy cache 或者完全静态化。
不过按照最近的习惯,这篇文章也不是介绍缓存的经验,而是另一个问题:我在给不同用户增加不同功能时,需要动态地加载 JavaScript 文件,那么正确的加载方式是怎样的呢?

折腾了一下 nginx 配置

标签:nginx

过年休息闲得无聊,而我的 VPS 很凑巧地挂了,于是这两天就忙着配置新的 VPS 了。
其实上面就三个东西:我的博客、Shadowsocks 和 Dropbox(用来备份 Redis 数据文件),所以很快就恢复了。

顺便检讨一下,其实去年 7 月就因为 GAE 停止对 Master/Slave 类型的应用支持,而花了几天时间把博客重写了,让它能跑在 Linux 上了。拖延了 2 年最后还是得靠 deadline…
不过一直没空整理代码,所以现在还没开源,希望能有下一个 deadline 吧。

不过本文并不是聊 Doodle 2 的开发经验,而只是记录一些折腾 nginx 配置的收获。

与安全相关的 HTTP 头

标签:无

由于 Web 安全问题越来越严重,各种浏览器都加强了安全策略,也引入了很多新的 HTTP 头。最近在做读读日报的扫码登录时,就被这些玩意折腾了一天,于是记录在此。

如何构建 timeline

标签:Redis

虽然我没有考证过,但至少从 Twitter 开始,timeline 这个词出现在互联网上也快 10 年了。这些年来,很多互联网产品依靠着各式各样的 timelines,吸引了无数的用户。
然而这篇文章并不是研究 timeline 的历史,而只是探索其实现方式而已。

兼容 iOS 9 Safari 的应用跳转方案探索

标签:无

很多做 web 开发的一定遇到过这种需求:点一个链接或按钮时,如果装了应用,就用该应用打开;没装的时候,iOS 跳 App Store 下载,Android 直接下载 apk 包。
在做读读日报的时候,就被这玩意花费了好长时间;然而 iOS 9 发布后,方案又失效了,于是又折腾了我几个小时。

« 看看还有什么好玩意