So I need to keep track of all servers that I start and for each one return it's dispatch-table something like this?:
(defvar *server1* (start-server :port 3001....)
(defvar *server2* (start-server :port 3002....)
(setq *meta-dispatcher* (lambda (server)
                            (declare (ignore server))
                            (if (eql server *server1*) *dispatch-table1* *dispatch-table2*)))

Why can't start-server take a dispatch-table as a parameter?

Andrew


On 4/12/07, Edi Weitz <edi@agharta.de> wrote:
On Thu, 12 Apr 2007 15:45:39 -0400, "Andrei Stebakov" <lispercat@gmail.com> wrote:

> On the other hand, if running multiple hunchentoot servers is OK in
> one image I would keep separate *dispatch-table* per each server and
> it would make a perfect logical separation for different apps. Do
> you think it's a reasonable approach?

Yes, you'd use *META-DISPATCHER* then.  Note that there are some parts
of Hunchentoot (for example logging and error handling) that are
currently controlled by global variables which should actually be
per-server switches.  You'll find some discussions related to this in
the mailing list archive.  This is a remnant of Hunchentoot's heritage
from a single-server library (TBNL).  Several users have announced to
send patches to fix this but haven't sent anything yet.  I'll probably
clean this up one day, but it's not a big issue for me as I virtually
never use multiple servers in one image.
_______________________________________________
tbnl-devel site list
tbnl-devel@common-lisp.net
http://common-lisp.net/mailman/listinfo/tbnl-devel