Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 4023514
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 20, 20262026-05-20T10:36:27+00:00 2026-05-20T10:36:27+00:00

A very popular choice for running Perl web applications these days seems to be

  • 0

A very popular choice for running Perl web applications these days seems to be behind a nginx webserver proxying requests to either a FastCGI daemon or a PSGI enabled webserver (e.g. Starman).

There have been lots of question as to why one would do this in general (e.g. Why use nginx with Catalyst/Plack/Starman?)
and the answers seem to apply in both cases (e.g. allow nginx to serve static content, easy restart of application server, load balancing, etc.)

However, I am specifically interested in the pros/cons of using FastCGI vs a reverse-proxy approach. It seems that Starman is widely considered to be the fastest and best Perl PSGI application/web server out there, and I am struggling to see any advantages to using FastCGI at all. Both approaches seem to support:

  • UNIX domain sockets aswell as TCP sockets
  • fork/process manager style servers aswell as non-blocking event-based (e.g. AnyEvent) servers.
  • Signal handling/graceful restart
  • PSGI

Similarly, nginx configuration for either option is very similar.

So why you would choose one over the other?

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-20T10:36:28+00:00Added an answer on May 20, 2026 at 10:36 am

    A reverse proxy setup (e.g. nginx forwarding HTTP requests to Starman) has the following advantages:

    • things are a bit easier to debug, since you can easily hit directly the backend server;

    • if you need to scale your backend server, you can easily use something like pound/haproxy between the frontend (static-serving) HTTP and your backends (Zope is often deployed like that);

    • it can be a nice sidekick if you are also using some kind of outward-facing, caching, reverse proxy (like Varnish or Squid) since it allows to bypass it very easily.

    However, it has the following downsides:

    • the backend server has to figure out the real originating IP, since all it will see is the frontend server address (generally localhost); there is almost an easy way to find out the client IP address in the HTTP headers, but that’s something extra to figure out;

    • the backend server does not generally know the orignal “Host:” HTTP header, and therefore, cannot automatically generated an absolute URL to a local resource; Zope addresses this with special URLs to embed the original protocol, host and port in the request to the backend, but it’s something you don’t have to do with FastCGI/Plack/…;

    • the frontend cannot automatically spawn backend processes, like it could do with FastCGI for instance.

    Pick your favourites pros/cons and make your choice, I guess 😉

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

This seems to be a very popular question though i didn't seem to find
I'm using JBoss Seam Framework, but it's seems to me isn't very popular among
I've developed my first web application which, surprisingly, is getting very popular. Because the
Nowadays, REST is very popular on web community. So that I am curious to
These are two very popular ways of formatting a string in Python. One is
Often with very popular videos I see a ridiculous view count. See this video
Here's a common practice I see often (including from a very popular iPhone developer
I am familiar with jUnit. What unit testing framework is very popular for VS?
I've noticed that Matlab is very popular among the computer vision and image processing
Today I was reading code from some very popular numerical libraries written in FORTRAN

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.