A lot of applications that are built today need to handle huge amounts of traffic in low latency. Java is a very popular language and JVM is a popular platform to build high performance programs in Java. Java 9 adds reactive programming as a first class citizen to handle traffic in a multi-threaded and concurrent way. Writing high-performance concurrent and thread-safe programs is hard, but you’ll discover how and see what Java 9 adds to the software engineer toolkit.
First, we’ll create efficient lock-free programs that leverage the multi-core architecture of the CPU using the newest Java 9 features. Then you’ll see how Java Memory Model affects the performance of your programs. You’ll discover why it’s even more important to be aware of the software-hardware co-operation of your programs in Java 9.
Moving on, you’ll find out how to leverage constructs from JAVA 9 java.util.concurrent to create efficient multi-threaded programs. We’ll explore the different kinds of locking available in JAVA 9 and get to know when you should use which kind of locks. Finally, you’ll see what tools are shipped with the JDK 9 and know how to use them properly.
About The Author
Tomasz Lelek is a Software Engineer, programming mostly in Java, Scala. He is a fan of microservices architecture, and functional programming. He has dedicated considerable time and effort to be better every day. He recently dived into Big Data technologies such as Apache Spark and Hadoop. Tomasz is passionate about nearly everything associated with software development. Recently he was a speaker at conferences in Poland - Confitura and JDD (Java Developers Day) and also at Krakow Scala User Group. He has also conducted a live coding session at Geecon Conference.
In this video, you will learn what Java Memory Model is.
In this video, you will learn about hardware affinity.
In this video, you will learn about JVM intrinsic functions.
In this video, you will understand and analyze byte-code.
In this video, you will learn about optimistic versus pessimistic locking.
In this video, you’ll learn about Compare and Set structures.
In this video, we will explore more about threads by coordinating them.
In this video, we will explore more of Java 9 with reactive streams.
In this video, we will look at the code of the application with a potential memory leak.
In this video, we will examine CPU and resource usages of the Java application.
In this video, we will go through the important points covered in this section.
Packt has been committed to developer learning since 2004. A lot has changed in software since then - but Packt has remained responsive to these changes, continuing to look forward at the trends and tools defining the way we work and live. And how to put them to work.
With an extensive library of content - more than 4000 books and video courses -Packt's mission is to help developers stay relevant in a rapidly changing world. From new web frameworks and programming languages, to cutting edge data analytics, and DevOps, Packt takes software professionals in every field to what's important to them now.
From skills that will help you to develop and future proof your career to immediate solutions to every day tech challenges, Packt is a go-to resource to make you a better, smarter developer.
Packt Udemy courses continue this tradition, bringing you comprehensive yet concise video courses straight from the experts.