An OSAX object server can be used
in many different configurations, including local and distributed configurations. In local configurations, the database, object server, and application all execute on the same computer. In distributed configurations, these components execute on two or more computers cooperatively on behalf of a single user.
Web server accesses local OSAX object server:
The appropriate configuration for a given application depends on the application requirements for interactive performance, database size and administration, network scale, and platform independence.
Using Object Servers with Web Servers
An OSAX object server and database can be accessed directly from an Active Server Page using the Microsoft Active Server. Simply place a named reference to the object server class on the page. Then use the server's scripting capability to access the database contents and format them into HTML content.
<OBJECT RUNAT=Server ID="osBooks" CLASSID="CLSID:84858E05-533D-11D0-8771-000000000001"> </OBJECT> <H2>ObjectStore OSAX Books Example - Microsoft Active Server</H2> <% Set osDatabase = osBooks.ObjectStore.OpenDatabase("D:\ODI\OSAX\Examples\Books\Books.db") %> <TABLE BORDER=2> <TH>Title<TH>Author <% Set B = osDatabase.Value("Books", osBooks.CBookElt) > < Do > < Author = B.Book.Author.Name > < Title = B.Book.Name %> <TR><TD><%=Title%><TD><%=Author%> <% Set B = B.Next > < Loop While Not B Is Nothing % > </TABLE> <% osDatabase.Close %>
It is important to note that DCOM performance is dramatically slower than InProc COM performance. This significantly affects the design of an object server and its clients. An InProc COM client might reasonably perform computations directly on ObjectStore objects and properties, because of the high performance of object access in that configuration (millions of accesses per second). A DCOM client should minimize interaction with the object server by performing more computation on the server side, because of the poor performance of object/method access in that configuration (hundreds of accesses per second).
[HKEY_ROOT_CLASSES\CLSID\{clsid}] "AppID" = "{clsid}"
Updated: 03/18/98 13:56:17