Forum OpenACS Q&A: libnsd

7: libnsd (response to 6)
Posted by John Sequeira on
I like the idea of using libnsd to replace the bits of nstcl that overlap with it.  I've downloaded Jamie's binary and played with it at Andy P's suggestion.  It looks cool and wouldn't take long to embed in pnsd.  It's on my roadmap.

I know that libnsd/Apache integration has been attempted (a month or two ago) and it was not successful.  Whether the (threading?) issues get resolved when the AOLServer reaches release status,  or breaks on subsequent releases,  remains to be seen.  If it works,  I would love it.

Regardless, since libnsd omit's lots of AOLServer pieces related to the web server,  there's a decent amount of glue code that needs to be written to make it work with an arbitrary web environment.  It's not complicated code... mostly just parameter marshalling,  but someone needs to write it.

Also,  regarding caching,  let's just say that's in research mode.  Scalability is something I've decided to address once basic web serving is functional, and not before.  I have plenty of ideas  (rdbms-caching, tequila, edge-side-includes),  some of which might only be appropriate for low-traffic Intranets,  but others just might scale.  libnsd on it's own will not solve the problem - it will need to be told when, how and what to garbage collect, for instance.  And of course you have the problems of cache synchronization with multiprocess web servers, etc.

Anyway,  I had hoped to achieve 100% runtime compatibility with OpenACS,  and avoid any but I've realized there's no way I'll do that on my own (even with a huge nstcl headstart).  libnsd will go a long way towards helping to achieve this.