FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

FastCGI4D

 
Post new topic   Reply to topic     Forum Index -> FastCGI4D
View previous topic :: View next topic  
Author Message
xammy



Joined: 01 Feb 2007
Posts: 6
Location: Magdeburg, Germany

PostPosted: Tue May 08, 2007 6:11 am    Post subject: FastCGI4D Reply with quote

Hello,

I've started writing a Tango compatible FastCGI library in D, including the following features:
  • Access to the four fcgi streams via special Conduits.
  • Support for plain CGI via the standard Conduits.
  • Threading, an adaptive thread manager is planned.
  • Optimized for performance, avoiding unnecessary allocations.
Currently, it's working for my Linux box - Windows is untested but should work, because the library uses the OS_* functions from the original libfcgi (and therefore depends on it). But the I/O model and protocol implementation is done in a much cleaner way, using Tangos Buffer and Conduit techniques.

If this project is accepted, the title should be "FastCGI4D" and description "A Tango compatible FastCGI library for D".
Back to top
View user's profile Send private message
brad
Site Admin


Joined: 22 Feb 2004
Posts: 490
Location: Atlanta, GA USA

PostPosted: Wed May 16, 2007 10:08 am    Post subject: Reply with quote

Sorry I didn't see this until now. Your project is ready to go. Let me know if you have any questions.

BA
_________________
I really like the vest!
Back to top
View user's profile Send private message
csauls



Joined: 27 Mar 2004
Posts: 278

PostPosted: Wed May 16, 2007 11:19 am    Post subject: Reply with quote

I'll be keeping on eye on this. There could be some real uses for such a beastie in my niche. Smile
_________________
Chris Nicholson-Sauls
Back to top
View user's profile Send private message AIM Address Yahoo Messenger
pragma



Joined: 28 May 2004
Posts: 607
Location: Washington, DC

PostPosted: Mon Jul 09, 2007 1:10 pm    Post subject: Reply with quote

From what I can tell, this project is deceptively simple. Kudos. Smile

So each example is its own stand alone server?

I know, that much should be obvious, but between the documentation here on dsource and what is out on the fastcgi site, it's really not spelled out. I guess I'm too used to heavyweight web-server projects. Smile
_________________
-- !Eric.t.Anderton at gmail
Back to top
View user's profile Send private message Yahoo Messenger
xammy



Joined: 01 Feb 2007
Posts: 6
Location: Magdeburg, Germany

PostPosted: Sat Jul 14, 2007 7:32 am    Post subject: Reply with quote

Okay, I thought it would suffice to describe basic programming for FastCGI in the docs, but the most magic is setting up your web server to use it. I'm going to write some more on the page, if there's time Smile

All 3 examples are servers (for their own), which are contacted by the web server if there's a request for it. The FastCGI application generates a response, mostly the html code (although sending files, etc. is also possible), which the server forwards.

Those 3 basically do the same things, although in different ways. Loop can only answer one request at once.

Thread and Application can handle multiple requests and share much code, but Application is the OOP version and has the advantage, that it creates it's member variables only on thread creation, while using Thread, one must either have one instance for all or do things on every request.

All I/O related objects (like Tango Buffer, Layout and Printer) live on a per-thread basis, and thus if you want high-performance stuff, Application is the one to choose.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic     Forum Index -> FastCGI4D All times are GMT - 6 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group