Thanks to visit codestin.com
Credit goes to github.com

Skip to content

☕ A Distributed Task Scheduling System is a software infrastructure that allows for the distribution and execution of tasks across multiple nodes in a network. It enhances the efficiency and scalability of large-scale computation and data processing tasks by dividing complex tasks into smaller sub-tasks and distributing them.

License

Notifications You must be signed in to change notification settings

walidbosso/Java_Task_Scheduling

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

37 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Java_Task_Scheduling

GitHub WidgetBox

Java Task Scheduling System

Presentation:

  • This project introduces a Java-based Distributed Task Scheduling System for parallel data(Image & Matrix) processing using Threads.
  • Efficient task scheduling optimizes resource allocation and timeframes.

What does my project do exactly:

  • Clients can easily submit various tasks like Filter, Convolution, and Matrix, executed via RMI on the server.
  • Server further breaks down tasks through TCP to slaves, then compiles outcomes, and then sends the result back to the client.
  • Slaves play a pivotal role by executing assigned sub-tasks.

Instructions:

  • Put all 5 config.txt files+ image+ kernel.txt in Desktop

Inside folder "src" open 8 of Git-Bash in each 1 of type these lines:

# Compile Java files
1. javac Classes/*.java 

# Starts the slaves listening TCP
2. java Classes.SlaveTask config0.txt
3. java Classes.SlaveTask config1.txt
4. java Classes.SlaveTask config2.txt
5. java Classes.SlaveTask config3.txt

# Open the RMI port
6. rmiregistry 13190

# Start the server, creates multiple workers which works in parallel
7. java Classes.TaskSchedulerServer config.txt

# Open the GUI
8. java Classes.Tasks

Extra

A port open error:

jps #To see all javaprocess along with PID
taskkill /PID 5032 /F #To terminate in case it was needed, 5032 is just an example.

More ressources:

  • In case you didn't want to do this manually and felt lazy, check the folder called Xtra, I included C codes where it can automatize this work, just fix the Path to each C file in each C code, compile each one of them. When you finish, run TaskManagement_Process.exe, this will run all the 8 commands I mentioned above automatically.
  • Now whenever you feel like trying the project again just run TaskManagement_Process.exe, no need to run 8 commands every single time, consider creating a link to the .exe file instead and add an icon.
  • Contact me in LinkedIn for questions.


 
© by Walid BOUSSOU  🇲🇦 😄
 


👏 Thanks for the support

Stargazers

Stargazers repo roster for @walidbosso/Java_Task_Scheduling

Forkers

Forkers repo roster for @walidbosso/Java_Task_Scheduling

Contributors




GitHub last commit (by committer)

GitHub License

𝚂𝚑𝚘𝚠 𝚜𝚘𝚖𝚎 💙 𝚋𝚢 𝚜𝚝𝚊𝚛𝚛𝚒𝚗𝚐 ⭐ 𝚝𝚑𝚎 𝚛𝚎𝚙𝚘𝚜𝚒𝚝𝚘𝚛𝚢!


Back to top

About

☕ A Distributed Task Scheduling System is a software infrastructure that allows for the distribution and execution of tasks across multiple nodes in a network. It enhances the efficiency and scalability of large-scale computation and data processing tasks by dividing complex tasks into smaller sub-tasks and distributing them.

Topics

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published