COM+ Set to Leapfrog Enterprise JavaBeans, When it Arrives
At Microsoft Corp.’s recent developers' conference in Denver, chairman Bill Gates predicted that 60,000 applications will be available for Windows 2000 when it is launched, and that this number will grow to more than 100,000 within the first 18 months. Many of these applications will be built on COM+, Microsoft's new component-based framework, thereby helping to push the new protocol’s adoption.
But while Redmond is positioning COM+ as a competitive framework to those offered by Enterprise JavaBeans (EJB) and CORBA, its bundling with Windows 2000 may actually slow its availability to developers.
COM+, first unveiled in August, is the next evolutionary stage of Microsoft's Component Object Model (COM) and Microsoft Transaction Server (MTS), explains Michael Gross, product manager for COM+. COM, Microsoft's original single-user application model, was released in 1983; MTS was launched in 1996 as an enterprise-scale framework. COM+ combines the enterprise characteristics of MTS and productivity of COM. The technology will be integrated into the Windows 2000 operating system, and will extend and enhance the component services found in Windows NT 4.0.
"With COM+, we're building on MTS technology, and adding additional services," Gross says. These services include load balancing, in-memory database, and queued components. COM+ will also support transactions managed by non-COM+ transaction processing environments that support the Transaction Internet Protocol (TIP).
About 46 percent of Fortune 1000 companies use MTS in Windows NT 4.0 as their application server, according to a survey from Forrester Research (Cambridge, Mass., www.forrester.com). GartnerGroup (Stamford, Conn.) predicts that more than half of all new OLTP applications will use MTS and COM+ by the end of 2001. Delays in releasing Windows 2000, however, are hampering the availability of COM+ since the two are bundled, comments Yefim Natis, research director with GartnerGroup. "While Windows 2000 is being delayed for its own reasons, associated technology such as the application platform middleware -- MTS and COM+ -- has to wait."
COM+ will compete with a number of other object transaction monitors appearing on the market, including M3 from BEA Systems (Sunnyvale, Calif.), Orbix from IONA Software (Dublin, Ireland), Component Broker from IBM Corp. and Oracle Application Server. "Microsoft is not the only vendor who wants to offer technology for enterprise computing," Natis says. "There is a large number of vendors who all want to offer technology in this space."
Notably absent from COM+ will be support for EJB, a feature being incorporated by most other object transaction monitor vendors, Natis observes. Ironically, he adds, "EJB was originally based on some of the ideas in MTS. But now MTS, in order to catch up with EJB, has to evolve. And COM+ will be the product that will catch [up to] and move further in terms of programming power and productivity than EJB." While MTS is not as rich as EJB, "COM+ will have everything EJB has, and probably more," Natis says. "They're leapfrogging each other."
When the operating system and accompanying framework are released, COM+ will be "a very significant evolution for Microsoft," Natis adds. "Microsoft's intent has always been to be the singular platform for all forms of computing in an enterprise environment. COM+ will provide that."
The infrastructure development market tends to be divided into two segments -- "systematic" for long-term development and "opportunistic" for short-term projects. Thus, Microsoft may need to offer two versions of COM+, Natis observes. This may take the form of a fully loaded enterprise version and a standard version. COM+ may also be over-engineered, Natis warns. Technologies such as in-memory database and full support for objects are "important to have, but most people will never use it," he says. "Developers have been very productive without these features."
One of the new features, in-memory database (IMDB), provides applications with fast access to data, without incurring the overhead associated with storing and accessing durable state to and from a physical disk. "Oftentimes, these components are going to be running on machines that are different machines than your database in on," Gross says. "You'll be running your application on a Windows 2000 machine, but you may be accessing the data from an Oracle database on another platform. The network between the two machines can slow your applications down. With IMDB, the machine that's running your application sets aside a chunk of memory for the database from the other machine."
Another feature, queued components, incorporates technology from Microsoft's MSMQ messaging middleware. This will replace remote procedure calls in COM and MTS, Gross says.
COM+ also incorporates dynamic load balancing technology, which automatically spreads client requests across multiple COM components in an application cluster. A future release of COM+ will enable developers to write specific load-balancing algorithms, says Microsoft's Gross. "For example, if you take down a machine once a month at 5 p.m., your load-balancing algorithm can not send data to that machine at that time."
The COM+ publish and subscribe event service provides a general mechanism that notifies all subscriber components of an event generated by another publishing component. Other new features include enhanced application security, more centralized administration via a new Component Services Explorer and object pooling.