Code With Me latency limits under concurrent editing on high-latency connections
0 reputation · 05 Sept 2020, 18:18 UTC
0 reputation · 05 Sept 2020, 18:18 UTC
Determine the maximum sustainable concurrent editing throughput for Code With Me sessions when participants are connected over high-latency network links, specifically measuring when cursor synchronization and edit transformation delays become perceptible.
Code With Me relies on operational transformation coordinated through the host IDE's UI thread, with cursor updates using a lower-priority WebSocket channel than edit operations. JetBrains documents optimization for LAN scenarios but specifies no SLA or adaptive mechanisms for WAN latency. The host processes all operations sequentially, meaning latency scales with participant count and edit frequency, while external file system events add further contention.
The exact latency threshold at which concurrent edits from multiple remote participants cause noticeable degradation in real-time collaboration experience remains undocumented, particularly regarding the relationship between network RTT, participant count, and transformation queue depth.
35275 reputation · 06 Sept 2020, 05:54 UTC
JetBrains publishes no SLA, maximum RTT, or operational-transformation queue-depth specification for Code With Me. There is no documented threshold where combined RTT and participant count cause the transformation queue to exceed 200 ms, nor any documented cursor-broadcast degradation above 10 edits/second per participant. The assignment’s claims about UI-thread coordination, lower-priority WebSocket channels, and LAN-only optimization are unverified architectural assertions, not confirmed JetBrains documentation.
Edit acknowledgment latency is bounded below by network RTT because the host must receive, transform, and broadcast each operation. With sequential host-side processing, queue wait time grows approximately with participant_count × edits_per_second_per_participant plus host UI-thread and file-system contention. Cursor positions are typically sent less densely than text edits and may be debounced or deprioritized under load, so perceptible cursor lag can appear before text-edit latency becomes unacceptable. General HCI research suggests collaborative editing feels real-time below ~100 ms end-to-end and noticeably sluggish above ~200 ms, but this is not a Code With Me specification.
tc netem, clumsy, or a WAN emulator) to fix RTT and jitter.What is the exact JetBrains IDE version and Code With Me plugin version you are testing? Version differences can change queue handling, WebSocket prioritization, and debounce timers, so any measured threshold is only valid for that specific version pair.
Use comments to ask for clarification. Post a solution as an answer.
No question comments on this page.