Skip to content

Implementation of Gossip and PushSum Protocols, Distributed Hash Table using Pastry Protocol, Twitter Engine and REST API

deepbodra97/Distributed-Operating-System-Principles

Repository files navigation

Distributed Operating System Principles

This is a project for the course COP5612: Distributed Operating System Principles at the University of Florida

Demo (Project 4.2)

Demo

Projects

The TASK.pdf in each folder describes the requirements of the project in detail.

  • Project 1
    1. Given two integers N and k, Find all sequences of 'k' consecutive integers whose sum of squares is a perfect square (the last sequence being: N, N+1, ..., N+k-1)
  • Project 2
    1. Implement Gossip Protocol to observe the convergence time of the algorithm for various topologies.
    2. Implement Push Sum algorithm to calculate sum in a distributed network and observe the convergence for various topologies
    3. Topologies: Full Network, 2D Grid, Line, Imperfect 2D Grid
  • Project 3: Pastry Protocol
    1. Implement Distributed Hash Table using Pastry Protocol to route the request in hops equal to the log of the number of nodes
  • Project 4.1: Twitter Engine
    1. Implement a twitter like engine for account registration, posting tweets, subscribing to tweets, retweeting, querying tweets (based on hashtags, mentions) and live delivery of tweets
    2. Implement a client simulator that will spawn a huge number of clients and these clients will access the twitter engine functionalities
    3. Measure the performance of your engine in terms of the number of requests, number of online users and number of tweets per seconds, etc
  • Project 4.2: REST API, Sockets
    1. Rewrite the twitter engine to use a JSON based REST API
    2. Rewrite the client that will access the API using AJAX requests and sockets
    3. Use Websharper framework

Want to try it out?

Each project subdirectory has a Report with a brief explanation of the implementation details and steps to run the project.

Frameworks/Libraries/Languages

  • F#
  • Akka.NET
  • Websharper

Want to contribute?

  • Drop a star if it helped you in your project
  • Send a pull request if you would like to improve this project

Free Project, Hell Yeah!

About

Implementation of Gossip and PushSum Protocols, Distributed Hash Table using Pastry Protocol, Twitter Engine and REST API

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published