Author: stas Date: Mon Dec 6 09:00:33 2004 New Revision: 109989 URL: http://svn.apache.org/viewcvs?view=rev&rev=109989 Log: various corrections and massages
Modified: perl/modperl/docs/trunk/src/docs/2.0/api/Apache/SizeLimit.pod perl/modperl/docs/trunk/src/docs/2.0/api/Apache/Status.pod Modified: perl/modperl/docs/trunk/src/docs/2.0/api/Apache/SizeLimit.pod Url: http://svn.apache.org/viewcvs/perl/modperl/docs/trunk/src/docs/2.0/api/Apache/SizeLimit.pod?view=diff&rev=109989&p1=perl/modperl/docs/trunk/src/docs/2.0/api/Apache/SizeLimit.pod&r1=109988&p2=perl/modperl/docs/trunk/src/docs/2.0/api/Apache/SizeLimit.pod&r2=109989 ============================================================================== --- perl/modperl/docs/trunk/src/docs/2.0/api/Apache/SizeLimit.pod (original) +++ perl/modperl/docs/trunk/src/docs/2.0/api/Apache/SizeLimit.pod Mon Dec 6 09:00:33 2004 @@ -41,7 +41,7 @@ =head1 Description This module is highly platform dependent, please read the -L<CAVEATS|/Caveats> section. It also does not work under threaded +L<Caveats|/Caveats> section. It also does not work under threaded MPMs, as explained below. This module was written in response to questions on the mod_perl @@ -56,21 +56,22 @@ over time. This module will not really help you with the first problem. For that -you should probably look into Apache::Resource or some other means of -setting a limit on the data size of your program. BSD-ish systems -have setrlimit() which will croak your memory gobbling processes. -However it is a little violent, terminating your process in -mid-request. +you should probably look into +C<L<Apache::Resource|docs::2.0::api::Apache::Resource>> or some other +means of setting a limit on the data size of your program. BSD-ish +systems have C<setrlimit()> which will croak your memory gobbling +processes. However it is a little violent, terminating your process +in mid-request. This module attempts to solve the second situation where your process slowly grows over time. The idea is to check the memory usage after every request, and if it exceeds a threshold, exit gracefully. By using this module, you should be able to discontinue using the -Apache configuration directive B<MaxRequestsPerChild>, although you -can use both if you are feeling paranoid. Personally, I just use the -technique shown in this module and set my MaxRequestsPerChild value to -0. +Apache configuration directive C<MaxRequestsPerChild>, although you +can use both if you are feeling paranoid. Most users use the +technique shown in this module and set their C<MaxRequestsPerChild> +value to C<0>. =head1 Shared Memory Options @@ -78,7 +79,7 @@ module can factor in how much of the memory used by the process is actually being shared by copy-on-write. If you don't understand how memory is shared in this way, take a look at the extensive -documentation at http://perl.apache.org/. +documentation at http://perl.apache.org/docs/. You can take advantage of the shared memory information by setting a minimum shared size and/or a maximum unshared size. Experience on one @@ -102,13 +103,13 @@ =item linux -For linux we read the process size out of /proc/self/status. This +For linux we read the process size out of F</proc/self/statm>. This seems to be fast enough on modern systems. If you are worried about -performance, try setting the CHECK_EVERY_N_REQUESTS option. +performance, try setting the C<CHECK_EVERY_N_REQUESTS> option. =item Solaris 2.6 and above -For solaris we simply retrieve the size of /proc/self/as, which +For Solaris we simply retrieve the size of F</proc/self/as>, which contains the address-space image of the process, and convert to KB. Shared memory calculations are not supported. @@ -118,19 +119,20 @@ =item *BSD* -Uses BSD::Resource::getrusage() to determine process size. This is -pretty efficient (a lot more efficient than reading it from the /proc -fs anyway). +Uses C<BSD::Resource::getrusage()> to determine process size. This is +pretty efficient (a lot more efficient than reading it from the +I</proc> fs anyway). =item AIX? -Uses BSD::Resource::getrusage() to determine process size. Not sure -if the shared memory calculations will work or not. AIX users? +Uses C<BSD::Resource::getrusage()> to determine process size. Not +sure if the shared memory calculations will work or not. AIX users? =item Win32 -Uses Win32::API to access process memory information. Win32::API can -be installed under ActiveState perl using the supplied ppm utility. +Uses C<Win32::API> to access process memory information. +C<Win32::API> can be installed under ActiveState perl using the +supplied ppm utility. =back @@ -144,10 +146,11 @@ =head1 Threaded MPMs -At this time, Apache::SizeLimit does not support use under threaded -MPMs, including "worker." This is because there is no efficient way -to get the memory usage of a thread, or make a thread exit cleanly. -Suggestions and patches are welcome on the mod_perl dev mailing list. +At this time, C<Apache::SizeLimit> does not support use under threaded +MPMs. This is because there is no efficient way to get the memory +usage of a thread, or make a thread exit cleanly. Suggestions and +patches are welcome on L<the mod_perl dev mailing +list|maillist::dev>. @@ -155,6 +158,7 @@ mod_perl 2.0 and its core modules are copyrighted under The Apache Software License, Version 2.0. + =head1 Author Modified: perl/modperl/docs/trunk/src/docs/2.0/api/Apache/Status.pod Url: http://svn.apache.org/viewcvs/perl/modperl/docs/trunk/src/docs/2.0/api/Apache/Status.pod?view=diff&rev=109989&p1=perl/modperl/docs/trunk/src/docs/2.0/api/Apache/Status.pod&r1=109988&p2=perl/modperl/docs/trunk/src/docs/2.0/api/Apache/Status.pod&r2=109989 ============================================================================== --- perl/modperl/docs/trunk/src/docs/2.0/api/Apache/Status.pod (original) +++ perl/modperl/docs/trunk/src/docs/2.0/api/Apache/Status.pod Mon Dec 6 09:00:33 2004 @@ -18,7 +18,7 @@ =head1 Description -The B<Apache::Status> module provides some information +The C<Apache::Status> module provides some information about the status of the Perl interpreter embedded in the server. Configure like so: @@ -28,10 +28,13 @@ PerlResponseHandler Apache::Status </Location> -Notice that under the "modperl" core handler the I<Environment> menu -option will show only the environment under that handler. To see the -environment seen by handlers running under the "perl-script" core -handler, configure C<Apache::Status> as: +Notice that under the +C<L<"modperl"|docs::2.0::user::config::config/C_modperl_>> core +handler the I<Environment> menu option will show only the environment +under that handler. To see the environment seen by handlers running +under the +C<L<"perl-script"|docs::2.0::user::config::config/C_perl_script_>>> +core handler, configure C<Apache::Status> as: <Location /perl-status> SetHandler perl-script @@ -61,103 +64,100 @@ =head1 Options -=over 4 - -=item StatusOptionsAll +=head2 C<StatusOptionsAll> This single directive will enable all of the options described below. PerlSetVar StatusOptionsAll On -=item StatusDumper +=head2 C<StatusDumper> When browsing symbol tables, the values of arrays, hashes and scalars -can be viewed via B<Data::Dumper> if this configuration variable is set -to On: +can be viewed via C<Data::Dumper> if this configuration variable is +set to C<On>: PerlSetVar StatusDumper On -=item StatusPeek +=head2 C<StatusPeek> -With this option On and the B<Apache::Peek> module installed, -functions and variables can be viewed ala B<Devel::Peek> style: +With this option C<On> and the C<Apache::Peek> module installed, +functions and variables can be viewed ala C<Devel::Peek> style: PerlSetVar StatusPeek On -=item StatusLexInfo +=head2 C<StatusLexInfo> -With this option On and the B<B::LexInfo> module installed, +With this option C<On> and the C<B::LexInfo> module installed, subroutine lexical variable information can be viewed. PerlSetVar StatusLexInfo On -=item StatusDeparse +=head2 C<StatusDeparse> -With this option On and B<B::Deparse> version 0.59 or higher -(included in Perl 5.005_59+), subroutines can be "deparsed". +With this option C<On> subroutines can be "deparsed". PerlSetVar StatusDeparse On -Options can be passed to B::Deparse::new like so: +Options can be passed to C<B::Deparse::new> like so: PerlSetVar StatusDeparseOptions "-p -sC" -See the B<B::Deparse> manpage for details. +See the C<B::Deparse> manpage for details. -=item StatusTerse +=head2 C<StatusTerse> -With this option On, text-based op tree graphs of subroutines can be -displayed, thanks to B<B::Terse>. +With this option C<On>, text-based op tree graphs of subroutines can +be displayed, thanks to C<B::Terse>. PerlSetVar StatusTerse On -=item StatusTerseSize +=head2 C<StatusTerseSize> -With this option On and the B<B::TerseSize> module installed, +With this option C<On> and the C<B::TerseSize> module installed, text-based op tree graphs of subroutines and their size can be -displayed. See the B<B::TerseSize> docs for more info. +displayed. See the C<B::TerseSize> docs for more info. PerlSetVar StatusTerseSize On -=item StatusTerseSizeMainSummary +=head2 C<StatusTerseSizeMainSummary> -With this option On and the B<B::TerseSize> module installed, a -"Memory Usage" will be added to the Apache::Status main menu. This -option is disabled by default, as it can be rather cpu intensive to -summarize memory usage for the entire server. It is strongly +With this option C<On> and the C<B::TerseSize> module installed, a +I<"Memory Usage"> will be added to the C<Apache::Status> main menu. +This option is disabled by default, as it can be rather cpu intensive +to summarize memory usage for the entire server. It is strongly suggested that this option only be used with a development server -running in B<-X> mode, as the results will be cached. +running in C<-X> mode, as the results will be cached. PerlSetVar StatusTerseSizeMainSummary On -=item StatusGraph +=head2 C<StatusGraph> -When B<StatusDumper> is enabled, another link "OP Tree Graph" will be -present with the dump if this configuration variable is set to On: +When C<StatusDumper> is enabled, another link I<"OP Tree Graph"> will +be present with the dump if this configuration variable is set to +C<On>: PerlSetVar StatusGraph This requires the B module (part of the Perl compiler kit) and -B::Graph (version 0.03 or higher) module to be installed along with -the B<dot> program. +C<B::Graph> (version 0.03 or higher) module to be installed along with +the C<dot> program. Dot is part of the graph visualization toolkit from AT&T: C<http://www.research.att.com/sw/tools/graphviz/>). B<WARNING>: Some graphs may produce very large images, some graphs may -produce no image if B::Graph's output is incorrect. +produce no image if C<B::Graph>'s output is incorrect. -=item Dot +=head2 C<Dot> -Location of the dot program for StatusGraph, -if other than /usr/bin or /usr/local/bin +Location of the dot program for C<StatusGraph>, +if other than I</usr/bin> or I</usr/local/bin> -=item GraphDir +=head2 C<GraphDir> -Directory where StatusGraph should write it's temporary image files. -Default is $ServerRoot/logs/b_graphs +Directory where C<StatusGraph> should write it's temporary image +files. Default is C<$ServerRoot/logs/b_graphs>. -=back @@ -165,7 +165,10 @@ =head1 Prerequisites -The I<Devel::Symdump> module, version B<2.00> or higher. +The C<Devel::Symdump> module, version C<2.00> or higher. + +Other optional functionality requirements: C<B::Deparse> - 0.59, +C<B::Fathom> - 0.05, C<C<B::Graph>> - 0.03. @@ -182,7 +185,7 @@ =head1 See Also perl(1), Apache(3), Devel::Symdump(3), Data::Dumper(3), B(3), -B::Graph(3), L<mod_perl 2.0 documentation|docs::2.0::index>. +C<B::Graph>(3), L<mod_perl 2.0 documentation|docs::2.0::index>. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]