In this talk, we will delve into the intricacies of quantifying and improving performance for the Mattermost app, an open-source collaboration platform. We will begin by discussing how we measure performance using our in-house client load testing tool. Next, we will explore how we identify and address memory bottlenecks, and tackle the specific performance challenges associated with a reactive and real-time application designed to handle 100k active users. Finally, we will cover the webapp client load testing tool and how we use to measure and validate performance improvements, ensuring our optimisations effectively enhance the app’s performance.
Following is the structure and topics of the talk i indent to present
Introduction
Self-introduction
Overview of Mattermost
What to expect from this talk
Overview of Mattermost’s Web App Architecture
Comparison with other chat applications
Unique challenges of being on-premises and their impact on legacy code migration
Real-Time Data Handling
Management of WebSocket data to ensure a reactive and real-time application
Challenges of maintaining responsiveness while managing subscriptions
Strategies for balancing over-fetching and under-fetching of data
Client-Side Load Testing
Introduction to our in-house load testing tool and its capabilities
Demonstration of simulating 100k users and automating client metrics injection
Quantifying Performance
How the load testing tool gathers data and reveals performance issues
Methods for measuring the impact of performance improvements
Optimising Performance
Detailed analysis of performance improvements
Key considerations for ensuring performance and responsiveness in large enterprise applications
Conclusion
Future directions and next steps
Like the video, great to see you've already given this talk
As someone who works on a real time chat application - this talk would be personally really exiting for me. My review here might be a little biased, but we rarely get talks about advanced topics like how we can improve performance in an already stable, well known app.
Always good to see these kind of deep dive talks giving insights into real-world challenges on large scale apps such as Mattermost.