app-python3.py 737 B

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. import os
  2. import ujson
  3. from socketify import App
  4. def plaintext(res, req):
  5. res.send(b'Hello, World!')
  6. def applicationjson(res, req):
  7. res.send({"message":"Hello, World!"})
  8. def run_app():
  9. app = App(None, 200_000, 0)
  10. app.json_serializer(ujson)
  11. app.get("/", plaintext)
  12. app.get("/json", applicationjson)
  13. app.get("/plaintext", plaintext)
  14. app.listen(3000)
  15. app.run()
  16. def create_fork():
  17. n = os.fork()
  18. # n greater than 0 means parent process
  19. if not n > 0:
  20. run_app()
  21. def get_worker_count():
  22. try:
  23. return int(os.environ["WORKER_COUNT"])
  24. except:
  25. return 2
  26. WORKER_COUNT = get_worker_count() - 1
  27. for index in range(WORKER_COUNT):
  28. create_fork()
  29. run_app()