Varnish与Squid的对比
Varnish与Squid的对比
说到Varnish,就不能不提Squid。Squid是一个高性能的代理缓存服务器,它和Varnish相比较有诸多的异同点,下面进行分析。
下面是Varnish与Squid之间的相同点。
都是一个反向代理服务器。
都是开源软件。
下面是它们的不同点,也是Varnish的优点。
Varnish的稳定性很高。两者在完成相同负荷的工作时,Squid服务器发生故障的几率要高于Varnish,因为Squid需要经常重启。
Varnish访问速度更快。Varnish采用了“Visual Page Cache”技术,所有缓存数据都直接从内存读取,而Squid是从硬盘读取缓存数据,因此Varnish在访问速度方面会更快。
Varnish可以支持更多的并发连接。因为Varnish的TCP连接释放要比Squid快,所以在高并发连接情况下可以支持更多的TCP连接。
Varnish可以通过管理端口,使用正则表达式批量清除部分缓存,而Squid做不到。
当然,与传统的Squid相比,Varnish也有缺点。
Varnish在高并发状态下CPU、I/O和内存等资源开销都高于Squid。
Varnish进程一旦挂起、崩溃或者重启,缓存数据都会从内存中完全释放,此时所有请求都会被发送到后端服务器,在高并发情况下,这会给后端服务器造成很大压力。