Debian / Ubuntu 更新内核并开启 TCP BBR 拥塞控制算法

BBR (Bottleneck Bandwidth and RTT) 是 Google 提供的 TCP 拥塞控制算法,适用于复杂网络环境下的 TCP 加速。由于众所周知的原因,天朝的网络情况在全世界都排得上号,很多情况下我们不得不进行一些细小的优化才能达到满意的效果。 话不多说了,首先需要准备的条件 Debian 8.x 或者 Debian 9.x 系统,当然以下教程也适合 Ubuntu 14.04 或 Ubuntu 16.04 如果是虚拟机,那么得使用 KVM 或 Xen

Debian 9.x "stretch" 安装 vnStat 统计服务器流量

vnStat 是一款开源的 Linux 下统计网卡流量的软件,可以很方便地查看当前、当天、当月的流量统计报告,下面我们介绍下在 Debian 9.x 下安装 vnstat 的简单方法 首先,使用 ip a 命令查看你机器的网卡名称,如果是全新的 iso 安装的 Debian 9,那么默认的网卡名称应该为 ens3 或 ens4 这里我们假设你的机器网卡名称为 ens3 直接 apt 安装即可 apt-get install vnstat 由于默认的配置文件还是旧的网卡名称

C♯ 接口的一个小“坑”

正在转战 C++ 写密码学代码,然后突然想温习一下多重继承、虚拟继承,熟知公有虚拟继承是 C++ 实现“接口”语义的成语(idiom,惯用法);思想游荡到了 C♯ 的世界,CLR 也支持接口,而且 C♯ 还有一个为人称道的显式接口实现(有一半私有虚拟继承的感觉),但是这里面隐藏了一个小“坑”……

前端 CDNJS 库及 Google Fonts、Ajax 和 Gravatar 国内加速服务

由于某些众所周知的原因,好多开源的 JS 库采用的国外 CDN 托管方式在国内访问速度不如人意。所以我们特意制作了这个公益项目,托管了 CDNJS 的所有开源 JS 库以及反代了 Google Fonts、Ajax 和 Gravatar,并且全部支持 http 和 https 1、CDNJS 开源 JS 库 我们采用的方法是每天定时同步 CDNJS 的 Github 所有的 JS/CSS 库可以在这儿找到您需要的链接 https://cdnjs.cat.net/ajax/li

用信号来控制异步流程

总结 我们知道,JavaScript 不管是操作 DOM,还是执行服务端任务,不可避免需要处理许多异步调用。在早期,许多开发者仅仅通过 JavaScript 的回调方式来处理异步,但是那样很容易造成异步回调的嵌套,产生 “Callback Hell”。 后来,一些开发者使用了 Promise 思想来避免异步回调的嵌套,社区将根据思想提出 Promise/A+ 规范,最终,在 ES6 中内置实现了 Promise 类,随后又基于 Promise 类在 ES2017 里实

用信号来控制异步流程

总结 我们知道,JavaScript 不管是操作 DOM,还是执行服务端任务,不可避免需要处理许多异步调用。在早期,许多开发者仅仅通过 JavaScript 的回调方式来处理异步,但是那样很容易造成异步回调的嵌套,产生 “Callback Hell”。 后来,一些开发者使用了 Promise 思想来避免异步回调的嵌套,社区将根据思想提出 Promise/A+ 规范,最终,在 ES6 中内置实现了 Promise 类,随后又基于 Promise 类在 ES2017 里实