Tests about a simple python3 fastcgi runner using libfcgi and the Python-C API.
python
c
wsgi
Du kannst nicht mehr als 25 Themen auswählen Themen müssen mit entweder einem Buchstaben oder einer Ziffer beginnen. Sie können Bindestriche („-“) enthalten und bis zu 35 Zeichen lang sein.
Yann Weber 5f5c8043a9 Closing FCGX socket + unlinking unix socket before bind vor 4 Jahren
docs Fixes #40 Fixing doxygen documentation vor 4 Jahren
include Fixes #40 Fixing doxygen documentation vor 4 Jahren
src Closing FCGX socket + unlinking unix socket before bind vor 4 Jahren
tests Fixing logger test vor 4 Jahren
AUTHORS Add missing am files vor 4 Jahren
COPYING Add autotools & checks vor 4 Jahren
ChangeLog Add missing am files vor 4 Jahren
Makefile.am Autotools enhancement vor 4 Jahren
NEWS Add missing am files vor 4 Jahren
README Fixes #32 set stderr non-blocking vor 4 Jahren
autogen.sh Autotools enhancement vor 4 Jahren
benchmarks Add 120s siege benchmarks vor 4 Jahren
configure.ac Autotools enhancement vor 4 Jahren
foo.py 1st fonctionnal implementation of both python<->C IPC vor 4 Jahren
foo_pep333.py Add tests for stdout & stderr in foo_pep333.py example vor 4 Jahren
includes_python3.7m.patch Initial commit vor 4 Jahren

README

Patch python3 headers :
-----------------------
# cd /usr/include/python3.7m/
# patch -p1 < PATH_TO/includes_python3.7m.patch

Building & running pyfcgi :
---------------------------
$ ./autogen.sh
$ ./configure
$ make
# To run foo_pep333.entrypoint() PEP333 application
$ ./src/pyfcgi -l '127.0.0.1:9000' -v -e foo_pep333 -E entrypoint
or
# To run foo.entrypoint() sending to FCGI python stdout
$ ./src/pyfcgi -l '127.0.0.1:9000' -v -e foo -E entrypoint -A


configure script determine python flags, libs & includes paths using
python3-config programm. The path can be specified using the
PYTHON_CONFIG_PATH environment variable.

Example : linking against a debug build of python :
---------
$ ./configure PYTHON_CONFIG_PATH=/usr/bin/python3dm-config --enable-debug
$ make clean && make
$ valgrind --log-file=/tmp/val.log --trace-children=yes src/pyfcgi -S -e foo_pep333 -E entrypoint -L '/tmp/foo.log;0xff;{datetime} {msg} {ident}'

logging to file example :
-------------------------
-L '/tmp/foo.log;0xff;{datetime} {msg} {ident}'

uwsgi equivalent :
------------------
uwsgi_python3 --fastcgi-socket 127.0.0.1:9000 --module foo_pep333:entrypoint --processes=5