Perl, when used with apache and mod_perl is almost as fast, if not as fast as a C++ program. It may be even faster if connecting to a database! Think about it for a moment.
Mod_perl: Its just cool. You have one perl "thread" for each HTTPD thread. It keeps every perl script cached as in a pre complied state. Perl is not a normal interpeted language. It is actually compiled to perl byte code then interpeted. After "compiled" it is very fast. Also, every "compiled" script is cached in memory.
DBI/DBD: This is what you use to connect to a database. It does very neat things when used with mod_perl. It keeps database connection's open, so when your perl script comes along asking to connect to a database, If one is already open, but not being used by another perl script, it is given to you. This can cut 5 seconds of connect time off your perl script.
Perl language: You can script some pretty hairy stuff in one easy to read line of code. I know 90% of the stuff I do would take 20+ lines of code that I do in one... Some things in C/C++ are not practical to code. All I can do in C/C++ is "Hello World", but with perl I can do that with 1 line of code instead of 2-3! Perl will cut your development time by 2/3.
WARNING: I could be completely wrong. This is only what I have read. I use perl to get sys admin jobs done on NT and Unix, most with CGI front ends, but I haven't used it for a cgi with a high hit rate, so I can't say I can prove it.
Perl, when used with apache and mod_perl is almost as fast, if not as fast as a C++ program. It may be even faster if connecting to a database! Think about it for a moment.
Mod_perl: Its just cool. You have one perl "thread" for each HTTPD thread. It keeps every perl script cached as in a pre complied state. Perl is not a normal interpeted language. It is actually compiled to perl byte code then interpeted. After "compiled" it is very fast. Also, every "compiled" script is cached in memory.
DBI/DBD: This is what you use to connect to a database. It does very neat things when used with mod_perl. It keeps database connection's open, so when your perl script comes along asking to connect to a database, If one is already open, but not being used by another perl script, it is given to you. This can cut 5 seconds of connect time off your perl script.
Perl language: You can script some pretty hairy stuff in one easy to read line of code. I know 90% of the stuff I do would take 20+ lines of code that I do in one... Some things in C/C++ are not practical to code. All I can do in C/C++ is "Hello World", but with perl I can do that with 1 line of code instead of 2-3! Perl will cut your development time by 2/3.
WARNING: I could be completely wrong. This is only what I have read. I use perl to get sys admin jobs done on NT and Unix, most with CGI front ends, but I haven't used it for a cgi with a high hit rate, so I can't say I can prove it.
-Tripp