Comp 473 Assignment 1 and 2
Comp 473 Assignment 1 and 2
REG_NO:S13/02322/19
UNIT TITLE:DISTRIBUTED SYSTEMS
UNIT CODE: COMP 473
LECTURER: MR. KEMEI
DATE:7/3/2023
ASSIGNMENT 1
Repeat the same concepts as in UDP and TCP communication examples given above for the
following middleware protocols.
a) Java API to IP multicast communication i.e give running sample code for Multicast peer joins
a group and sends and receives datagrams
b) Remote interfaces in Java RMI i.e give a running sample code for Java Remote interfaces
Shape and Shape List on client side as well as server side.
c) CORBA client and server i.e give a running sample code for Java client program for CORBA
interfaces Shape and ShapeList
a) Java API to IP multicast communication: Java API provides a simple way to send and
receive IP multicast datagrams using the MulticastSocket class.
Here's a sample code for a multicast peer joining a group and sending/receiving
datagrams:
import java.io.IOException;
import java.net.DatagramPacket;
import java.net.InetAddress;
import java.net.MulticastSocket;
Here's a sample code for defining remote interfaces for Shape and ShapeList, and for
implementing them on the server and client side:
import java.rmi.Remote;
import java.rmi.RemoteException;
import java.util.List;
c) CORBA client and server: CORBA (Common Object Request Broker Architecture) is a
middleware technology that allows objects to communicate with each other, even if they
are written in different languages.
Here's a sample code for a Java client program for CORBA interfaces Shape and
ShapeList:
import org.omg.CORBA.*;
import Shape.*;
import ShapeList.*;
ASSIGNMENT 2
1) Using the concepts of distributed systems learned in previous topics and do own your research
case study to
2. Using same handlines in assignment (1) summarize and make your own brief notes on
Amazon platform as distributed systems application.
Amazon is a global leader in e-commerce and cloud computing. It operates several distributed
systems that power its services, such as Amazon.com, Amazon Web Services (AWS), and
Amazon Prime. These systems rely on distributed computing technologies to provide scalable,
reliable, and efficient services to customers worldwide.
Amazon Web Services (AWS) is a cloud computing platform that provides a wide range of
services, including computing, storage, databases, analytics, machine learning, and security.
AWS is built on top of several distributed systems, such as Amazon S3 (Simple Storage
Service), Amazon EC2 (Elastic Compute Cloud), and Amazon DynamoDB.
Amazon S3 is a highly available and durable object storage system that can store and retrieve
any amount of data from anywhere on the web. It is designed to provide 99.999999999%
durability and can sustain the concurrent loss of data in two facilities.
Amazon EC2 is a web service that provides resizable compute capacity in the cloud. It is
designed to make web-scale cloud computing easier for developers. EC2 allows users to launch
instances of virtual machines and run their applications on them.
Amazon DynamoDB is a fully managed NoSQL database service that provides fast and
predictable performance with seamless scalability. It is designed to scale up or down
automatically based on the workload.
Amazon's distributed systems are designed to be fault-tolerant and scalable, with the ability to
handle massive amounts of data and traffic. These systems rely on advanced networking and
communication protocols, such as TCP/IP and UDP, to provide reliable and efficient
communication between distributed nodes.
Overall, Amazon's distributed systems architecture is crucial to its success in providing scalable
and reliable services to its customers