Wrench\Listener\RateLimiter¶
-
class
RateLimiter
¶ -
property
server
¶ protected Server
The server being limited
-
property
ips
¶ protected array<int>
Connection counts per IP address
-
property
requests
¶ protected array<array<int>>
Request tokens per IP address
-
property
options
¶ protected array
-
property
protocol
¶ protected Protocol
-
__construct
($options = array())¶ Constructor
Parameters: - $options (array) –
-
configure
($options)¶ Parameters: - $options (array) –
-
onSocketConnect
($socket, $connection)¶ Event listener
Parameters: - $socket (resource) –
- $connection (Connection) –
-
onSocketDisconnect
($socket, $connection)¶ Event listener
Parameters: - $socket (resource) –
- $connection (Connection) –
-
onClientData
($socket, $connection)¶ Event listener
Parameters: - $socket (resource) –
- $connection (Connection) –
-
checkConnections
($connection)¶ Idempotent
Parameters: - $connection (Connection) –
-
checkConnectionsPerIp
($connection)¶ NOT idempotent, call once per connection
Parameters: - $connection (Connection) –
-
releaseConnection
($connection)¶ NOT idempotent, call once per disconnection
Parameters: - $connection (Connection) –
-
checkRequestsPerMinute
($connection)¶ NOT idempotent, call once per data
Parameters: - $connection (Connection) –
-
limit
($connection, $limit)¶ Limits the given connection
Parameters: - $connection (Connection) –
- $limit (string) – Reason
-
log
($message, $priority = 'info')¶ Logger
Parameters: - $message (string) –
- $priority (string) –
-
configureProtocol
()¶ Configures the protocol option
-
property