• Your selection is empty.

    Register the diplomas, courses or lessons of your choice.

Concurrent and distributed applications

  • School / Prep

    ENSEIRB-MATMECA

Internal code

EI9IT310

Description

The aim of this course is to understand the relevance of concurrent and distributed applications.
Through the implementation of two programs built iteratively during the semester, the course introduces the basics and concepts used in modern applications. Commonly used enterprise technologies such as Java, Spring, Kafka and Maven are used to familiarize the student with their use and facilitate future proficiency on similar technologies

Concurrent programming

Process vs. Thread
Multi-threaded programming
The difficulties of multi-threading
How to design multi-threaded applications
HTTP and socket
Creating a multi-threaded web server

Distributed programming

Preamble : IOC and dependency injection
REST server
REST client
3-tier architecture
Distributed architecture
Introduction to a message bus
Producer and consumer
Notion of high availability
Serialization / deserialization
Asynchronous service

Read more

Teaching hours

  • CIIntegrated courses27h
  • TIIndividual work15h

Mandatory prerequisites

Java, knowledge of an IDE

Read more

Syllabus

I5GL-D - Concurrent and distributed applications

+ Concurrent programming

Principles

Threading

Collaboration and synchronization

+ Distributed programming and JEE

Presentation

The JEE container

EJBs

Servlets

MDBs and JMS

[Clustering, Loadbalancing and Cloud]

Read more

Assessment of knowledge

Initial assessment / Main session - Tests

Type of assessmentType of testDuration (in minutes)Number of testsTest coefficientEliminatory mark in the testRemarks
Continuous controlContinuous control0.5
ProjectReport0.5

Second chance / Catch-up session - Tests

Type of assessmentType of testDuration (in minutes)Number of testsTest coefficientEliminatory mark in the testRemarks
ProjectReport0.5