[Mono-dev] Architectural decisions behind mod_mono
robertj at gmx.net
Sun Mar 8 13:11:01 EDT 2009
> Hi all - I'm investigating the possibility of porting a site from
> Apache. From what I understand, mod_mono requires mod_mono_server which
> answers inbound requests over a TCP/IP socket. I'm having a hard time
Mod_mono + mod-mono-server are using unix sockets by default. This
is the default IPC machinery under Unix.
The TCP option is only useful if mod_mono and mod-mono-server are
hosted on different machines.
> understanding this design. First off, for every inbound socket opened in
> Apache, a new socket is opened for mod_mono_server, along with all the
> overhead on the network stack. In the Windows world, IIS hosts the CLR in
> process and the two are very tightly integrated. What's stopping Mono from
> incorporating this design?
IIS + MS ASP.NET are communicating using named pipes, the default IPC
machinery for Windows. Do you see the parallels?
> I'm assuming Java does not have a separate Java server which Apache forwards
> requests to.
You're wrong. Tomcat, the most employed servlet container, is running
in its own process.
> Can't Apache just be configured to natively run Mono applications in
> process? Would this be a massive architectural change to the Mono runtime?
It's almost impossible because ASP.NET was not designed to be hosted
inside a short living process.
More information about the Mono-devel-list