Top Banner
MOINC Server Software Architecture G5 Server Hiranya Jayathilaka 050185M Aravinda Dassanyake 050071K Dinusha Boteju 050049C Eranda Angunawala 050018G Project Supervisors Mr. Shantha Fernando Mr. Indika Perera Project Mentor Dr. Sanjiva Weerawarana
21

MOINC Server

Dec 17, 2014

Download

Technology

 
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: MOINC Server

MOINC Server

Software Architecture – G5

Server

Hiranya Jayathilaka 050185M

Aravinda Dassanyake 050071K

Dinusha Boteju 050049C

Eranda Angunawala 050018G

Project Supervisors Mr. Shantha Fernando

Mr. Indika Perera

Project Mentor Dr. Sanjiva Weerawarana

Page 2: MOINC Server

What is MOINC?

Mora Open Infrastructure for Network Computing

“It is a working prototype for an architecture

combining the paradigm of Web Services with

Grid Computing and Volunteer Computing”

“Hmm… Flashy name! So, what is MOINC?”

Page 3: MOINC Server

Web Services Today…

Poor scalability

Poor availability.

Degradation of performance

when subjected to heavy loads.

“The current Web Services

paradigm has a number of critical

limitations”

Page 4: MOINC Server

Clustering

Current Trends…(cont)

“The traditional

way of providing high

availability and

performance”

Page 5: MOINC Server

Current Trends…(cont)

Grid Computing

• Coordinates resources

that are not subject

to centralized control.

• Uses standard, open,

general-purpose protocols and

interfaces.

• Delivers non-trivial qualities of

service

“A special type of distributed

computing”

Page 6: MOINC Server

Current Trends…(cont)

Volunteer Computing

“Technically similar to

Grid Computing. But…”

• Can be implemented using

inexpensive commodity

hardware.

• Open to large communities.

• Users should trust

applications and vice versa.

Page 7: MOINC Server

How MOINC Fits In…

“MOINC is a fusion of the

best of Grid Computing and

Volunteer Computing with

Web Services”

“Sounds interesting…

Let’s hear more”

Page 8: MOINC Server

MOINC Quick Facts

“MOINC is a brainchild of Dr. Sanjiva Weerawarana”

Three primary components

MOINC Server

MOINC Server Manager

MOINC Client Agent

Components linked via the Thisara Communication Framework.

Research & development started in April 2008.

Aim – Improving the availability and scalability of Web Services through a

blend of Web Services and Grid/Volunteer Computing.

Page 9: MOINC Server

MOINC Server

The core component of the MOINC platform.

Manager and coordinator.

Grid membership manager.

Service and module management.

Configuration management.

Shared repository.

MOINC Server management console.

Default member.

Page 10: MOINC Server

Grid Membership Manager

Concept of Clustering Domains.

A clustering domain contains a set of services.

Each node is assigned to one or more domains.

When a node is assigned to a domain all the services in the

domain are deployed in the node.

Domain Manager

Low level membership management via Apache Tribes

Multicast based group communication framework.

High level membership management via Thisara

Page 11: MOINC Server

Grid Membership Manager

Idle Request Tracker (powered by Thisara)

MOINC Agent instances residing on remote machines notify the MOINC Server

when they are willing to join the grid by sending an Idle Request message.

Adding nodes dynamically to the grid

(powered by Apache Synapse)

Removing nodes dynamically from the grid (powered by Apache Synapse)

Node state maintenance

(powered by Apache Axis2 / Tribes)

Basic dynamic load balancer

Smart Load Balancer

Validation API and domain manager

Page 12: MOINC Server

Service & Module Management

Addition and removal of service artifacts.

Deploying and undeploying Axis2 modules.

Hot deployment.

Page 13: MOINC Server

Configuration Management

XML based global configuration model.

Easily extensible by defining custom properties and parameters.

Inspired by the Apache Axis2 configuration model.

Separate configuration for Management Console for loose coupling.

Page 14: MOINC Server

Server Management Console

JavascriptWeb

Services

W

S

F

XSLT

Web 2.0 like.

Inspired by the WSO2 WSAS UI framework.

Core functionalities implemented as Java Web Services.

Executes Web Services through WSO2 Web Services Framework

(WSF) for Javascript.

Displays grid status, service, module and

system information.

Page 15: MOINC Server

Default Member - WSAS

Registry

Axis2WSAS Axis2

Clustering Layer Clustering Layer Clustering Layer

Tribes Tribes TribesManagement

Console

Uses WSO2 WSAS (Web Services Application Server)

Runs in conjunction with the shared repository.

Acts as the container for the Server Management Module.

Becomes a default member for each clustering domain.

Page 16: MOINC Server

Thisara Communication Framework

Protocol Designed from the scratch.

Message format inspired by the Financial Information Exchange (FIX) Protocol.

Simple, light-weight, text-based.

TLS secured.

Implemented on Apache MINA (Multipurpose Infrastructure for Network Applications)

Simple Server-side and Client-side APIs.

Optional multithreading support.

Maven2 support.

API

Business Logic

Server Message Handler

TLS

MINA

API

Business Logic

Client Message Handler

TLS

MINA

ServerClient

TCP/IP

Page 17: MOINC Server

MOINC Server – Roadmap

Page 18: MOINC Server

The End Result…

“We have a highly scalable and loosely coupled

architecture for deploying Web Services on grid

environments.”

“Reliability can be achieved through message cloning.”

“Better performance can be achieved through message

splitting and aggregation.”

Page 19: MOINC Server

What We Did…

“MOINC is not just a product. It’s much more than that…

It resembles the inception of a whole new architecture.

An architecture which allows Web Services deployments

to scale beyond limits unimaginable.”

Page 20: MOINC Server

Keep In Touch…

Official Website http://www.moinc.org

SVN http://svn.moinc.org/thisarahttp://svn.moinc.org/server

Mailing List http://groups.google.com/group/project_moinc

Third party Project Tracking http://www.ohloh.net/p/moinc

Developer Resources http://www.moinc.org/index.php?option=com_content&view=article&id=53&Itemid=65

Download http://www.moinc.org/index.php?option=com_content&view=article&id=57&Itemid=70

Page 21: MOINC Server

Thank You!