Menggunakan Perl
#!/usr/bin/perl use CGI::Fast; $req = 0; while ($q = new CGI::Fast) { $req++; print "Content-Type: text/plain\n\n"; print "req = $req, query var a = ", ($q->param('a') || "(empty)"); }
Jika dijalankan sebagai CGI (mis: diberi nama test.cgi) maka jika Anda melakukan refresh, nilai req tetaplah satu. Namun jika dijalankan sebagai FastCGI (mis: diberi nama test.fcgi), maka jika Anda melakukan refresh terhadap halaman web ini, nilai req akan terus bertambah: 1, 2, 3, … Ini berarti setelah sebuah request selesai, program tidaklah selesai/exit, melainkan menunggu lagi putaran loop berikutnya untuk melayani request baru. Dengan demikian, efisiensi meningkat drastis karena aplikasi tidak perlu direstart/dicompile ulang di setiap request.
Menggunakan Python
#!/usr/bin/python2.3 from flup.server.fcgi import WSGIServer req = 1 def test_app(environ, start_response): global req req += 1 start_response('200 OK', [('Content-Type', 'text/plain')]) yield 'Hello, world! This is request #' + str(req) + '\n'
WSGIServer(test_app).run()
Sama seperti contoh Perl sebelumnya, angka request juga akan bertambah dari 1, 2, 3, … setiap kali halaman direfresh, menunjukkan bahwa instans aplikasi yang berjalan masih sama.
Menggunakan Ruby
#!/usr/bin/ruby require 'fcgi'
FCGI.each do |request| request.out.print "Content-type: text/plain\r\n\r\n" request.out.print "This is a test." request.finish end