I did not think that there is a "better" way, there are just a lot of different ways, and each has its pros and cons.
Configuring Apache, like you, is possible, and I don’t understand why this should be bad. Another way is to “connect” each application to the path. This is described further: http://suryahunter.com/wiki/hunter/perl_ironman/mount_multiple_apps_with_plack
If you use PSGI / Plack at all, you can use any web server, as well as Starman or other Perl web servers. Which one you use is up to you. Use the one where you think it has the best performance, or the one you knew best.
Also think that when you start your server, you probably want to start your application automatically, and Apache, Nginx, LightTPD, ... already have startup scripts. If you also want to host other sites, then it is probably best to use one of these web servers.
I prefer FastCGI to run your application. With FastCGI, your application runs independently of your web server, and can also work with other user rights, and not with mod_perl, where all applications run under the same name as the Apache user. It also gives you the advantage that you can restart the application without restarting the full web server (Apache).
Well, through this independent, you probably need more RAM to run the same number of applications, because you run your applications several times instead of using the sharing that Apache / mod_perl gives you.
In the end, it depends on your needs for what is best.
David raab
source share