VOOZH about

URL: https://deepwiki.com/rudderlabs/rudder-php-sdk/7-glossary

⇱ Glossary | rudderlabs/rudder-php-sdk | DeepWiki


Loading...
Menu

Glossary

This page provides definitions for codebase-specific terms, abbreviations, and domain concepts used throughout the rudder-php-sdk. It serves as a technical reference for onboarding engineers to understand the implementation details and data flow within the SDK.

Core Concepts

Data Plane URL

The destination endpoint where the SDK sends collected events. In the codebase, this is often referred to as host or data_plane_url. The SDK performs normalization on this string to ensure it includes the correct protocol (HTTP/HTTPS) based on the ssl configuration.

Write Key

A unique identifier for your RudderStack source. It is required during initialization and used for basic authentication in HTTP requests.

Consumer

An abstraction layer responsible for the transport of event data from the PHP application to the RudderStack Data Plane. The SDK supports multiple consumer types (e.g., LibCurl, ForkCurl, Socket, File).


Technical Terms & Abbreviations

TermDefinitionCode Pointer
FlushThe process of sending queued events from the consumer's memory buffer to the destination.Client::flush() lib/Client.php
BatchA collection of events sent in a single HTTP request to the /v1/batch endpoint.QueueConsumer::flushBatch() lib/Consumer/QueueConsumer.php
AnonymousIdA unique identifier used to track users before they are identified.Rudder::validate() lib/Rudder.php102
ContextA dictionary of extra information about an event (e.g., library name, version, OS).Client::message() lib/Client.php
BackoffAn exponential retry strategy used when the Data Plane returns retriable errors (e.g., 429 or 5xx).LibCurl::flushBatch() lib/Consumer/LibCurl.php32-34

System Entities to Code Mapping

The following diagrams bridge the gap between high-level SDK operations and the specific classes or functions that handle them.

Event Ingestion Pipeline

This diagram tracks the flow from a public static call to the final transport selection.


Sources: lib/Rudder.php67-75 lib/Rudder.php99-104 lib/Consumer/Consumer.php

Consumer Transport Mechanisms

This diagram maps different "Consumer Types" to their specific implementation classes and the PHP extensions they depend on.


Sources: lib/Consumer/LibCurl.php36-37 lib/Consumer/ForkCurl.php86 lib/Consumer/Socket.php70-76 composer.json35-38


Configuration Definitions

Batching Parameters

  • flush_at: The number of events to buffer before triggering a flushBatch call.
  • max_queue_size: The maximum number of items allowed in the consumer's memory queue.
  • max_item_size_bytes: Maximum size of a single message in bytes (Default: 32KB).

Request Options


Domain Concepts

Retriable Errors

HTTP status codes that trigger the exponential backoff logic.

AnonymousId Header

A special HTTP header (AnonymousId) sent during single-event batches to help the RudderStack server maintain event ordering.

Library Context

Automatically injected metadata identifying the SDK.

Sources: