ΠΡΠ½ΠΎΠ²Π½ΡΠ΅
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Ρ Π½ΠΎΠ²ΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅
$proxy_protocol_server_addr ΠΈ$proxy_protocol_server_port , ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠ°Ρ Π°Π΄ΡΠ΅Ρ ΠΈ ΠΏΠΎΡΡ ΡΠ΅ΡΠ²Π΅ΡΠ°, ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΠ΅ ΠΈΠ· Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° PROXY; - ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Π°
limit_conn_dry_run , ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄ΡΡΠ°Ρ ΠΌΠΎΠ΄ΡΠ»Ρ ngx_http_limit_conn_module Π² ΡΠ΅ΠΆΠΈΠΌ ΠΏΡΠΎΠ±Π½ΠΎΠ³ΠΎ Π·Π°ΠΏΡΡΠΊΠ°, ΠΏΡΠΈ ΠΊΠΎΡΠΎΡΠΎΠΌ ΡΠΈΡΠ»ΠΎ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΉ Π½Π΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΠ²Π°Π΅ΡΡΡ, Π½ΠΎ ΡΡΠΈΡΡΠ²Π°Π΅ΡΡΡ. - Π ΠΌΠΎΠ΄ΡΠ»Π΅
ngx_stream_limit_conn_module Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ $limit_conn_status, ΠΊΠΎΡΠΎΡΠ°Ρ Ρ ΡΠ°Π½ΠΈΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ ΡΠΈΡΠ»Π° ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΉ: PASSED, REJECTED ΠΈΠ»ΠΈ REJECTED_DRY_RUN; - Π ΠΌΠΎΠ΄ΡΠ»Π΅
ngx_http_limit_req_module Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ $limit_req_status, ΠΊΠΎΡΠΎΡΠ°Ρ Ρ ΡΠ°Π½ΠΈΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ ΡΠΊΠΎΡΠΎΡΡΠΈ ΠΏΠΎΡΡΡΠΏΠ»Π΅Π½ΠΈΡ Π·Π°ΠΏΡΠΎΡΠΎΠ²: PASSED, DELAYED, REJECTED, DELAYED_DRY_RUN ΠΈΠ»ΠΈ REJECTED_DRY_RUN.
ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΠΌΠ΅ΡΠΈΡΡ
Π Π½ΠΎΠ²ΠΎΠΌ Π²ΡΠΏΡΡΠΊΠ΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² Object.assign() ΠΈ Array.prototype.copyWithin(). Π console.time() ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΌΠ΅ΡΠΎΠΊ. ΠΠ΅ΡΠ΅ΡΠ°Π±ΠΎΡΠ°Π½ ΠΊΠΎΠ΄ Π΄Π»Ρ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ ΡΠΎ Π²Π½Π΅ΡΠ½ΠΈΠΌΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΠ°ΠΌΠΈ ΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ Π΄Π°Π½Π½ΡΡ Π² ΡΠΎΡΠΌΠ°ΡΠ΅ JSON. ΠΠ· CLI ΡΠ΄Π°Π»ΡΠ½ Π²ΡΠ·ΠΎΠ² console.help().
ΠΡΡΠΎΡΠ½ΠΈΠΊ: opennet.ru