Skip to content
GitLab
Projects Groups Topics Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
  • Register
  • Sign in
  • erp5 erp5
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributor statistics
    • Graph
    • Compare revisions
  • Merge requests 142
    • Merge requests 142
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Jobs
  • Commits
Collapse sidebar
  • nexedinexedi
  • erp5erp5
  • Merge requests
  • !883

Add WSGI support

  • Review changes

  • Download
  • Patches
  • Plain diff
Merged Bryton Lacquement requested to merge wsgi into master Jun 03, 2019
  • Overview 62
  • Commits 7
  • Pipelines 0
  • Changes 15

This first work on WSGI is only to stop using ZServer (Medusa), which is a required step before moving to Zope 4. This means that Zope should behave almost exactly the same way as before, notably:

  • We don't take advantage yet of what WSGI offers, like IPv6.
  • There's extra code to handle errors the same way as before (this is something we'll have to change for Zope 4).

The most significant change in behaviour is that the chosen WSGI server (waitress) does some of the HTTP work in worker threads (Medusa does it entirely in the IO thread), and the biggest consequence concerns the deadlock debugger that is now run from the worker thread:

  • it does not work if all threads are blocked
  • doing better would require to patch waitress in a quite ugly way

About TimerService, we simplify things by removing the egg. In zope.conf, it's possible to import from the product.

Assignee
Assign to
Reviewers
Request review from
Time tracking
Source branch: wsgi
GitLab Nexedi Edition | About GitLab | About Nexedi | 沪ICP备2021021310号-2 | 沪ICP备2021021310号-7