performanceperl

perl-cgi script slowness


I have a perl-cgi script which is log to Cisco devices and run a command. So recently move the script from old Solaris server to the newer more powerful VM server. Now the script is very slow to log to the device actually got timeout. I am not expert on perl and I don't know how I can troubleshoot. Regarding of the network there is no issue detected upon my test. As I said the server and the network at least 10 x faster than the old one.

Any suggestion? thank in advance.


Solution

  • The script was probably written using blocking sockets. The fact that it moved has probably slowed down the connection between the cisco devices and the server running the CGI. I would check your network path first. If this is still a concern you should write this to fork() a child process, use non-blocking socket techniques or write a CLI app. This doesn't sound like something that is well suited to run as a CGI.