<div>how about store the backend server in memchached.</div>
<div>so 3rdhparty tool can update the server status for nginx.</div>
<div>But I don't know whether the performance is enough.<br><br> </div>
<div><span class="gmail_quote">2008/7/24, mike <<a href="mailto:mike503@gmail.com">mike503@gmail.com</a>>:</span>
<blockquote class="gmail_quote" style="PADDING-LEFT: 1ex; MARGIN: 0px 0px 0px 0.8ex; BORDER-LEFT: #ccc 1px solid">sorry not "monitor that file" but MANAGE that file.<br><br>as in, keep a list of upstreams, and update the file, send HUP/etc to<br>
nginx after it's updated<br><br>On 7/23/08, mike <<a href="mailto:mike503@gmail.com">mike503@gmail.com</a>> wrote:<br>> yeah you could have an<br>><br>> include 'upstreams.conf';<br>><br>> and some external process monitor that file, and then send a HUP or<br>
> whatever the appropriate process signal to nginx is, but that seems a<br>> little messy. it would be nice if nginx had support built-in for the<br>> most graceful recovery/best user experience when an upstream dies<br>
> (maybe it already does, i am just speculating)<br>><br>><br>> On 7/23/08, Istvan Szukacs <<a href="mailto:leccine@gmail.com">leccine@gmail.com</a>> wrote:<br>> > but if you store the upstreams in memory(very simple structure) after the<br>
> > nginx restart, and remove the dead one(might be dead for some reason)...<br>> ><br>> > monitoring should be configurable, what parameter and what value...<br>> ><br>> ><br>> > mike wrote:<br>
> > > for this to happen i believe<br>> > ><br>> > > a) there needs to be a way to dynamically add/remove upstreams (or at<br>> > > least mark them active/inactive) from an external call to nginx daemon<br>
> > ><br>> > > b) monitoring has to be there, which could be built in, or could be an<br>> > > external process. personally i'd be happy with an external monitoring<br>> > > thing like ldirectord (some sort of healthchecking script) that upon<br>
> > > noticing a server being down tells nginx "stop this upstream" etc.<br>> > ><br>> > ><br>> > ><br>> > > On 7/23/08, Almir Karic <<a href="mailto:almir@kiberpipa.org">almir@kiberpipa.org</a>> wrote:<br>
> > ><br>> > ><br>> > > > i'm kinda interested in implementing a true load balancer functionality<br>> > > > in nginx, my idea is to extend the upstream module so that it would be<br>
> > > > able to dynamically modify the configuration of servers (such as mark<br>> > > > them down or change the weight) i see two possible ways:<br>> > > ><br>> > > > - controlling socket over which you would feed the commands<br>
> > > > - UPSTREAM method (similar to ncache's PURGE), the advantages of this<br>> > > > being easier control of configuration file and no need for a dedicated<br>> > > > thread to listen on the socket<br>
> > > ><br>> > > ><br>> > > ><br>> > > > the idea is to implement just the controling protocol in nginx, it would<br>> > > > require some controling daemon/script to actually do anything useful.<br>
> > > ><br>> > > ><br>> > > > thoughts? advices?<br>> > > ><br>> > > > also any chance of this kind of code making it to official nginx?<br>> > > ><br>
> > > > --<br>> > > > vi vi vi -- the number fo the beast<br>> > > ><br>> > > ><br>> > > ><br>> > > ><br>> > ><br>> > ><br>> > ><br>
> ><br>> ><br>> ><br>><br><br></blockquote></div><br>