Mailing List Archive

Current Varnish status?
Hi list,

I have scanned the pretty light backlogs on the Varnish lists, and I haven't seen much discussion on the current state of Varnish. There was mention of problems with lighthttpd, but other than that I couldn't find much..

So, my question is, how stable do you consider the current release to be? Is SVN more stable or is the release the way to go? Anyone using Varnish in a production environment at all? Is that even something I should contemplate? My environment would consist of an app running on Apache 2.0.x with php, so lighthttpd issues are not a concern.

If it is not advisable to use Varnish (yet) does anyone have tips as to alternative solutions? (Squid is of course the ugly but well known alternative.)

Any input would be helpful, we could really use something like Varnish, now!

ABC Startsiden AS might also be interested in sponsoring the development work soonish.

Regards
--
Denis Braekhus - Teknisk Ansvarlig ABC Startsiden AS
http://www.startsiden.no
Current Varnish status? [ In reply to ]
Denis Br?khus wrote:
> So, my question is, how stable do you consider the current release to be?

I cannot comment on the code itself, but I can give a couple of comments
on how I perceive varnish as an end-user:

I have been using varnish in a production environment
(http://www.hio.no) for three weeks + now. In that time, there's been
one major incident, in which varnish suddenly started dropping all
incoming connections, possibly resetting, with clients ending up simply
with blank pages.

At the same time, our main gateway (hio-gw.uninett.no) was also
restarted - which probably SHOULD not affect varnish or the web server,
but my knowledge of TCP and IP is not perfect. Furthermore, the same
problem was actually worse (in test) for the latest stable Red Hat RPM -
I am currently running on SVN code (Jan 18).

Varnish has been running smoothly after that incident.

Still, I am keeping a close eye on things as I do not trust varnish 100%
- call it gut feeling, anyway, I AM using it for production on a college
site. I don't wan't to get my hands dirty with squid, and varnish is
refreshingly simple.

My setup is not perfect, I have a major leak on a popular page (due to a
redirect that varnish does not yet handle), but some graphs are at
http://statisk.hio.no/stat/graph/ - varnish was implemented late week 3,
and the "anomaly" mentioned was medio week 5.

I am keeping a close eye on this list - and the varnish work is being
much appreciated. Keep it up :)

--
Kenneth R?rvik, IT HiO
Tlf 22 45 20 83
Kenneth.Rorvik at hio.no
Current Varnish status? [ In reply to ]
In message <45D16F4F.1010901 at hio.no>, =?UTF-8?B?S2VubmV0aCBSw7hydmlr?= writes:
>Denis Br??khus wrote:
>> So, my question is, how stable do you consider the current release to be?
>
>I cannot comment on the code itself, but I can give a couple of comments
>on how I perceive varnish as an end-user:

I have always myself been cautions about software with an odd numbered
release, 1.0, 3.0, 5.0 etc. I have too much statistical evidence to
call this a superstition :-)

I've seen "productionquality" software fare worse than Varnish and
I have seen much software with better error handling than varnish
presently have, but all in all, Varnish is an average 1.0 release.

The good news is that Varnish doesn't suffer from anything that
cannot, and will not, get fixed, given time & money to do so.

I've spent my "Varnish-time" this month plotting the way ahead and
hopefully Per Buer from Linpro will soon tell me that we have
the necessary sponsors for version 2 lined up, allowing us to
really move forward.

Poul-Henning

--
Poul-Henning Kamp | UNIX since Zilog Zeus 3.20
phk at FreeBSD.ORG | TCP/IP since RFC 956
FreeBSD committer | BSD since 4.3-tahoe
Never attribute to malice what can adequately be explained by incompetence.
Current Varnish status? [ In reply to ]
Denis Br?khus <denis at startsiden.no> writes:
> I have scanned the pretty light backlogs on the Varnish lists, and I
> haven't seen much discussion on the current state of Varnish. There
> was mention of problems with lighthttpd, but other than that I
> couldn't find much..

We are currently winding up for the next development phase.

> So, my question is, how stable do you consider the current release
> to be? Is SVN more stable or is the release the way to go? Anyone
> using Varnish in a production environment at all? Is that even
> something I should contemplate? My environment would consist of an
> app running on Apache 2.0.x with php, so lighthttpd issues are not a
> concern.

The differences between the released version and the svn trunk are
currently very small (a few bug fixes).

Whether Varnish is usable in a production environment depends on the
nature of your application. Varnish currently does not respect Vary:
headers and interacts poorly with cookies, but if you don't use
either, you'll be fine.

DES
--
Dag-Erling Sm?rgrav
Senior Software Developer
Linpro AS - www.linpro.no
Current Varnish status? [ In reply to ]
----- Dag-Erling Sm?rgrav <des at linpro.no> wrote:
> The differences between the released version and the svn trunk are
> currently very small (a few bug fixes).

So SVN would actually be more stable then?

> Whether Varnish is usable in a production environment depends on the
> nature of your application. Varnish currently does not respect Vary:
> headers and interacts poorly with cookies, but if you don't use
> either, you'll be fine.

Is it possible to define "interacts poorly with cookies"? I do think our application relies quite heavily on cookies for session handling. Does interacting poorly imply that any site where cookies are used do not work well with Varnish, or simply that Varnish does not handle caching well when cookies are involved?

Regards
--
Denis Braekhus - Teknisk Ansvarlig ABC Startsiden AS
http://www.startsiden.no
Current Varnish status? [ In reply to ]
In message <14949960.32811171362685467.JavaMail.root at ms1.startsiden.no>, =?utf-
8?Q?Denis_Br=C3=A6khus?= writes:
>----- Dag-Erling Sm=C3=B8rgrav <des at linpro.no> wrote:
>> The differences between the released version and the svn trunk are
>> currently very small (a few bug fixes).
>
>So SVN would actually be more stable then?
>
>> Whether Varnish is usable in a production environment depends on the
>> nature of your application. Varnish currently does not respect Vary:
>> headers and interacts poorly with cookies, but if you don't use
>> either, you'll be fine.
>
>Is it possible to define "interacts poorly with cookies"?

"Doesn't cache if it sees one"

This is policy you can change with your own vcl.

--
Poul-Henning Kamp | UNIX since Zilog Zeus 3.20
phk at FreeBSD.ORG | TCP/IP since RFC 956
FreeBSD committer | BSD since 4.3-tahoe
Never attribute to malice what can adequately be explained by incompetence.
Current Varnish status? [ In reply to ]
Denis Br?khus <denis at startsiden.no> writes:
> Dag-Erling Sm?rgrav <des at linpro.no> wrote:
> > The differences between the released version and the svn trunk are
> > currently very small (a few bug fixes).
> So SVN would actually be more stable then?

Possibly, if your environment triggers the bugs that have been fixed
since the last release.

> > Whether Varnish is usable in a production environment depends on the
> > nature of your application. Varnish currently does not respect Vary:
> > headers and interacts poorly with cookies, but if you don't use
> > either, you'll be fine.
> Is it possible to define "interacts poorly with cookies"? I do think
> our application relies quite heavily on cookies for session
> handling. Does interacting poorly imply that any site where cookies
> are used do not work well with Varnish, or simply that Varnish does
> not handle caching well when cookies are involved?

Basically, if a page uses cookies, you can't cache it. That goes for
any proxy, not just Varnish.

By default, Varnish goes into PASS mode if the client includes a
cookie in the request. It will however cache a page delivered from
the backend even if it contains a cookie, so everybody gets the same
cookie until the page expires... In Varnish 1.0, this is a feature,
as it was not intended for sites that use cookies. I expect that in
Varnish 2.0 - perhaps even in 1.1 if we decide to do a 1.1 - it will
be reclassified as a bug, and fixed.

Workaround: if only part of your site uses cookies, you can configure
Varnish to always use PASS mode for that part, and cache the rest.

BTW, I've looked at startsiden.no and did not find any cookies on any
page I visited.

DES
--
Dag-Erling Sm?rgrav
Senior Software Developer
Linpro AS - www.linpro.no
Current Varnish status? [ In reply to ]
In message <ujry7n28bkw.fsf at cat.linpro.no>, Dag-Erling =?iso-8859-1?Q?Sm=F8rgra
v?= writes:
>Denis Br=E6khus <denis at startsiden.no> writes:
>> Dag-Erling Sm=F8rgrav <des at linpro.no> wrote:
>> > The differences between the released version and the svn trunk are
>> > currently very small (a few bug fixes).
>> So SVN would actually be more stable then?
>
>Possibly, if your environment triggers the bugs that have been fixed
>since the last release.

I should warn though, that SVN will go into active development shortly, so
you will have to pay attention to when you grab a copy.

--
Poul-Henning Kamp | UNIX since Zilog Zeus 3.20
phk at FreeBSD.ORG | TCP/IP since RFC 956
FreeBSD committer | BSD since 4.3-tahoe
Never attribute to malice what can adequately be explained by incompetence.
Current Varnish status? [ In reply to ]
----- Dag-Erling Sm?rgrav <des at linpro.no> wrote:
> Basically, if a page uses cookies, you can't cache it. That goes for
> any proxy, not just Varnish.

Yes I know that.

> By default, Varnish goes into PASS mode if the client includes a
> cookie in the request. It will however cache a page delivered from
> the backend even if it contains a cookie, so everybody gets the same
> cookie until the page expires... In Varnish 1.0, this is a feature,
> as it was not intended for sites that use cookies. I expect that in
> Varnish 2.0 - perhaps even in 1.1 if we decide to do a 1.1 - it will
> be reclassified as a bug, and fixed.

Thanks for the clarification. I actually think I can live with that for some time.

> Workaround: if only part of your site uses cookies, you can configure
> Varnish to always use PASS mode for that part, and cache the rest.

Thanks for the tip.

> BTW, I've looked at startsiden.no and did not find any cookies on any
> page I visited.

Well, we are looking into using Varnish at Startsiden, but this is a different project than those pages. And I might have expressed myself a little vague, but I do definitely know that we use Cookies for this app..

Best Regards
--
Denis Braekhus - Teknisk Ansvarlig ABC Startsiden AS
http://www.startsiden.no
Current Varnish status? [ In reply to ]
----- Kenneth R?rvik <Kenneth.Rorvik at hio.no> wrote:
> Denis Br?khus wrote:
> > So, my question is, how stable do you consider the current release
> to be?
> (http://www.hio.no) for three weeks + now. In that time, there's been
> one major incident, in which varnish suddenly started dropping all
> incoming connections, possibly resetting, with clients ending up
> simply with blank pages.

Thanks for the info. I added a content script check to my alteons, checking for the length of a particular object through http. This should eliminate any major mishaps I guess.

So my setup ended up being :

VarnishServer1 VarnishServer2
| |
AppServer1 AppServer2

If VarnishServer1 or 2 fails the alteon falls back to using the relevant appserver directly instead..

Looking forward to see how this performs under load. I have high expectations for Varnish actually :)


Regards
--
Denis Braekhus - Teknisk Ansvarlig ABC Startsiden AS
http://www.startsiden.no