I am sure whoever has ever thought of doing web development has heard of php,
perl, ASP and of course, java. Also there are other options like CGI and
I decided to write my own application server for many reasons.
- CGI scripts are not tied to each other and maintening them together as
an application is pain
- Languages like PHP and perl do not appeal to me because they appear more
like set of scripts tied together rather than an application
- Java is not exactly my first preference. I consider C++ to be a better OO oriented language but that is just a personal taste.
- I prefer to work on Unix/Linux. So Microsoft technologies were out of scope.
So, I wanted a platform that would be
- Resident continously
- Written in C/C++
- Easy to use and fast to develop upon
So, after three years of conception of this idea, I have an implementation
today that I can showcase.
So what is it exactly? You should read the architecture document now.
So what exactly do I gain from using this thing?
- You can use all the available C/C++ APIs in your application
- You can do things like listening to a mail popup and http requests in
same application instance and interchange data between threads
- You can schedule maintenance and automatic resource tuning at specific
In short, you write a real application rather than a set of scripts which
induces a state on a stateless protocl plus data.
Now, that is not enough if it is hard to code and slow to develop. Since I had
to develop an application on top of this server, I developed some useful APIs on
top of it.
Some Useful APIs
- HTTP handler library
- This is a utility library bundled with OAS Server that make life easier
to read cookies and HTTP request fields
- SMTP library
- Written on top of libesmtp, this provides a simple API where a web
application can send mail without blocking on mail delivery
- Since large part of web contents is static, using it in C/C++
application becomes cumbersome. So I invented this little lex analyser
which converts static HTML snippents to const char declarations.
They become damn easy to use and can even be reused .
You should see the example application bundled with OAS Server to see all
these technologies in action. It is a working issue tracking system that I
developed for my company.
please note. I am trying to complete this site as soon as possible
but there are still things that are inconsistent. For now, there are no downlaod
packages. So please use CVS access
Contact me at
shridhar _ daithankar @ persistent . co. in