27.3 VCL 语法基础
VCL 语法基础

varnish 的缓存配置,使用的是 VCL,一种与 C 类似的域专有类型的配置语言。本节我们先来对 VCL 做一个介绍。
1. VCL 组成与处理流程
1.1 VCL 组成
|
|
VCL 可以看作是在 C 语言基础上二次开发的子语言,保留了 C 语言基本的语法,并额外附加了特性:
VCL 语法基础

varnish 的缓存配置,使用的是 VCL,一种与 C 类似的域专有类型的配置语言。本节我们先来对 VCL 做一个介绍。
|
|
VCL 可以看作是在 C 语言基础上二次开发的子语言,保留了 C 语言基本的语法,并额外附加了特性:
实现一个通用的,高效的工业级排序函数
前面我们介绍了最常见最经典的几个排序算法,它们有不同的时间复杂度,空间复杂度与使用情景。那么如何用它们实现一个通用的、高效率的排序函数呢?
varnish 架构及安装

varnish 是 http 缓存服务器的"新星势力",它与 squid的关系,类似于 httpd 与 nginx。varnish 有个最大的问题是,它的配置文件随着版本的变化变化非常大。本节我们以 4.0 系列的版本来讲解 varnish 的架构,安装和程序组成
非基于比较的三个排序算法: 桶排序,计数排序,基数排序
桶排序、计数排序、基数排序的时间复杂度是线性的,所以我们把这类排序算法叫作线性排序(Linear sort)。之所以能做到线性的时间复杂度,主要原因是,这三个算法是非基于比较的排序算法,都不涉及元素之间的比较操作。
web架构缓存优化

上一章我们学习了如何使用 keepalived 实现一个高可用集群,接下来我们来继续完善我们的 web 站点架构,本章我们来讲解另一个重要内容,web 站点的缓存系统。
基于分治编程思想的归并排序和快速排序
前面讲到的三种排序算法,平均时间复杂度都是 O(n2),只是适合规模较小的数剧集,接下来要讲的归并排序和快速排序,平均时间复杂度都是 O(nlogn),它们都用到了分治思想。