https://nginx.org/en/docs/http/ngx_http_map_module.html

基本用法

语法: map $var1 $var2 { map list }
默认值:
配置段: http(可以存在多个 map 区域)
map 指定了两个变量,其顺序和映射表中的列对应,这里的变量 var1 是 Nginx 自带变量,var2 则是自定义变量名,Nginx 自带变量表可以在 https://nginx.org/en/docs/varindex.html 查到。
map 的大括号内则是映射表,映射表由两列组成,匹配模式(string)和需要设定的值(variable)。
在 map 块里的参数指定了源变量值和结果值的对应关系。

  • 匹配模式可以是一个简单的字符串或者正则表达式,使用正则表达式要用(‘~’)。
  • 一个正则表达式如果以 “~” 开头,表示这个正则表达式对大小写敏感。以 “~*”开头,表示这个正则表达式[……]

    Read more

对于国内访问 nginx.org 源的速度忍无可忍,于是摸了个 apt-mirror做了个镜像,方法参照 https://raymii.org/s/tutorials/Set_up_a_local_Ubuntu_debian_apt_mirror.html (想了一下似乎小流量访问搭反代是更好的办法,但是这种跨境反代总是有不可描述的敏感性,所以还是算了)

如遇报错 W: GPG error,请添加 nginx 官方源的 key: wget -O - https://nginx.org/keys/nginx_signing.key | apt-key add -

每天6点更新,unit 是 nginx unit(对应官方源的 packages.nginx.org/unit/),nginx 只有 mainline 版本(对应官方源的 nginx.org/packages/mainline/ ),暂时做了 Debian8、Debian9、Ubuntu16.04、Ubuntu18.04 (别的我自己不用),使[……]

Read more

基于 OpenSSL 1.1.1 构建支持 TLS 1.3 的 Nginx 1.15 安装包

前言

UPDATE. 2018.08.31

TLS 的 RFC 已经正式更新,编号为 RFC 8446

注意:TLS 1.3 目前虽已定稿,但仍处于未被正式确立为 Internet standard 的草案标准阶段,其周边软件的支持可能发生快速的改变,本文所描述内容截止至2018年6月7日。

3月21日,TLS 1.3 草案正式定稿,最终版本为 draft28,详情见 Protocol Action: ‘The Transport Layer Security (TLS) Protocol Version 1.3’ to Proposed Standard (draft-ietf-tls-tls13-28.txt)
6月5日,nginx 发布新的主线版本1.15(其实和1.13.12相比几乎没有功能变化,修了一堆 bug)。
吃饱没事想试试 TLS 1.3 加上组内 keyless 项目的后续开发设计工作需要对 TLS 1.3 有一点了解,于是有了本文。

本文的描述基于 Ubuntu 16.04 和 Debian 8,至于 CentOS 可以参照一下去年 nginx 在1[……]

Read more

https://zhuanlan.zhihu.com/p/37542644

36氪这篇文章的标题让我很是不舒服。

我一直以来警惕自己和任何大众文化走的过近,经验表明一切火爆的流行的标志,即便不是糟粕也是鸡肋,从08年的彩铃骂人段子到13年航母 style 所透露的非理性爱国到最近的丧文化所代表的虚无主义再到最近这些中式选秀,无一不透露着这个国家文化的贫瘠,这个国家的主流文化一直在进行着拙劣的模仿,更糟糕的是与此同时它正在变的越来越排外。

虽然我也常用周恩来那句“人民喜闻乐见你算老几”来反对这个国家的文化管制,然而这只是出于自由平等理念的追求,常随同人民意味着泯然人民,深陷汪洋大海的后果之一就是你再也无法走出去也难以看的远。

我想这篇文章的作者写下这个标题的时候,其实也应该心里明白永远会有人愿做这个“菊外人”

[……]

Read more

从 E5-2690v4 的 NUMA 数量说起,浅谈 Broadwell 到 Skylake 的改进

TL,DR:

Broadwell 的 Cluster on die 和 Skylake 的 sub-NUMA cluster 设置会导致高核心 CPU 显示为两个 NUMA 节点,相关设置会影响缓存命中、延迟和内存访问延迟

Index

0,起因
1,简述架构的改进
2,Broadwell 上的 Snooping 和 COD
3,Skylake 和 SNC
4,其他的一些改进

起因:

某台机器(已知是双路)发现了四个 NUMA 节点: numastat 也显示出了程序的不同亲和性,

然而根据 Intel Ark ,2690 v4 最大支持两路,且每路为 35M L3,核心数和 L3 cache 显示的数量都恰好是 ark 的一半,因此对这个问题进行了一点调研,发现 Xeon Scalable 相比 Xeon E5v4 确实有比较大的改变不是挤牙膏,借此机会顺便深入了解了一些服务器 CPU 的架构,故有本文。

文中可能用到的几个缩写:Ivy Bridge 缩写为 IVB,Haswell 缩写为 HSW,Broadwell[……]

Read more