comparison roundup/scripts/roundup_server.py @ 7387:46f92ac4e170

- issue2551275 - Allow configuring max_children in roundup-server. new -m and --max_children command line arguments and max_children config file setting for roundup_server.py/roundup-server. CHANGES.txt, admin_guide.txt, roundup-server.1 updated.
author John Rouillard <rouilj@ieee.org>
date Tue, 23 May 2023 23:34:06 -0400
parents c0d030bd472e
children dba4b1b25528
comparison
equal deleted inserted replaced
7386:068aec2b38b5 7387:46f92ac4e170
646 (configuration.NullableOption, "group", "", 646 (configuration.NullableOption, "group", "",
647 "Group ID as which the server will answer requests.\n" 647 "Group ID as which the server will answer requests.\n"
648 "In order to use this option, " 648 "In order to use this option, "
649 "the server must be run initially as root.\n" 649 "the server must be run initially as root.\n"
650 "Availability: Unix."), 650 "Availability: Unix."),
651 (configuration.IntegerNumberOption, "max_children", 40,
652 "Maximum number of children to spawn using fork "
653 "multiprocess mode."),
651 (configuration.BooleanOption, "nodaemon", "no", 654 (configuration.BooleanOption, "nodaemon", "no",
652 "don't fork (this overrides the pidfile mechanism)'"), 655 "don't fork (this overrides the pidfile mechanism)'"),
653 (configuration.BooleanOption, "log_hostnames", "no", 656 (configuration.BooleanOption, "log_hostnames", "no",
654 "Log client machine names instead of IP addresses " 657 "Log client machine names instead of IP addresses "
655 "(much slower)"), 658 "(much slower)"),
701 "user": "u:", 704 "user": "u:",
702 "logfile": "l:", 705 "logfile": "l:",
703 "pidfile": "d:", 706 "pidfile": "d:",
704 "nodaemon": "D", 707 "nodaemon": "D",
705 "log_hostnames": "N", 708 "log_hostnames": "N",
709 "max_children": "m:",
706 "multiprocess": "t:", 710 "multiprocess": "t:",
707 "template": "i:", 711 "template": "i:",
708 "loghttpvialogger": 'L', 712 "loghttpvialogger": 'L',
709 "ssl": "s", 713 "ssl": "s",
710 "pem": "e:", 714 "pem": "e:",
809 elif self["MULTIPROCESS"] == "fork": 813 elif self["MULTIPROCESS"] == "fork":
810 class ForkingServer(socketserver.ForkingMixIn, 814 class ForkingServer(socketserver.ForkingMixIn,
811 base_server): 815 base_server):
812 pass 816 pass
813 server_class = ForkingServer 817 server_class = ForkingServer
818 server_class.max_children = self["MAX_CHILDREN"]
814 elif self["MULTIPROCESS"] == "thread": 819 elif self["MULTIPROCESS"] == "thread":
815 class ThreadingServer(socketserver.ThreadingMixIn, 820 class ThreadingServer(socketserver.ThreadingMixIn,
816 base_server): 821 base_server):
817 pass 822 pass
818 server_class = ThreadingServer 823 server_class = ThreadingServer
940 -p <port> set the port to listen on (default: %(port)s) 945 -p <port> set the port to listen on (default: %(port)s)
941 -I <header1[,header2]*> list of headers to pass to the backend 946 -I <header1[,header2]*> list of headers to pass to the backend
942 -l <fname> log to the file indicated by fname instead of stderr/stdout 947 -l <fname> log to the file indicated by fname instead of stderr/stdout
943 -N log client machine names instead of IP addresses (much slower) 948 -N log client machine names instead of IP addresses (much slower)
944 -i <fname> set tracker index template 949 -i <fname> set tracker index template
950 -m <children> maximum number of children to spawn in fork multiprocess mode
945 -s enable SSL 951 -s enable SSL
946 -L http request logging uses python logging (roundup.http) 952 -L http request logging uses python logging (roundup.http)
947 -e <fname> PEM file containing SSL key and certificate 953 -e <fname> PEM file containing SSL key and certificate
948 -t <mode> multiprocess mode (default: %(mp_def)s). 954 -t <mode> multiprocess mode (default: %(mp_def)s).
949 Allowed values: %(mp_types)s. 955 Allowed values: %(mp_types)s.

Roundup Issue Tracker: http://roundup-tracker.org/