MTS is Microsoft's server side middleware for COM. It's sort of like a CORBA orb, or object request broker. Where OLEAUT32.DLL takes care of activating COM objects on a local machine, MTS resides on a server. Client machines can connect to the components residing there and make method calls on them. MTS works with a distributed transaction coordinator, which helps manage connections to databases.

ODBC and other types of database connection pooling mean that you can connect to a database for just as much time as is necessary to complete your query, and then release the connection back to the pool, reducing the resource impact on the server. Microsoft plans to get object pooling working as well, which means that MTS will keep an object alive even if there aren't any calls being made to it by client components, so that when calls are made, the overhead of creating an instance of the object is saved.

So, this technology is sort of cool, but of course Microsoft says that they invented (with their freedom to innovate) the whole thing, which of course is not true. As far as I know, the OMG was designing CORBA before Microsoft really got going on the COM thing, and of course there were Lisp machines at MIT in the '60s that did this sort of thing. What's a good (enterprise level good) set of software one can use on Linux to get the same pooling advantages, especially with a database such as PostgreSQL, but still be usable from Windows clients? Either that, or a way for a Linux client to call a method on a component running on an MTS server.

Log in or register to write something here or to contact authors.