https://github.com/anushadatta/distributedsystems
💰 Distributed banking system using UDP.
https://github.com/anushadatta/distributedsystems
banking-system distributed-computing
Last synced: about 2 months ago
JSON representation
💰 Distributed banking system using UDP.
- Host: GitHub
- URL: https://github.com/anushadatta/distributedsystems
- Owner: anushadatta
- Created: 2022-03-30T06:49:41.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2022-12-27T14:55:11.000Z (almost 3 years ago)
- Last Synced: 2025-02-05T16:49:03.760Z (8 months ago)
- Topics: banking-system, distributed-computing
- Language: Java
- Homepage:
- Size: 246 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Distributed Banking System
> CZ4013 Distributed Systems \
> School of Computer Science and Engineering \
> Nanyang Technological UniversityThis distributed banking system follows the client-server architecture, which rests on principles of interprocess communication and remote invocation to facilitate communication between clients and a server using the User Datagram Protocol (UDP).
### System Services
1. Create Account
2. Close Account
3. Deposit/Withdrawal Funds
4. View Account Balance [Idempotent]
5. Transfer Funds [Non-Idempotent]
6. Monitor Updates (Register Callback)
### Transmission Modes
In addition to normal transmission, the system allows simulation of transmission loss by specifying socket probability of packet loss and socket timeout in seconds.
* Normal Transmission
* Sending Loss Transmission
* Receiving Loss Transmission
### Invocation Sematics
Further experimentation has been conducted to determine the robustness of inbuilt error handling and the effects of different invocation semantics on fault-tolerance.
* At-Least-Once
* At-Most-Once
### Team
* Anusha Datta
* Amrita Ravishankar
* Truong Cong Cuong