To support our site, Class Central may be compensated by some course providers.

Distributed Programming in Java

Rice University via Coursera

students interested
  • Provider Coursera
  • $ Cost Free Online Course (Audit)
  • Session In progress
  • Language English
  • Certificate Paid Certificate Available
  • Effort 4-8 hours a week
  • Start Date
  • Duration 4 weeks long

Taken this course? Share your experience with other students. Write review

Sign up to Coursera courses for free Learn how

This course teaches learners (industry professionals and students) the fundamental concepts of Distributed Programming in the context of Java 8. Distributed programming enables developers to use multiple nodes in a data center to increase throughput and/or reduce latency of selected applications. By the end of this course, you will learn how to use popular distributed programming frameworks for Java programs, including Hadoop, Spark, Sockets, Remote Method Invocation (RMI), Multicast Sockets, Kafka, Message Passing Interface (MPI), as well as different approaches to combine distribution with multithreading.

Why take this course?

• All data center servers are organized as collections of distributed servers, and it is important for you to also learn how to use multiple servers for increased bandwidth and reduced latency.
• In addition to learning specific frameworks for distributed programming, this course will teach you how to integrate multicore and distributed parallelism in a unified approach.
• Each of the four modules in the course includes an assigned mini-project that will provide you with the necessary hands-on experience to use the concepts learned in the course on your own, after the course ends.
• During the course, you will have online access to the instructor and the mentors to get individualized answers to your questions posted on forums.

The desired learning outcomes of this course are as follows:

• Distributed map-reduce programming in Java using the Hadoop and Spark frameworks
• Client-server programming using Java's Socket and Remote Method Invocation (RMI) interfaces
• Message-passing programming in Java using the Message Passing Interface (MPI)
• Approaches to combine distribution with multithreading, including processes and threads, distributed actors, and reactive programming

Mastery of these concepts will enable you to immediately apply them in the context of distributed Java programs, and will also provide the foundation for mastering other distributed programming frameworks that you may encounter in the future (e.g., in Scala or C++).

Taught by

Vivek Sarkar

Highest Rated Courses

Review for Coursera's Distributed Programming in Java
5.0 Based on 1 reviews

  • 5 star 100%
  • 4 star 0%
  • 3 star 0%
  • 2 star 0%
  • 1 star 0%

Did you take this course? Share your experience with other students.

Write a review
  • 1
5.0 a month ago
Anonymous is taking this course right now.
Well explained course. Only for those who have basic knowledge about threads in java. This course explains techniques about how to avoid race conditions, deadlocks.
Was this review helpful to you? Yes
  • 1

Class Central

Get personalized course recommendations, track subjects and courses with reminders, and more.