This course is for students and professionals in the industry. It teaches the basics of distributed programming within Java 8. Distributed programming allows developers to make use of multiple nodes within a data centre to improve throughput and/or decrease latency for selected applications. This course will teach you how to use the most popular distributed programming frameworks in Java, including Spark, Sockets and Multicast Sockets (RMI), Multicast Sockets (Kafka), Message Passing Interface, (MPI), and other approaches to combine multithreading with distribution.
This course is worth it. This course is a great way to learn about the different servers that are used to increase bandwidth and reduce latency. This course will not only teach you about distributed programming but also how to combine multicore and distributed parallelism using a single approach. Each module in the course has a mini-project assigned that will give you the opportunity to apply the concepts in your own projects after the course is over. You will be able to access the instructor and mentors online to receive personalized answers to any questions you post on the forums. These are the desired learning outcomes for this course: * Distributed map reduction programming in Java using Hadoop and Spark frameworks. * Client-server programming with Java's Socket (RMI), and Message Passing Interfaces (MPI). * Methods to combine distributed and multithreading, including distributed actors and reactive programming. Mastering these concepts will allow you to apply them immediately in distributed Java programs and also give you the foundation to master other distributed programming frameworks (e.g. in Scala and C ).