WL#11891: HTTP component to MySQL Router

Affects: Server-8.0   —   Status: Complete

Motivation

For integration with external tools for

  • healthcheck
  • monitoring
  • management
  • ...

MySQL Router needs interface that is:

  • easy to interface with for applications
  • easy to use for users

In principle the MySQL Protocol could be used for this task, but the HTTP protocol fits the needs of this task better.

HTTP

Using HTTP as underlying protocol allows to:

  • encrypt the traffic with TLS
  • authorize the users
  • allow to use existing tools and frameworks tested and validated by the web community to

    • easily interface with browsers for user-interfaces
    • easily expose REST endpoints to applications (document with tools like https://swagger.io/)

Goal

Add a tiny HTTP server library to MySQL Router to allow to expose REST endpoints and a web-interface.