Android 使用体验

去年 11 月份,我在 Google 商店订了 Google Pixel,过了半个多月到手,至今已经用了差不多半年,可以说一说用 Android 是什么样的体验。 在国内使用原生 Android 似乎有不小的障碍,好在我几年前就已经给家里的路由器做好了科学上网的配置。实际上我最开始的想法是:没太多新鲜感。 再讲更多东西之前,有这样几件事情必须要说明: 关于 Android 的体验,仅限于原生 Android 与 iOS 的对比,也只仅限于 iPhone 5S 上的 iOS 9 完全不涉及 root 或者越狱 简单来说,这是我个人比较狭隘的, 还算客观的感受。 在这之前我用了好几年 iPhone,对于 Android,我期待有完全不同的体验。拿到手用了一天后,新鲜感并没有我预期的那么强烈。毕竟大多数时候是在用同样的一些 App,…

对 Google TCP BBR 的浅薄认识

关于 Google 发布的新的 TCP 拥塞控制算法 BBR (Bottleneck Bandwidth and RTT) 的一些记录,仍然在学习中,难免有误解。之后会持续修正和完善。 网络链路上的包比较少时,道路很通畅,这个阶段,对于一个 TCP 连接来说,它的速度由这个连接两端之间的距离决定,也可以说是由 RTT 决定。当发包速率变大,把道路基本上填满了之后,这个阶段,带宽的大小决定了这个连接的速度,这时两端之间可能就会有包要排队,延迟时间除了 RTT 还有排队时间。 BBR 目的是要尽量跑满带宽,并且尽量不要有排队的情况。 cwnd 是普通的拥塞控制算法里最终要求得的一个值,用来控制发包速率。BBR 也要求到这个值,但是它不是最主要的控制发包速率的变量,主要的变量是 pacing_rate。 这两个变量都由探测到的带宽值和 RTT 值得到,整个过程都围绕着这两个值。在 BBR…

给后台人员的前端优化

作为一名后台开发,听到前端优化(不涉及后端 Web Server、数据库等),我大概了解的词有这些:主要是减小体积、减少请求、合理布置页面原素等,再具体些就是,开启 Gzip 压缩、合并 css 文件、合并 js 文件、长链接、减少 DNS 查询、使用 cookie-free 域名、js 放页面最下面、指定缓存时间、ETag、延迟加载、异步加载…… 作为一个没什么访问量的小网站,费心思搞这些东西干什么呢?一方面服务器本来就没什么压力,另一方面访问者能感受到的速度差异能有多少?结果我还是搞了一下,因为有个方便的工具,Google 出品的 PageSpeed,不用我自己操那么多心。 这货不是被 Google 关了吗?如果是说 Google 提供的带 PageSpeed…