You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
In Braid, we depend on keep-alive streams to keep state up-to-date on the client. Unfortunately, however, HTTP1.1 supports a paltry 6 simultaneous streams. This means we are limited to 6 state resources on HTTP1.1 using the current spec.
Since HTTP2 supports multiplexing any number of streams, it's natural to reach for HTTP2 as the solution; however, HTTP2 requires SSL. Therefore, when running on localhost, HTTP2 adds an additional layer of friction to a first-time developer experimenting with Braid: they must install a self-signed certificate and click past the "scare screen" in the browser.
Possible solutions:
Limit first-time demo apps to 6 state resources
Braid over Websocket
Multiplex resources over single stream
others?
The text was updated successfully, but these errors were encountered:
canadaduane
changed the title
Developer UX: Requiring SSL on first-time server setup sucks
Developer UX: Requiring SSL on first-time local setup sucks
Jan 26, 2021
Change notification events: If a client could be notified whenever any resource has changed, then that client could request a regular HTTP GET (i.e. not keep-alive) on the changed resource.
Pros:
compared to multiplexing, simpler implementation on the server side
In Braid, we depend on keep-alive streams to keep state up-to-date on the client. Unfortunately, however, HTTP1.1 supports a paltry 6 simultaneous streams. This means we are limited to 6 state resources on HTTP1.1 using the current spec.
Since HTTP2 supports multiplexing any number of streams, it's natural to reach for HTTP2 as the solution; however, HTTP2 requires SSL. Therefore, when running on localhost, HTTP2 adds an additional layer of friction to a first-time developer experimenting with Braid: they must install a self-signed certificate and click past the "scare screen" in the browser.
Possible solutions:
The text was updated successfully, but these errors were encountered: