RSG2027proxy

Proxy behavior on RS 2027 restart

ot@bim_lead_smolensksozdan12 min backotvetov3prosmotrov27

Podnyali RS 2027 + RSG 1.0.0 on Windows Server 2022. Vsyo worket, no priRestart-Service revitserver— RSG prodolzhaet derzhat TCP-soedinenie k staromu protsessu 30–40 sekund, and in eto vremya Revit-klient poluchaetERR_BACKEND_DISCONNECTED.

Konfig proksi:

upstream: backend: localhost:8080 health_check_interval: 5s failover_after: 3 reconnect_backoff: exponential

Ya ozhidal, chtohealth_check_interval: 5spodkhvatit padenie approximately za 15 sekund. Realno — 30+. Gde ya neprav in ponimanii?

Logi RSG (filtrcomponent=upstream):
[14:22:03] upstream.health: probe ok [14:22:08] upstream.health: probe ok [14:22:13] upstream.health: probe ok # posledniy udachnyy [14:22:18] upstream.health: timeout (1/3) [14:22:23] upstream.health: timeout (2/3) [14:22:28] upstream.health: timeout (3/3) [14:22:28] upstream.fail: detected, draining 30s grace

Poluchaetsya, after 3 failed-prob vklyuchaetsya30s grace. Eto gde-to zadokumentirovano? And kak ego umenshit — est parametr?

edited 8 min ago

Zdravstvuyte. Vy pravy by logam — this worketby design, and da, this est in documentation, no in neochevidnom meste:docs.rsg.example/upstream/grace.

Kogda upstream priznan neaccessnym, RSG derzhit sokety-in-polyote 30 sekund (default), chtoby clients ne poluchili zhyostkiy reset vo vremya vypolneniya long-running zaprosov (RS-operatsii with central-faylami mogut zanimat 20+ sekund). Eto kompromiss, kotoryy dayotsya useryu in vide parametra:

upstream: backend: localhost:8080 health_check_interval: 5s failover_after: 3 reconnect_backoff: exponential drain_timeout: 5s # ← vot etot parametr

Postavtedrain_timeout: 5s— obschiy downtime sokratitsya approximately until 20 sekund (15 with prob + 5 grace).

Menshe 5 sekund stavitne rekomenduyu: on bolshikh central-faylakh vy budete rvat klientskie tranzaktsii, and Users poluchat «modeling session corrupted». On pilote videli imenno takoe povedenie.

Spasibo! Postavildrain_timeout: 5s— downtime upal until 19 sekund. Eto uzhe terpimo for nashey komandy.

Otkuda u menya bylo lozhnoe predpolozhenie — ya in documentationupstream/health-checkprochyol only pro health_check_interval × failover_after, and ne dochital until section pro grace. Vidimo, this mozhno podsvetit vyshe in toy zhe page — potomu chto zadacha «as uskorit pereklyuchenie» reshaetsya imennodrain_timeout, a ischetsya byhealth_check.

Pomechayu kak solution.
pomecheno as solution

Podsvetil zamechanie vo vnutrenniy backlog by doke. Popravim in sleduyuschem sprinte — on pageupstream/health-checkdobavim cross-link k razdelu prodrain_timeoutand primer «as uskorit pereklyuchenie».

Spasibo za fidbek, takie veschi without vas and ne nakhodim.

Your reply

markdown supported · ⌘+Enter to send
draft autosaves in the browser