Performance Study of Message

currygeckoΛογισμικό & κατασκευή λογ/κού

2 Δεκ 2013 (πριν από 3 χρόνια και 6 μήνες)

132 εμφανίσεις

Performance Study of Message
Passing in an Event Service:


Java RMI vs. TCP Sockets

Laxminarayan Muktinutalapati

(Lux)


Department of Computing and Information Sciences

Kansas State University

MSE Project Presentation

Phase
-
I

Overview

Introduction

Event service

Project Focus

Java RMI vs. TCP Sockets

Assumptions and Constraints


…contd.

Overview …(2)

Software Requirements Specification

Size Estimates

Project Plan

Documentation

Introduction

Event based distributed systems


Programmed to operate in response to
events


E.g.: Instant messaging, Stock
-
price
tracking, etc.


Distributed event service developed
independently in Java for the project

The Event Service

Distributed event service

Producer
-
Consumer pattern

Supports
push
model of event reception

Producers and Consumers decoupled

Event Notification Service (ENS) is the
means of communication

Event Service …(2)

Function of Event Notification Service
(ENS)


Deliver information regarding events
published (by Producers) to those
(Consumers) who are interested in the
corresponding information


Consumers typically register interest in
certain events with ENS

Event Service


Diagram

Producer

Consumer

Event

Notification

Service

push(event)

push(event)

subscribe(event)

unsubscribe(event)

Project Focus

Time based measures


to determine
efficiency of underlying mechanism
used for message passing

Java RMI vs. TCP Sockets

Tests performed at varying loads…

Measurements

Time taken for each event:

T
i
= t1
i

+ max { t2
i= 1..n
}

Producer

Consumer

Event

Notification

Service

push(event)

push(event)

subscribe(event)

unsubscribe(event)

t1
i

t2
i

Java RMI vs. TCP Sockets

Equivalent to a choice between
ease of
use
and
performance

RMI inherits all the benefits from Java

Issues like object serialization handled
by Java

Communication via sockets known to be
considerably faster

Assumptions and Constraints

System operates on a complete network


every node connected to every other node

Predefined set of events the producers
generate, which the consumers are familiar
with

Network latency


negligible or no effect on
results

Tests conducted to accommodate any other
such factors (time of day, load on system,
etc.)

Software Requirements Specification

To identify and define the requirements to aid
in developing the proposed system

Overall description of the system is followed
by a section that gives the specific
requirements which discusses key
functionality of the end product in adequate
detail

This document shall evolve continually

Size Estimation

Based on Function Point Analysis (FPA) as
outlined by IFPUG


Software measured in terms of
user
-
level
functionality


system broken down into smaller
components based on functionality


Independent of technology used

Functional components carry weights which
contribute to the final Function Point Count
(FPC), which can be translated into a fair
estimate of the size of the proposed system

Estimates Summary

Total Unadjusted Function Points

UFP = 51

Value Adjustment Factor

VAF = 1.0

Final Function Point Count

FPC = UFP * VAF = 51

Language Factor for Java (LF): 53

Estimated Source Lines of Code

SLOC = FPC * LF = 2703

Project Plan

Phase I: Requirements


Overview, SRS, Cost Estimate, Project Plan


December 18, 2002

Phase II: Architecture


Formal Requirement Specification, Software
Quality Assurance Plan, Architecture Design, Test
Plan, Formal Technical Inspection


January 2003

Phase III: Implementation


User manual, Source Code, Testing and Reliability
Evaluation, Project Evaluation, References


February 2003

Documentation

The following documents, required for the
Phase
-
I presentation are available online:


Overview Document


Software Requirements Specification


Cost Estimation


Project Plan


Engineering Notebook (Time log)


URL
-

http://www.cis.ksu.edu/~lmu9988/MSE/P1

Thank You!