Serverconfiguratie

Een goede serverinstelling is essentieel voor webapplicaties in productie. Hyperlane biedt twee manieren om je server te beheren: ServerConfig en RequestConfig.

ServerConfig beheert de HTTP-server zelf. Je gebruikt het om het volgende in te stellen:

  • Address: Gebruik 0.0.0.0:80 om op alle interfaces te luisteren. Gebruik 127.0.0.1:8080 om de toegang te beperken tot je lokale machine.
  • Nodelay: Stel dit in op true om de latentie te verminderen. Het verzendt kleine pakketten onmiddellijk in plaats van ze te bufferen.
  • TTL: Hiermee stel je de Time to Live in voor uitgaande pakketten. Een waarde van 128 werkt in de meeste gevallen.

RequestConfig beheert individuele HTTP-verzoeken. Dit beschermt je server tegen uitputting van resources en aanvallen. Je kunt deze limieten instellen met behulp van JSON:

  • buffer_size: De grootte van de leesbuffer in bytes.
  • max_path_size: De maximale lengte van het URL-pad.
  • max_header_count: De limiet op het aantal headers per verzoek.
  • max_body_size: De maximaal toegestane grootte van de request body. Dit voorkomt denial-of-service-aanvallen.
  • read_timeout_ms: De tijdslimiet voor het lezen van verzoekgegevens.

Hyperlane stelt je in staat om deze instellingen te laden vanuit een JSON-string. Dit maakt het eenvoudig om omgevingsvariabelen te gebruiken in gecontaineriseerde omgevingen.

Best practices voor productie:

  • Gebruik JSON voor configuratie. Dit maakt deployments flexibel.
  • Stel strikte verzoekslimieten in. Stem je max_body_size af op je werkelijke behoeften.
  • Schakel nodelay in voor API-servers om de latentie laag te houden.
  • Stel read timeouts in. Dit voorkomt dat trage