07-31-2007
There are three basic options.
1. Write a single application and run 32 copies of it (this is the same way getty works)
2. Write a single-threaded application and use 'select' to determine which port is ready to read or write from.
3. Write a multi-threaded application and use either a thread per port, or two threads per port (one for reading, one for writing).
I would recommend option 1 as it's the easiest to write and test.
Option 2 is a more portable solution than 3 as you can avoid multithreading race conditions and synchronisation issues.
10 More Discussions You Might Find Interesting
1. UNIX for Advanced & Expert Users
I want to write a server application that would accept HTTP requests from client.
The server would be on a machine that has no connection to the INTERNET.
The clients that would be posting their HTTP requests would be doing so through webbrowser .Thus it would be sort of intranet application.... (0 Replies)
Discussion started by: rraajjiibb
0 Replies
2. IP Networking
Hello Mentors!
I am a new here in the furom, i hope somebody can understand my problem.
Basically we have an application here called unigraphics and being installed per station and the setup is look like this.
1. installed unigraphics UGNX3 version on every station
2. some are installed in... (1 Reply)
Discussion started by: eykyn17
1 Replies
3. UNIX for Dummies Questions & Answers
Hello
im using sunos im trying to lock down application that taking my port
when Im doing "netstat -in | grep 8080"
Is gives me the indication that the port is taken but no indication who is taken the port.
How can I find out who is taking my port?
Thanks allot (7 Replies)
Discussion started by: umen
7 Replies
4. Linux
Hi All,
I have two MQ (port) 1414 established (going out)
$ netstat -an | grep 1414
tcp 0 0 0.0.0.0:1414 0.0.0.0:* LISTEN
tcp 0 0 20.76.1.1:32855 142.8.1.3:1414 ESTABLISHED
tcp 0 0... (2 Replies)
Discussion started by: itik
2 Replies
5. Shell Programming and Scripting
Hi,
is there any command to findout that which application is using the particular port.
or whether any port is occupied with the specfic process id ? (4 Replies)
Discussion started by: mail2sant
4 Replies
6. Programming
Hi ,
I need some help as I dont know where to start. I need to create a unix decryption application.
The information I have been given is this so far:
the specification of the encryption process is:
NET 2 Cryptography classes.
RijndaelManaged encryption algorithm
... (13 Replies)
Discussion started by: caciing_help
13 Replies
7. Programming
hey frns pls help me out !!
i hav a code of c that i have to include in my project.
i am using a device (geomeda) that has unix based OS. it also support SIM card for connecting to server . I need to send SMS to user from this device..
below code is not working .. i am unable to send sms and the... (7 Replies)
Discussion started by: yashwantkumar
7 Replies
8. HP-UX
Hi,
I have an application running on HP-UX, from this application I need to findout if the port number. lets say 7890,7891, 7892 are listening on the remote server running on HP-UX.
Is there any way of doing it using "system()" function or any other?
I noticed that nmap, netcat are not... (0 Replies)
Discussion started by: einsteinBrain
0 Replies
9. UNIX for Advanced & Expert Users
Hi all,
I have a code to create folder in application server through shell script and i want to create if conditional based folder
folder=$HOME/test/sample/whatever
if ; then
echo "$folder already exists, not created."
else
mkdir -p "$folder" > /dev/null 2>&1
... (7 Replies)
Discussion started by: Boost
7 Replies
10. Shell Programming and Scripting
Hi Expert,
Anybody can figure it out on how to generate new port base on my last port let say my last port var1=124 and increment for new port 125,126 but this new two ports need to look at first if this port is not in used by any service, if the port is in used add 1 to new port and if in used... (6 Replies)
Discussion started by: lxdorney
6 Replies
LEARN ABOUT DEBIAN
catalyst::manual::deployment::fastcgi
Catalyst::Manual::Deployment::FastCGI(3pm) User Contributed Perl Documentation Catalyst::Manual::Deployment::FastCGI(3pm)
NAME
Catalyst::Manual::Deployment::FastCGI - Deploying Catalyst with FastCGI
FastCGI Deployment
FastCGI is a high-performance extension to CGI. It is suitable for production environments, and is the standard method for deploying
Catalyst in shared hosting environments.
Pros
Speed
FastCGI performs equally as well as mod_perl. Don't let the 'CGI' fool you; your app runs as multiple persistent processes ready to
receive connections from the web server.
App Server
When using external FastCGI servers, your application runs as a standalone application server. It may be restarted independently from the
web server. This allows for a more robust environment and faster reload times when pushing new app changes. The frontend server can even
be configured to display a friendly "down for maintenance" page while the application is restarting.
Load-balancing
You can launch your application on multiple backend servers and allow the frontend web server to perform load-balancing among all of them.
And of course, if one goes down, your app continues to run.
Multiple versions of the same app
Each FastCGI application is a separate process, so you can run different versions of the same app on a single server.
Can run with threaded Apache
Since your app is not running inside of Apache, the faster mpm_worker module can be used without worrying about the thread safety of your
application.
Widely supported.
FastCGI is compatible with many server implementations, not just Apache.
Cons
You may have to disable mod_deflate. If you experience page hangs with mod_fastcgi then remove deflate.load and deflate.conf from
mods-enabled/
More complex environment
With FastCGI, there are more things to monitor and more processes running than when using mod_perl.
Standalone FastCGI Server
In server mode the application runs as a standalone server and accepts connections from a web server. The application can be on the same
machine as the web server, on a remote machine, or even on multiple remote machines. Advantages of this method include running the
Catalyst application as a different user than the web server, and the ability to set up a scalable server farm.
To start your application in server mode, install the FCGI::ProcManager module and then use the included fastcgi.pl script.
$ script/myapp_fastcgi.pl -l /tmp/myapp.socket -n 5
Command line options for fastcgi.pl include:
-d -daemon Daemonize the server.
-p -pidfile Write a pidfile with the pid of the process manager.
-l -listen Listen on a socket path, hostname:port, or :port.
-n -nproc The number of processes started to handle requests.
See below for the specific web server configurations for using the external server.
WEB SERVERS
Any web server which supports FastCGI should work with Catalyst. Configuration recipies for well-known web servers are linked below, and we
would welcome contributions from people deploying Catalyst on other web servers.
Apache
Catalyst::Manual::Deployment::Apache::FastCGI
nginx
Catalyst::Manual::Deployment::nginx::FastCGI
lighttpd
Catalyst::Manual::Deployment::lighttpd::FastCGI
Microsoft IIS
Catalyst::Manual::Deployment::IIS::FastCGI
AUTHORS
Catalyst Contributors, see Catalyst.pm
COPYRIGHT
This library is free software. You can redistribute it and/or modify it under the same terms as Perl itself.
perl v5.14.2 2012-01-20 Catalyst::Manual::Deployment::FastCGI(3pm)