Presentation is loading. Please wait.

Presentation is loading. Please wait.

Reliable Service Scheduler in a Distributed Web Service Environment John Bouchard Brad Tiffany Ethan Towne Daniel Richard.

Similar presentations


Presentation on theme: "Reliable Service Scheduler in a Distributed Web Service Environment John Bouchard Brad Tiffany Ethan Towne Daniel Richard."— Presentation transcript:

1 Reliable Service Scheduler in a Distributed Web Service Environment John Bouchard Brad Tiffany Ethan Towne Daniel Richard

2 2 Are We Done Yet?!?!?!

3 3 Recap of Project Service scheduler in a web service environment Service scheduler in a web service environment ApplicationServer

4 4 Applications Two Applications Two Applications QB Rating Calculator QB Rating Calculator Base Conversion Tool Base Conversion Tool Two Versions Two Versions Windows Application Windows Application PDA Application PDA Application

5 5 Application Design Create Windows Application Create Windows Application Redesigned UI for PDA Redesigned UI for PDA Client-Server Model Client-Server Model PDA Applications use Client – Server Model

6 6 Server Side Processing XML Writer XML Reader XML Writer XML Reader Client Side Server Side

7 7 Server Side Processing XML Writer XML Reader XML Writer XML Reader Client Side Server Side

8 8 Server Side Processing XML Writer XML Reader XML Writer XML Reader Client Side Server Side

9 9 Server Side Processing XML Writer XML Reader XML Writer XML Reader Client Side Server Side

10 10 Server Side Processing XML Writer XML Reader XML Writer XML Reader Client Side Server Side

11 11 Server Side Processing XML Writer XML Reader XML Writer XML Reader Client Side Server Side

12 12 Demo Time! QB Rating Calculator Application VS. primecomputing.com QB rating calculator ------------------------------------------------------- Comparison of PDA Base Conversion Tool Vs. Windows Calculator Application

13 13 Flagship Application Application Choice: Application Choice: Avatar Chat Environment-2D Avatar Chat Environment-2D Combines Game, Chat, Utility Combines Game, Chat, Utility Game: Interactive, Fun Game: Interactive, Fun Chat: Real-time communication Chat: Real-time communication Utility: Navigate services Utility: Navigate services Parallels previous team’s Flagship Parallels previous team’s Flagship

14 14 Flagship Application

15 15 Flagship Application

16 16 Flagship Application

17 17 Flagship Application

18 18 Flagship Application textmap.push("##.#.#.#...#O#O#O..######.#.##");textmap.push("##.###.#...O....#..#......#.##");textmap.push("##.#.#.#...#.,*.O..#.######.##");textmap.push("##.........O.*,.#..#......#.##");textmap.push("##..###....#....O..######.#.##");textmap.push("##.#...#...O#..O#.........#.##");textmap.push("##.#...#....O..#...########.##");

19 19 Flagship Application

20 20 Flagship Application Work remaining: Work remaining: Port to PocketPC Port to PocketPC Share info with C# host (on same system) Share info with C# host (on same system) Add functionality Add functionality

21 21 Ethan Towne Service Manager Overview and Important Design Decisions

22 22 Service Manager Design To Client Alters Agent Queue in Scheduler Spawns Service Agent Accepts Client Connections Service Manager Agent 3 Agent 2

23 23 Service Agents Each service has own thread called an “agent” Each service has own thread called an “agent” Each agent only runs when their turn has come Each agent only runs when their turn has come

24 24 Design Decisions Asynchronous vs. Synchronous data reception. Asynchronous vs. Synchronous data reception. Using polymorphism to launch client applications Using polymorphism to launch client applications SQL queries used to pull data for server implementation SQL queries used to pull data for server implementation Data Transfer Protocol Data Transfer Protocol

25 25 Synchronous Listening to a socket blocks the thread until data arrives. Listening to a socket blocks the thread until data arrives.

26 26 Asynchronous Listening to a socket creates a new thread and blocks that thread. Listening to a socket creates a new thread and blocks that thread.

27 27 Polymorphism Clients implement a common interface (Base Class). Clients implement a common interface (Base Class). Server creates a pointer of type interface (Base Class). Server creates a pointer of type interface (Base Class). Pointer can then dynamically be set to point to the needed client application. Pointer can then dynamically be set to point to the needed client application.

28 28 Database Backend tblUser Fields: Key: usrUD Name Pass Info etc. relServices FK: usrID FK: srvcID tblServices Fields: Key: srvcID Service Name Usage Info etc.

29 29 SQL Statements Used to query database for unique data sets. A simple query: Used to query database for unique data sets. A simple query: "Select * from testTable WHERE Name='"+name+ "' AND Pass='"+pass+"'"

30 30 Relational Statements Used to select datasets from 2 or more tables. For example: Used to select datasets from 2 or more tables. For example: “Select * FROM testTable, testTable2 WHERE testTable.userId = 5 AND testTable.userID = testTable2.userID;

31 31 Data Transfer Protocol XML used to transfer data. ToXML() and FromXML() Wraps/Unwraps data transferred into packets containing important data for the server.

32 32 Service Scheduler Daniel Richard

33 33 Abstract Service Scheduler Design Service Scheduler Design Handling Input Handling Input What needs to be completed What needs to be completed Final Product Final Product Recap Recap

34 34 Scheduler Priority Queue S1S3S2S4 Soft Real- Time Queue.Net Runtime Dispatcher (service activator)

35 35 Input Buffer Queue All Input is passed into an Input Buffer Queue. All Input is passed into an Input Buffer Queue. The packets are scheduled according to their priority or deadline. The packets are scheduled according to their priority or deadline. The service agent will be given control of CPU when their packet is dispatched. The service agent will be given control of CPU when their packet is dispatched.

36 36 What’s Next? Implementation of the Service Scheduler Implementation of the Service Scheduler Complete Implementation of the Client- Server Model Complete Implementation of the Client- Server Model Integration of Client and Server Integration of Client and Server

37 37 Finished Product Server executable Server executable Requires.Net Framework Requires.Net Framework Client executable Client executable Runs on PDA or Emulator Runs on PDA or Emulator Fully Documented Code Fully Documented Code

38 38 Future Semesters Expand on Database backend Expand on Database backend Add PC version of the Client program Add PC version of the Client program Add more Client programs and services Add more Client programs and services Expand on Flagship Application Expand on Flagship Application Possibilities are endless Possibilities are endless

39 39Recap Demo of PDA Applications Demo of PDA Applications Flagship Application Flagship Application Service Manager Service Manager Service Scheduler Service Scheduler Finished Product Finished Product

40 40 ?


Download ppt "Reliable Service Scheduler in a Distributed Web Service Environment John Bouchard Brad Tiffany Ethan Towne Daniel Richard."

Similar presentations


Ads by Google