Reliable Service Scheduler in a Distributed Web Service

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

Are We Done Yet? !? !? ! 2

Recap of Project n Service scheduler in a web service environment Application Server 3

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

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

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

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

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

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

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

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

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

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

Flagship Application 14

Flagship Application 15

Flagship Application 16

Flagship Application 17


Flagship Application 19

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

Service Manager Overview and Important Design Decisions Ethan Towne 21

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

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

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

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

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

Polymorphism n n n Clients implement a common 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. 27

Database Backend tbl. User Fields: Key: usr. UD rel. Services Name Pass FK: usr. ID Info etc. FK: srvc. ID tbl. Services Fields: Key: srvc. ID Service Name Usage Info etc. 28

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

Relational Statements n Used to select datasets from 2 or more tables. For example: “Select * FROM test. Table, test. Table 2 WHERE test. Table. user. Id = 5 AND test. Table. user. ID = test. Table 2. user. ID; 30

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

Service Scheduler Daniel Richard 32

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

Scheduler Soft Real. Time Queue Priority Queue Dispatcher (service activator) S 1 S 3 S 2 S 4 . Net Runtime 34

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

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

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

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

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

? 40
- Slides: 40