Explore the power of distributed computing to write concurrent, scalable applications in JavaAbout This BookMake the best of Java 9 features to write succinct codeHandle large amounts of data using HPCMake use of AWS and Google App Engine along with Java to establish a powerful remote computation systemWho This Book Is ForThis book is for basic to intermediate level Java developers who is aware of object-oriented programming and Java basic concepts.What You Will LearnUnderstand the basic concepts of parallel and distributed computing/programmingAchieve performance improvement using parallel processing, multithreading, concurrency, memory sharing, and hpc cluster computingGet an in-depth understanding of Enterprise Messaging concepts with Java Messaging Service and Web Services in the context of Enterprise Integration PatternsWork with Distributed Database technologiesUnderstand how to develop and deploy a distributed application on different cloud platforms including Amazon Web Service and Docker CaaS ConceptsExplore big data technologiesEffectively test and debug distributed systemsGain thorough knowledge of security standards for distributed applications including two-way Secure Socket LayerIn DetailDistributed computing is the concept with which a bigger computation process is accomplished by splitting it into multiple smaller logical activities and performed by diverse systems, resulting in maximized performance in lower infrastructure investment. This book will teach you how to improve the performance of traditional applications through the usage of parallelism and optimized resource utilization in Java 9.After a brief introduction to the fundamentals of distributed and parallel computing, the book moves on to explain different ways of communicating with remote systems/objects in a distributed architecture. You will learn about asynchronous messaging with enterprise integration and related patterns, and how to handle large amount of data using HPC and implement distributed computing for databases.Moving on, it explains how to deploy distributed applications on different cloud platforms and self-contained application development. You will also learn about big data technologies and understand how they contribute to distributed computing. The book concludes with the detailed coverage of testing, debugging, troubleshooting, and security aspects of distributed applications so the programs you build are robust, efficient, and secure.Style and approachThis is a step-by-step practical guide with real-world examples.