Last week, software firm Covalent Technologies announced that its Enterprise Ready Server (ERS) product is now compatible with the Microsoft ASP.NET development environment. The server is based on the Apache 2.0 open-source platform. "Developers now can create ASP.NET applications and run them on Apache systems," according to Jim Zemlin, Covalent's vice president of marketing. "We want to interoperate with as many good technologies as possible, and ASP.NET is good technology."
What's particularly interesting about the announcement is that the product wasn't a joint effort by Microsoft and Covalent (although Microsoft's ASP.NET team did give Covalent developers technical support on the implementation). Covalent used the publicly available, published APIs that Microsoft provides with ASP.NET to achieve ASP.NET integration. Microsoft made ASP.NET a highly flexible Web platform with built-in support for hosting on any Web server. ASP.NET was already running on a Web server platform other than IIS before the Covalent announcement—that non-IIS Web server is the one that ships with Web Matrix, Microsoft's free tool for building ASP.NET applications.
In technical terms, the Covalent product doesn't achieve interoperability with ASP.NET. Covalent's software module connects the Apache HTTP server to the ASP.NET worker process (aspnet_wp.exe), which is separate from the Web server. The Covalent module doesn't modify ASP.NET but rather lets the Apache server talk to the worker process.
Covalent's solution is actually quite crafty and has fueled much speculation about what else developers could do. Certainly, they could quite easily do for IBM's WebSphere Web server what Covalent has done for the Apache server.
I've written in the past about my belief that Windows eventually will run on varying hardware and software platforms. But make no mistake: Covalent's announcement doesn't represent ASP.NET running on another platform—it's ASP.NET running on an Apache-based Web server on Windows. Maybe I'm overstating the obvious, but Microsoft won't provide technical support for ASP.NET applications running on Apache, as John Montgomery, group product manager, .NET Developer Marketing, publicly stated after Covalent made its announcement. Technical support will have to be through Covalent. I hope the company is ready for it!
Microsoft isn't doing any work to make ASP.NET run on platforms other than Windows. Microsoft made ASP.NET the best platform for building Web applications on Windows, and Redmond is focused on continued innovation on the Windows platform. But Microsoft has clearly stated that nothing is preventing other companies from extending Microsoft .NET (specifically the Common Language Runtime—CLR) to other platforms and has publicly encouraged other software companies to do so.
"Using Covalent Enterprise Ready Server, enterprises will now be able to use the world's most widely deployed Web server—Apache—with Microsoft .NET technologies. Covalent's Apache support for Microsoft ASP.NET is a significant offering for enterprise customers wishing to take advantage of the Microsoft Web services development platform and deploy the Apache Web server," Zemlin said.
Although developers can use APIs to run ASP.NET on non-Microsoft Web servers, don't misconstrue that openness to mean that Microsoft is giving up on IIS in any way. It simply shows that Microsoft wants to make innovative technologies such as ASP.NET extensible enough to give customers a choice. "ASP.NET is a highly flexible platform with built-in support for hosting on any Web server. We're pleased to see Covalent making ASP.NET available to its expanded user base," said Shawn Nandi, product manager on the ASP.NET team.
I believe that IIS and Windows provide the best integrated Web server solution. But, as I've stated in the past, many companies have hardware and software investments that they can't throw away simply because Microsoft has produced something better. Covalent's software engages a "best of breed" approach that will let many companies leverage their Apache investments and still take advantage of ASP.NET's superior application power. And that seems like a good idea to me, whether customers use it to leverage existing Apache investments or as a transition to .NET.
You can learn more about Covalent's Apache 2.0 support for ASP.NET Web services on Covalent's Web site ( http://www.covalent.net ) or from the Covalent technical white paper "Apache 2.0 Support for Microsoft ASP.NET Web Services," which you can obtain at http://www.covalent.net/products/rotate.php?page=93 .