Skip to content

first_byte_timeout for shield backends #541

@cceckman-at-fastly

Description

@cceckman-at-fastly

Every backend has a "first-byte timeout". This timeout applies to the HTTP response line and response headers. If the client (Compute instance) does not receive all the HTTP headers within the first-byte timeout, the Compute platform considers the request failed and returns a SendError (with e.g. SendErrorCause::HttpResponseTimeout) to the instance.

By default, all backends have a first-byte timeout of 15 seconds. This timeout is configurable for static and dynamic backends; however, it was previously not configurable for shield backends. If a shield POP took more than 15 seconds to complete writing its response headers, the Compute instance at the edge POP would receive a SendError.

The most recent ABI definitions include a first_byte_timeout option when creating a shield backend, allowing the default 15s to be overridden. This is not yet exposed in Go, but see Rust SDK 0.11.9 for an example.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions