Varnish 2.0.1 给我们带来很多新的特性:
ESI 支持 轮训或随机负载均衡支持 后端健康检查 新型对象过期检查 OpenSolars 支持 修复一些小错误
新版本的Varnish更加稳定和健壮,性能更好!
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.
Varnish 2.0.1带来了多项改进,包括ESI支持、负载均衡策略、后端健康检查等功能。新版本提升了稳定性与性能,支持OpenSolaris,并引入了更灵活的对象过期机制。
925

被折叠的 条评论
为什么被折叠?



