Thursday, October 13, 2005

If you go to our bubbler.net site and look around, you'll see that our web platform supports custom domain mapping.


It has been dawning on me, by reading some blogs (cybersonic ) and from talking to customers, that the way we do this is really far superior to the Virtual Host mechanism in Apache. So let me geek out for a second and talk about this, because it's cool.


DNS servers are one of those things that everybody knows they need to configure to get on the internet, but most people aren't quite sure what they do. It's pretty simple: they look up a "name", and return a "number". Like a giant phone book. They resolve a name like 'bubbler.net' to an IP address (66.201.44.131). That's pretty much all they do.


So when you type an address into a browser, it looks it up in the directory (DNS server) and opens an HTTP connection to that IP address. Simple, right?


But for "custom domains", what happens is that lots and lots of different domain names all map to the same IP address. In our system, not only does bubbler.net map to 66.201.44.131, so does blog.glennreid.com, m949.com, www.blodgettcommunications.com, and hundreds of others.


So how does the server sort this out, with all these domains coming to the exact same place, just an IP address?


The HTTP request header has the domain name that the user is surfing in on. The only question is what page to serve, as you don't want to give index.html to everybody. So you need to associate a user/page owner with each domain name.


With Apache, the administrator has to create a VirtualHost entry in the Apache config file, which is not for the faint of heart. The admin has to set up a "root directory" and permissions and decide whether or not to allow server-side includes and a bunch of stuff like that. It is not a trivial process. Then you have to restart the Apache server for it to take effect.


With our server, we just look at the incoming HTTP request header and see what domain it thinks it's being sent to, and we look it up on the fly to see if any of our users have claimed that domain for one of their pages, which they do by just typing it in, in the Rename Page dialog. It is instantaneous and highly scalable, unlike Apache, which reserves resources for each virtual host and you can only host a relatively small number on any given server. We can host hundreds, or thousands, of unique domains on a single server, without the administrator doing anything, or even knowing about it. The users can do it themselves. The only hard part is configuring the domain registrar's interfaces, which can be a bit challenging (we have partnered with one, PairNIC, who makes it fairly easy, and we have instructions on how to do it).


Anyway, it occured to me that we have a pretty great innovation in this area and as hosting providers discover this, I think they will be sort of amazed. It's not the kind of thing that gets a lot of attention in the press, to come up with a better way to do virtual host tables, but for the people who have to do this all day long--and there are a lot of them--it's pretty significant.

Saturday, October 08, 2005

Web 2.0: the energy is building

I am excited about a lot of the news coming out of the Web 2.0 show. Our server engine to power many of these kinds of services and we're getting a ton of interest in it.


We're going to roll out a developer API relatively soon and we're looking for key developers to partner with to build innovative front-end applications on our platform. If you're interested, drop me an email.


We're about to announce some new OEM partners as well.


I do have to take issue with some of the press around Web 2.0 that is characterizing it as "frothy" or a "bubble economy". There is certainly some speculation happening, but it's too early to tell which things (voice over IP, social networking, blogging) will be the fabric of the new internet, and which are passing fads. We're agnostic, and believe that all of these things should be the basic building blocks of the next-generation internet. And we plan on powering it.