When developing a frontend application, one of the greatest problems for performance is the access to DOM.
Changing or adding nodes in the DOM can have a serious impact on your application's performance.
Using RxJS, we can easily mitigate this problem using buffers to aggregate changes before applying it to the DOM. In our web chat application, every time a user sends a message or you send a message, we need to add a new node in the DOM. Given the nature of our application, we do not expect to receive several messages per second (or the user will not be able to read the messages), but if you were implementing a chart with real-time data, this behavior can quickly become a bottleneck for you.
Here, in this section, we are going to do a minor change to our application so all changes in the DOM are buffered before being applied. I will show this technique as it can be used in several...