Centos 6 change ulimit

vim /etc/security/limits.conf add at the bottom.

* soft nofile 102400
* hard nofile 102400

centos nodejs upgrade

# sudo model
# remove old
cd /etc/yum.repos.d/
rm nodesource-*.repo
yum remove nodejs
# install new
# change setup_8.x to your version
curl --silent --location https://rpm.nodesource.com/setup_8.x | sudo bash -
yum clean all
yum -y install nodejs

比锐速还强的 TCP拥塞控制技术 —— TCP-BBR

BBR 是一个由谷歌社区开发的 TCP拥塞控制技术,目前处于开发初期,但是前景很棒,大家可以持续关注,同时BBR是集成与Linux最新版本的内核中的。

注意:TCP-BBR必须是 2016-12-05 21:00 更新的 4.9.0-rc8 内核及以后的版本 才能开启,而锐速并不支持这个最新的内核版本,所以TCP-BBR和锐速是不能共存的。

其实大多系统 update 就是最新内核了,但是一定要重启才能使新内核生效。

在 /etc/sysctl.conf 文件的末尾添加两行配置。其中第一行 default_qdisc 指的是默认的 TCP 队列算法,fq 是 Google 推荐的算法,更适用于 BBR。第二行则是在 IPv4 协议中开启拥塞控制算法。

echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf
echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf

// default 还原的话,移除上面加的两行,或者将它们改成下面两行
net.ipv4.tcp_congestion_control = cubic
net.core.default_qdisc = pfifo_fast

开启TCP BBR拥塞控制算法

加密系统的时候,请务必选用 AEAD 算法

常见的 AEAD 算法如下:

AES-128-GCM
AES-192-GCM
AES-256-GCM
ChaCha20-IETF-Poly1305
XChaCha20-IETF-Poly1305

在具备 AES 加速的 CPU(桌面,服务器)上,建议使用 AES-XXX-GCM 系列,移动设备建议使用 ChaCha20-IETF-Poly1305 系列。

在设计加密系统的时候,请务必选用 AEAD 算法,抛弃旧的 MtE,EtM,E&M 方案。

request aborted

The error Error: request aborted is somewhat expected, as that error is from Node.js telling us that the TCP socket has closed before we finished reading the request. This does not mean that request is too large, though. The most common causes for this:

  1. User is submitting a form and closes the web browser/browser tab.
  2. User is uploading using a command line tool like cURL and presses Ctrl+C to kill the process.
  3. Some network issue that kills the TCP connection.

可用的解决方案:

使用nginx做反向代理提供服务

nginx

From github