On Nov 30, 2009, at 2:31 AM, Thomas Bellman wrote: > Nigel Kersten wrote: > >> I can't see a way around shared state for efficient load balancing, >> but >> think that being able to provide a list of puppet servers to the >> clients >> would greatly help with failover. > > No state at all in the server scales better than having state, because > without any server-side state you don't need to share it between > servers. > Similar to how a parallell program that doesn't need to communicate > between the threads scales better than one that does need > communication. > > (And in this case a pure cache doesn't count as state, because the > server > can throw it away and still give identical answers to the clients). > > In some cases no server-side state means that you have to avoid some > features. But in this particular case (keeping the receiving of facts > and the generating and sending of the catalog in the same RPC > request), > there's no loss of functionality. Storedconfigs is a different thing > of course, but that's not the question here.
It's pretty clear that the solution here is to switch from GET to POST and to change the internals of compiling to support receiving the facts as the payload to a post. That solves the current problems while leaving us open to doing all kinds of other interesting load balancing things in the future. -- Somewhere on this globe, every ten seconds, there is a woman giving birth to a child. She must be found and stopped. -- Sam Levenson --------------------------------------------------------------------- Luke Kanies | http://reductivelabs.com | http://madstop.com -- You received this message because you are subscribed to the Google Groups "Puppet Developers" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/puppet-dev?hl=en.
