Hey,
I'm looking for what the next big Apache::ASP feature
should be, and would like to hear your input. Here's
some ideas:
* Caching layer, to cache things like XSLT tranformations
or scripts/includes that take a long time to process
because of things like database overhead.
One might be able to do things like
$Self->Cache(Key => $Request->Form, Expires => 3600);
$Response->Cache(); # in case we don't do new $Self object
$Response->CacheInclude(Key => $Request->QueryString,
Expires => 60, File => 'file.inc')
PerlSetVar XSLTCachePeriod 3600
The Key data would be serialized, via Data::Dumper,
and then checksummed with the script filename for a cache
lookup. The cache would be an on disk cache using
MLDBM::Sync backed with ones choice of MLDBM::Sync::SDBM_File,
DB_File, or GDBM_File for speedy storage and retrieval.
* OO model per script/include... each script or include
might have a reference to $Self, with members like
$Self->{Filename}, and a method call like
$Self->header() would first try to execute a
sub header() defined in the local script, and then
would try to execute a header() defined in the global.asa
or GlobalPackage. This framework would fit neatly with
calls like $Self->Cache described above.
* $Session & $Application stored in the database. In case
Apache::Session is not good enough, this would store
state in databases, and also enable things like Session
garbage collection & events like Session_OnEnd.
* VBScript support. Ime already has something started here.
This would provide a VBScript->perl emulator, and would
allow for easier ports to Apache::ASP, though not perfect
as I think writing a perfect VBScript emulator might be
near impossible for this kind of project.
Any thoughts? Note the timeframe for first prototype of
this next feature is likely around August.
-- Josh
_________________________________________________________________
Joshua Chamas Chamas Enterprises Inc.
NodeWorks <- Web Link Checking Huntington Beach, CA USA
http://www.nodeworks.com 1-714-625-4051
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]