欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  资讯频道

Varnish 2.0.1 发布:高性能的HTTP加速器

程序员文章站 2022-03-03 17:39:48
...

Varnish 2.0.1 给我们带来很多新的特性:

 

ESI 支持
轮训或随机负载均衡支持
后端健康检查
新型对象过期检查
OpenSolars 支持
修复一些小错误

 

新版本的Varnish更加稳定和健壮,性能更好!

下载:http://linux.softpedia.com/get/Internet/HTTP-WWW-/Varnish-17663.shtml

 

 

Changes:

                           Change log for Varnish 2.0

Changes between 1.1.2 and 2.0

  varnishd

     * Only look for sendfile on platforms where we know how to use it,
       which is FreeBSD for now.
     * Make it possible to adjust the shared memory log size and bump the
       size from 8MB to 80MB.
     * Fix up the handling of request bodies to better match what RFC2616
       mandates. This makes PUT, DELETE, OPTIONS and TRACE work in
       addition to POST.
     * Change how backends are defined, to a constant structural defintion
       style. See http://varnish.projects.linpro.no/wiki/VclSyntaxChanges
       for the details.
     * Add directors, which wrap backends. Currently, there's a random
       director and a round-robin director.
     * Add "grace", which is for how long and object will be served, even
       after it has expired. To use this, both the object's and the
       request's grace parameter need to be set.
     * Manual pages have been updated for new VCL syntax and varnishd
       options.
     * Man pages and other docs have been updated.
     * The shared memory log file is now locked in memory, so it should
       not be paged out to disk.
     * We now handle Vary correctly, as well as Expect.
     * ESI include support is implemented.
     * Make it possible to limit how much memory the malloc uses.
     * Solaris is now supported.
     * There is now a regsuball function, which works like regsub except
       it replaces all occurences of the regex, not just the first.
     * Backend and director declarations can have a .connect_timeout
       parameter, which tells us how long to wait for a successful
       connection.
     * It is now possible to select the acceptor to use by changing the
       acceptor parameter.
     * Backends can have probes associated with them, which can be checked
       with req.backend.health in VCL as well as being handled by
       directors which do load-balancing.
     * Support larger-than-2GB files also on 32 bit hosts. Please note
       that this does not mean we can support caches bigger than 2GB, it
       just means logfiles and similar can be bigger.
     * In some cases, we would remove the wrong header when we were
       stripping Content-Transfer-Encoding headers from a request. This
       has been fixed.
     * Backends can have a .max_connections associated with them.
     * On Linux, we need to set the dumpable bit on the child if we want
       core dumps. Make sure it's set.
     * Doing purge.hash() with an empty string would cause us to dump
       core. Fixed so we don't do that any more.
     * We ran into a problem with glibc's malloc on Linux where it seemed
       like it failed to ever give memory back to the OS, causing the
       system to swap. We have now switched to jemalloc which appears not
       to have this problem.
     * max_restarts was never checked, so we always ended up running out
       of workspace. Now, vcl_error is called when we reach max_restarts.

  varnishtest

     * varnishtest is a tool to do correctness tests of varnishd. The test
       suite is run by using make check.

  varnishtop

     * We now set the field widths dynamically based on the size of the
       terminal and the name of the longest field.

  varnishstat

     * varnishstat -1 now displays the uptime too.

  varnishncsa

     * varnishncsa now does fflush after each write. This makes tail -f
       work correctly, as well as avoiding broken lines in the log file.
     * It is possible to get varnishncsa to output the X-Forwarded-For
       instead of the client IP by passing -f to it.

  Build system

     * Various sanity checks have been added to configure, it now
       complains about no ncurses or if SO_RCVTIMEO or SO_SNDTIMEO are
       non-functional. It also aborts if there's no working acceptor
       mechanism
     * The C compiler invocation is decided by the configure script and
       can now be overridden by passing VCC_CC when running configure.
相关标签: Linux HTML REST