[OT] Which is the fastest XML/XSL engine?

2002-08-30 Thread mmaunder

Hi,

This is rather off topic, but since I will be running this under mod_perl:

What is the fastest technology available for transforming XML using XSL under 
perl/mod_perl on apache? The only perl api I'm aware of is XML::XSLT which is not 
particularly fast. I'd like to do transforms in realtime for a high traffic site.

thanks,

Mark.



Re: [OT] Which is the fastest XML/XSL engine?

2002-08-30 Thread mmaunder

Thanks very much for your super fast replies. LibXSLT looks awesome. I found some 
benchmarks which you're probably aware of:
http://iterx.org/essays/2002/02/22

Thanks again,

Mark.

On Fri, Aug 30, 2002 at 09:53:49AM +0100, Ben Ausden wrote:
  
  What is the fastest technology available for transforming XML 
  using XSL under perl/mod_perl on apache? The only perl api 
  I'm aware of is XML::XSLT which is not particularly fast. I'd 
  like to do transforms in realtime for a high traffic site.
 
 Try the XML::LibXML and XML::LibXSLT modules, which use the Gnome project's XML and 
XSLT C libraries:
 
 http://search.cpan.org/author/PHISH/XML-LibXML-1.52/LibXML.pm
 http://search.cpan.org/author/MSERGEANT/XML-LibXSLT-1.51/LibXSLT.pm
 http://xmlsoft.org/
 http://xmlsoft.org/XSLT/
 
 They're extremely fast, in my experience.
 
 
 regards,
 Ben



Re: modifying @INC at startup and version of perl used

2002-08-29 Thread mmaunder

Jamie,

Use the perl internal variables to figure out what version you're running under: $] 
and $^V
Use these whether you're running perl or mod_perl. You might want to direct questions 
relating to perl in general to the perl beginners list.
Please see perldoc perlvar for more details.

~mark.

On Thu, Aug 29, 2002 at 10:44:15AM +0100, [EMAIL PROTECTED] wrote:
 Hi,
 
 This is probably a luser error as I am quite new to this malarkey, however I have 
been experimenting for a while without progress now. I need to know how to find out 
exactly which version of perl mod_perl is configured to use, and if this can be 
changed as a non-root user, and how to set the @INC.
 
 I have a simple startup script that prints @INC, which prints
 @INC: /sbcimp/run/pd/perl/5.005_03/lib/sun4-solaris
 /sbcimp/run/pd/perl/5.005_03/lib
 /sbcimp/run/pd/perl/5.005_03/lib/site_perl/sun4-solaris
 /sbcimp/run/pd/perl/5.005_03/lib/site_perl
 
 this makes me think I am running 5.005_03? 
 
 In the conf file I have 
 PerlSetEnv PERL5LIB 
/sbcimp/run/pd/perl/5.6.1/lib:/sbcimp/run/pd/cpan/5.6.1-2002.06/lib
 but this does not seem to update the @INC. (I've also tried combinations of PERLLIB 
and SetEnv etc).
 
 When this is set however I get the following errors
 Can't locate object method boot via package mod_perl at 
/sbcimp/run/pd/perl/5.005_03/lib/site_perl/sun4-solaris/Apache/Constants.pm line 8.
 and
 [Thu Aug 29 10:41:12 2002] [error] syntax error at 
/sbcimp/run/pd/perl/5.6.1/lib/warnings.pm line 306, near {^
 syntax error at /sbcimp/run/pd/perl/5.6.1/lib/warnings.pm line 311, near {^
 
 etc, which is making me think I am mixing incompatible perl binaries and modules. 
 
 Does that seem reasonable, and if so what can I do to use perl 5.6.1?
 
 Many thanks for your time.
 jamie
 
 
 Visit our website at http://www.ubswarburg.com
 
 This message contains confidential information and is intended only 
 for the individual named.  If you are not the named addressee you 
 should not disseminate, distribute or copy this e-mail.  Please 
 notify the sender immediately by e-mail if you have received this 
 e-mail by mistake and delete this e-mail from your system.
 
 E-mail transmission cannot be guaranteed to be secure or error-free 
 as information could be intercepted, corrupted, lost, destroyed, 
 arrive late or incomplete, or contain viruses.  The sender therefore 
 does not accept liability for any errors or omissions in the contents 
 of this message which arise as a result of e-mail transmission.  If 
 verification is required please request a hard-copy version.  This 
 message is provided for informational purposes and should not be 
 construed as a solicitation or offer to buy or sell any securities or 
 related financial instruments.



$r-print() with slow clients and stop button

2002-08-28 Thread mmaunder

Hi,

I've created a meta-search that prints out status messages to 
the browser as it receives responses from the servers it is searching by
setting $|=1 and using $r-print. It runs as a mod_perl handler. I'm running
apache 1.3.24 and mod_perl 1.26 on Linux. 

I'm finding that my web app has slowed down radically since I started doing
this. I've tracked it down to the $r-print statements. I suspect that each
statement is waiting for acknowledgement from the client before it will
continue execution. Sometimes children are tied up for 2 minutes! I suspect
these may be where the client has dropped its dialup connection and
$r-print is waiting for acknowledgement of a packet. 

Has anyone else had this problem? I've set httpd.conf's Timeout setting to 5
seconds as a temporary fix. As I understand it, this will affect the amount
of time perl waits before triggering soft_timeout or hard_timeout when doing
$r-print operations?

I'd like to somehow send data to the client and have execution continue until 
the end of a time critical section, after which it will wait for acknowledgement 
of all data that was sent and if that is not received within X seconds, kill
the connection and return OK.

The only way I can think of doing this is to get the client socket
connection, temporarily change it to non blocking, do a send on it, finish
the piece of code, and then change it back to non-blocking once I've
confirmed the data was sent correctly. I'm afraid (very afraid) that this
will break apache or mod_perl somehow. Does this sound like a workable
solution? My C isn't too hot, so I'll be coding the entire thing in Perl and
running it as part of the handler. 

Is there a better or easier way to do this?

thanks,

~mark
http://www.workzoo.com/
[EMAIL PROTECTED]