Skip to content

v1.3.0

Choose a tag to compare

@github-actions github-actions released this 08 Aug 12:25
· 22 commits to main since this release

Changelog

PR

TL;DR:

  • we stream data in block( contains many write requests in one block )
  • Now users watching the stream will be delayed with the actual stream
  • Much smoother and less lagging for both streamer and viewer

Technical note

In the previous version, any single change on the streamer's terminal is sent to the viewer. There are some problems with this approach:

  • Many changes are very small ( I.e: newline ) => inefficient use of request
  • In a short period of time we have many changes => too many requests
    With this version, we send messages by block. Each block is all messages generated in a period. This block is also being gzipped before being sent. This way we have some advantages:
  • fewer requests since we send a block of data every x (3) seconds.
  • By gzipped we reduced the message's size by around 7 folds. also, gzip is very fast so it's not a problem.

But this prevents users from watching the stream in super near real-time.

But I think 3 seconds lag is fine, it's how youtube and twitch works anw.

2f4c2bf client now read from blcok of data and schedule message according to offset
794dddb fix bug timing in message offset time
8dfa944 home page auto refresh every 15 seconds
b03f53d increase streampreview load time
38477bb smaller chat text on mobile
e780eb5 terminal are now exchanging block of message