Mind the gap, connecting high performance systems at a leading Crypto Exchange @ Spring I/O 2024
Summary
TLDRThe video script discusses high-performance system development using the JVM and Spring Framework, focusing on the unique challenges of building and maintaining a crypto exchange platform. It emphasizes the need for open-mindedness when traditional software development practices don't apply in high-performance contexts. The speakers, from Bitvavo, Europe's largest crypto exchange, share insights on system architecture, low-latency techniques, and the importance of real-time processing in a 24/7 business environment. They also touch on optimizing JWT token signing and the use of Azul Systems' Zing JVM for improved performance and stability.
Takeaways
- 🕒 The speaker emphasizes the importance of being open-minded about software development practices, especially when it comes to developing high-performance systems using the JVM and integrating them with the Spring framework.
- 🚀 The session is about discussing high-performance systems, microsecond performance, and the impact on the rest of the organization, highlighting the need for systems to keep up with high throughput and low latency requirements.
- 🏢 The speakers introduce Bitvavo, a leading crypto exchange in Europe, based in the Netherlands, which is fully compliant with regulatory requirements and offers a simple trading platform for various types of customers.
- 🔑 Marcos Meer, originally from Brazil, and Lars Wiman, a Dutch native, share their backgrounds in fintech, investments, trading, and startups, emphasizing their passion for fast-paced development environments.
- 📈 Bitvavo's architecture is based on a Kafka broker for domain integration, using REST or gRPC for performance-critical integrations, and standard technologies like Spring Boot and TypeScript for other domains.
- 🚫 The speakers discuss the need to avoid certain practices for low-latency systems, such as removing databases from the critical path, using in-memory data handling, and avoiding Kubernetes for the 'hot path' of the system.
- 🔄 Techniques for optimizing performance include using in-memory data structures, inter-process communication (IPC), UDP for network communication, and dual network card machines for bypassing the kernel with DPDK.
- 💡 The concept of a distributed state machine is introduced, where everything is processed in a single thread to ensure deterministic output and avoid the complexities and overhead of multi-threading.
- 🛑 The importance of zero garbage collection (GC) in the hot path is highlighted, with pre-allocation and reuse of objects to maintain a flat memory usage and avoid GC pauses.
- 🔧 The use of an open-source framework called 'LMAX' for the order flow, which provides a high-performance messaging system with constructs similar to Kafka, is explained to simplify the implementation of low-latency techniques.
- 🔒 Security and optimization are key in signing JWT tokens, where Bitvavo achieved a 30X performance improvement by using symmetric encryption and avoiding asymmetric encryption due to the trust in their client environment.
Please replace the link and try again.
Outlines

This section is available to paid users only. Please upgrade to access this part.
Upgrade NowMindmap

This section is available to paid users only. Please upgrade to access this part.
Upgrade NowKeywords

This section is available to paid users only. Please upgrade to access this part.
Upgrade NowHighlights

This section is available to paid users only. Please upgrade to access this part.
Upgrade NowTranscripts

This section is available to paid users only. Please upgrade to access this part.
Upgrade NowBrowse More Related Video

Spring MVC Tutorial for Beginners

Coinbase CEO on Regulation, ETFs, Adopting Crypto

#4 How Java Works

3D Video Infographic for Crypto Exchange. 3D Animation. Blockchain IEO/ICO Project

Visual Basic Dot Net Framework Architecture in Hindi

My honest opinion about SwiftUI vs Flutter vs React Native to build iOS apps
5.0 / 5 (0 votes)