i must host a credit card applicatoin in which a user posts lots of texts, photos ,video and audio files . Contemplate it much like the facebook message service therefore we are confused over ongoing to make use of apache or use other available choices like nginx ,lighttpd just how to determine and select one over another and why. Please help together with your solutions

You should use nginx as reverse proxy with apache. where nginx will handle static files, and apache handle dynamic files.

Your question touches the top of various webserver architectures, forking versus threads. There's this older article from Philip Greenspun about AOLServer that is nice to see along with a more theoretically complete background article that's associated with in the nginx wiki.

While servers like nginx are handy in situations where you need to answer plenty of plenty of (extremely short/small) synchronised demands and also the servers don't waste lots of memory, things change if this involves the type of application you build.

Could it be a really large and sophisticated application that runs fine with PHP? You are able to proxy it and take advantage of letting nginx create the static files. So Apache and also the PHP module do only PHP work and little else. Or have you got lengthy running fast cgi processes running by themselves? A pure apache setup (having a lightweight put together apache with just the needed modules) may be completely sufficient inside your situation.

Should you choose split configurations having a frontend server proxy it's sometimes difficult how you can develop progress bars for imagining uploads, btw. Some servers consume the complete upload and set it towards the after sales successfully.

But, I will tell that nginx is a great choice because it handles plenty of parallel (keepalive) connections perfectly with little memory, even https connections.