DiggidyDave commented on issue #9190: [SIP-39] Global Async Query Support URL: https://github.com/apache/incubator-superset/issues/9190#issuecomment-596877134 Interesting, I'm not actually sure about that, I'd have to dig into it. :-/ The main thing I think we care about is _any_ client-side interface between the business logic and raw native websockets, to reserve that option to swap out the impl with a short-polling approach. (socket.io is just a super popular wrapper that happens to have the transport abstraction built-in, as is https://github.com/sockjs/sockjs-client and others) There are other options that are not coupled with a server architecture, like this one that is a small client-side wrapper: https://github.com/lukeed/sockette Or this one that is a promise-based wrapper (obvs, a polling impl could fulfill promises just as easily as far as client code is concerned): https://github.com/vitalets/websocket-as-promised Or anything else. As long as websockets are behind an interface of some kind there will be a path to unblock environments that can't use ws. Something as simple as this wrapping ws would be perfectly fine: ``` abstract class ServerClientEventBus { abstract postMessage(...): void; abstract receiveMessage(...): void; } class WSSEventBus : extends ServerClientEventBus { // etc... } ``` Anyway, I appreciate you looking at that.
---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: [email protected] With regards, Apache Git Services --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
