Scala High Performance Programming

Leverage Scala and the functional paradigm to build performant software
Preview in Mapt

Scala High Performance Programming

Vincent Theron, Michael Diamant

Leverage Scala and the functional paradigm to build performant software
Mapt Subscription
FREE
$29.99/m after trial
eBook
$25.20
RRP $35.99
Save 29%
Print + eBook
$44.99
RRP $44.99
What do I get with a Mapt Pro subscription?
  • Unlimited access to all Packt’s 5,000+ eBooks and Videos
  • Early Access content, Progress Tracking, and Assessments
  • 1 Free eBook or Video to download and keep every month after trial
What do I get with an eBook?
  • Download this book in EPUB, PDF, MOBI formats
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
What do I get with Print & eBook?
  • Get a paperback copy of the book delivered to you
  • Download this book in EPUB, PDF, MOBI formats
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
What do I get with a Video?
  • Download this Video course in MP4 format
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
$0.00
$25.20
$44.99
$29.99p/m after trial
RRP $35.99
RRP $44.99
Subscription
eBook
Print + eBook
Start 30 Day Trial

Frequently bought together


Scala High Performance Programming Book Cover
Scala High Performance Programming
$ 35.99
$ 25.20
Clojure: High Performance JVM Programming Book Cover
Clojure: High Performance JVM Programming
$ 63.99
$ 44.80
Buy 2 for $35.00
Save $64.98
Add to Cart
Subscribe and access every Packt eBook & Video.
 
  • 5,000+ eBooks & Videos
  • 50+ New titles a month
  • 1 Free eBook/Video to keep every month
Start Free Trial
 

Book Details

ISBN 139781786466044
Paperback274 pages

Book Description

Scala is a statically and strongly typed language that blends functional and object-oriented paradigms. It has experienced growing popularity as an appealing and pragmatic choice to write production-ready software in the functional paradigm. Scala and the functional programming paradigm enable you to solve problems with less code and lower maintenance costs than the alternatives. However, these gains can come at the cost of performance if you are not careful.

Scala High Performance Programming arms you with the knowledge you need to create performant Scala applications. Starting with the basics of understanding how to define performance, we explore Scala's language features and functional programming techniques while keeping a close eye on performance throughout all the topics.

We introduce you as the newest software engineer at a fictitious financial trading company, named MV Trading. As you learn new techniques and approaches to reduce latency and improve throughput, you'll apply them to MV Trading’s business problems. By the end of the book, you will be well prepared to write production-ready, performant Scala software using the functional paradigm to solve real-world problems.

Table of Contents

Chapter 1: The Road to Performance
Defining performance
Summarizing performance
Collecting measurements
A case study
Tooling
Summary
Chapter 2: Measuring Performance on the JVM
A peek into the financial domain
Unexpected volatility crushes profits
Reproducing the problem
Summary
Chapter 3: Unleashing Scala Performance
Value classes
Specialization
Tuples
Pattern matching
Tail recursion
The Option data type
Case study – a more performant option
Summary
Chapter 4: Exploring the Collection API
High-throughput systems – improving the order book
Historical data analysis
Summary
Chapter 5: Lazy Collections and Event Sourcing
Improving the client report generation speed
Rethinking reporting architecture
Summary
Chapter 6: Concurrency in Scala
Parallelizing backtesting strategies
Handling blocking calls and callbacks
Tasked with more backtest performance improvements
Summary
Chapter 7: Architecting for Performance
Distributed automated traders
Free trading strategy performance improvements
Summary

What You Will Learn

  • Analyze the performance of JVM applications by developing JMH benchmarks and profiling with Flight Recorder
  • Discover use cases and performance tradeoffs of Scala language features, and eager and lazy collections
  • Explore event sourcing to improve performance while working with stream processing pipelines
  • Dive into asynchronous programming to extract performance on multicore systems using Scala Future and Scalaz Task
  • Design distributed systems with conflict-free replicated data types (CRDTs) to take advantage of eventual consistency without synchronization
  • Understand the impact of queues on system performance and apply the Free monad to build systems robust to high levels of throughput

Authors

Table of Contents

Chapter 1: The Road to Performance
Defining performance
Summarizing performance
Collecting measurements
A case study
Tooling
Summary
Chapter 2: Measuring Performance on the JVM
A peek into the financial domain
Unexpected volatility crushes profits
Reproducing the problem
Summary
Chapter 3: Unleashing Scala Performance
Value classes
Specialization
Tuples
Pattern matching
Tail recursion
The Option data type
Case study – a more performant option
Summary
Chapter 4: Exploring the Collection API
High-throughput systems – improving the order book
Historical data analysis
Summary
Chapter 5: Lazy Collections and Event Sourcing
Improving the client report generation speed
Rethinking reporting architecture
Summary
Chapter 6: Concurrency in Scala
Parallelizing backtesting strategies
Handling blocking calls and callbacks
Tasked with more backtest performance improvements
Summary
Chapter 7: Architecting for Performance
Distributed automated traders
Free trading strategy performance improvements
Summary

Book Details

ISBN 139781786466044
Paperback274 pages
Read More

Read More Reviews

Recommended for You

Learning Concurrent Programming in Scala Book Cover
Learning Concurrent Programming in Scala
$ 26.99
$ 18.90
Scala for Machine Learning Book Cover
Scala for Machine Learning
$ 35.99
$ 25.20
Scala for Data Science Book Cover
Scala for Data Science
$ 43.99
$ 30.80
Machine Learning with Spark Book Cover
Machine Learning with Spark
$ 29.99
$ 3.00
Scala Functional Programming Patterns Book Cover
Scala Functional Programming Patterns
$ 39.99
$ 28.00
Scala Data Analysis Cookbook Book Cover
Scala Data Analysis Cookbook
$ 35.99
$ 25.20