Product architecture
ДВИЖ.LAB is not only the public site at dvijlab.ru. The product also includes app.dvijlab.ru: an application for online rehabilitation where users enter programs, work with specialists, follow schedules, open materials, and join video calls.
We split the product into two surfaces: a fast, indexable site for acquisition and a private application for authenticated workflows. That keeps the public layer simple while the app can evolve around roles, permissions, calendars, and realtime communication.
Realtime load
The real load is not the landing page, but repeated program sessions: specialist schedules, rehabilitation materials, notifications, communication, and video meetings. The architecture keeps business data separate from the media path so video calls do not turn the main API into a bottleneck.
Video communication is treated as a dedicated realtime contour with session lifecycle, access checks, and clear fallback states. This reduces risk during peak consultation windows and keeps workflows usable when multiple sessions happen in parallel.
Stack decisions
The stack is described as a web client, API layer, relational model for programs, schedules, users, and specialist links, file storage for materials, and a separate integration boundary for video.
We chose this shape because the domain changes by workflow: new program types, specialist roles, notification rules, and content formats should be added without rewriting the whole product or mixing public content with private application logic.