Notification Service

Download Notification Service

Post on 16-Jan-2016

22 views

Category:

Documents

0 download

Embed Size (px)

DESCRIPTION

Notification Service. Ananth Krishna, Victor Tan, Richard Lawley, Simon Miles, Luc Moreau School of Electronics and Computer Science University of Southampton. Introduction. - PowerPoint PPT Presentation

TRANSCRIPT

  • Notification ServiceAnanth Krishna, Victor Tan, Richard Lawley, Simon Miles, Luc Moreau

    School of Electronics and Computer ScienceUniversity of Southampton.

  • IntroductionNotification service is a part of myGrid that essentially enables asynchronous delivery of messages between distributed components in myGrid.

    myGrid is an e-Science project to help biologists and bioinformaticians perform workflow based in silico experiments.

    In myGrid, some services described in the workflow may depend on others for results. It is inefficient and unnecessary to run all services/user agents at all times.

    A notification service, in myGrid is used to forward messages to these user agents by storing messages in their absence.

  • FeaturesAsynchronous delivery and persistence of messages

    Asynchronous messaging refers to a situation where publishers initiate the communication regardless of whether subscribers are actually available.

    In myGrid biologists and services are not always available.

    Topic based Publish/Subscribe messaging

    Topics are used to identify the kind of message sent or received and to group and distribute messages addressed to it.

    Topics also facilitate a many-to-many relationship model.

  • FeaturesPush/Pull models

    The notification source can decide when to push notifications to the sink or alternatively the sink can poll the source for notifications.

    Transient and Durable subscriptions

    Transient subscriptions exist as long as the subscriber is running.

    Durable subscriptions use persistence to provide a reliable service and they survive server failure.

    Clients in myGrid require both forms of subscriptions as subscribers may or may not choose to run at all times.

  • FeaturesQuality of Service

    Publishers and subscribers may have different requirements.

    Personalisation of the service is achieved by allowing clients to define a Quality of Service.

    Quality of Service in the notification service allows publishers to specify a publish limit, subscribers to control frequency with which notifications are received and either of them can specify topic type on creation.

  • FeaturesJMS Compliance

    The notification service is JMS compliant.

    JMS has been chosen because it guarantees message delivery once and only once through message acknowledgement.

    JMS also offers support for session management, message persistence, security, naming and directory services, etc which otherwise would have to be provided by notification service components.

  • FeaturesMessage Filtering

    Subscribers are often interested in specific notifications under a topic.

    Filters which are key/value pairs can be specified by subscribers.

    Filters are converted to JMS compliant filters.

  • Novel FeaturesDurable Topics

    Durable topics are introduced to solve a potential race condition in publish/subscribe messaging where a publisher publishes a message on a topic before a subscriber has subscribed on the same.

    Durable topics retain all messages sent on a topic and serve them to subscribers subscribing on such topics.

    Durable topics allow more flexibility to services and users in myGrid.

  • Novel FeaturesTopic Management

    Allows creation and deletion of topics dynamically.

    Hierarchical namespace in topics is supported.

    Hierarchical structure allows publishers to publish under specific topics rather than broad based generic topics.

    Subscribers can use wild cards to subscribe to more than one topic in a hierarchical namespace.

  • Novel FeaturesWeb Service and Grid Service compliance

    The notification service allows clients to access all its features through web service calls.

    A WSDL interface is defined which exposes all functionality of the service and is deployed inside an Axis engine.

    The notification service is moving towards Grid service compliance.

  • Novel FeaturesFederated notification servicesSome organisations have a network of notification services working collectively.

    This can be achieved by simple routing via hubs in a peer-2-peer manner.

  • Novel FeaturesNegotiation over QoS

  • ArchitectureArchitecture of myGrid Notification Service.

  • ArchitectureArchitecture of myGrid Notification Service.

  • ArchitectureArchitecture of myGrid Notification Service.

  • ArchitectureArchitecture of myGrid Notification Service.

  • ArchitectureArchitecture of myGrid Notification Service.

  • ArchitectureArchitecture of myGrid Notification Service.

  • ArchitectureArchitecture of myGrid Notification Service.

  • ArchitectureArchitecture of myGrid Notification Service.

  • Evaluation and ResultsPerformance of a messaging middleware can be measured in various ways. In this section we have concentrated on measuring performance in terms of average time taken to publish 1000 messages.

    The experimental setup involved deploying the notification service on a Windows platform with a Pentium 4 processor and 750 MB memory and measuring publish time for publishing up to 10000 messages with some or all of the features turned on/off.

  • Evaluation and Results

    Chart1

    1921110015130.2

    1887.15110014600.1

    1793.814110014234.1

    1747.45110013890.5

    1689.54110013540.5

    1681.7626110013100.8

    1677.67110012890.9

    1676.98110012234.3

    1677.02110012230

    1676.98110012230.4

    MGNS

    JMS

    MGNS as web service

    Number of Messages in thousands

    Time taken to publish in milliseconds

    Performance stats for non persistent messages

    Sheet1

    1000192110001100100015130.2

    20001887.1520001100200014600.1

    30001793.81430001100300014234.1

    40001747.4540001100400013890.5

    50001689.5450001100500013540.5

    60001681.762660001100600013100.8

    70001677.6770001100700012890.9

    80001676.9880001100800012234.3

    90001677.0290001100900012230

    100001676.981000011001000012230.4

    Sheet1

    000

    000

    000

    000

    000

    000

    000

    000

    000

    000

    MGNS

    JMS

    MGNS as web service

    Number of Messages in thousands

    Time taken to publish in milliseconds

    Performance stats for non persistent messages

    Sheet2

    Sheet3

  • Evaluation and Results

    Chart1

    7238.15843

    6873.255843

    6537.4325843

    6417.7255843

    6363.085843

    6342.45843

    63125843

    6305.65843

    63055843

    6305.45843

    MGNS

    JMS

    Number of Messages in thousands

    Time taken to publish in milliseconds

    Performance stats for persistent messages

    Sheet1

    Time in ms/Message12345678910MinMaxAvgSTDDEV

    10007291754970717029732174327004751870437123700475497238.1210.8266533856

    200014294136521367713776136551376313612138001358213654135821429413746.5

    300019207196322078419745198952005319340195681979020090192072078419810.4

    400025188243222673825433264342654425178265842341226876234122687625670.9

    500031525322143221532245332143256830205311543124231572302053321431815.4

    Number of MsgsAverage Time taken for 1000 msgs

    10007238.110005843

    20006873.2510005843

    30006537.43210005843

    40006417.72510005843

    50006363.0810005843

    60006342.410005843

    7000631210005843

    80006305.610005843

    9000630510005843

    100006305.410005843

    Sheet1

    00

    00

    00

    00

    00

    00

    00

    00

    00

    00

    MGNS

    JMS

    Number of Messages in thousands

    Time taken to publish in milliseconds

    Performance stats for persistent messages

    Sheet2

    Sheet3

  • Evaluation and Results

    Chart1

    15090.41369818670

    14768.31369818123.4

    14367.41369817678.2

    14086.51369817013.5

    13987.21369816676

    13998.31369816456.4

    13789.41369816012.3

    13793.11369815771.2

    137931369815770.2

    13792.21369815768

    MGNS with durable topic

    JMS

    MGNS with durable topic and message filter

    Number of Messages in thousands

    Time taken to publish in milliseconds

    Performance stats for durable topic and message filter

    Sheet1

    Time in ms/Message12345678910MinMaxAvgSTDDEV

    Number of MsgsAverage Time taken for 1000 Msgs

    100015090.4100013698100018670

    200014768.3100013698200018123.4

    300014367.4100013698300017678.2

    400014086.5100013698400017013.5

    500013987.2100013698500016676

    600013998.3100013698600016456.4

    700013789.4100013698700016012.3

    800013793.1100013698800015771.2

    900013793100013698900015770.2

    1000013792.21000136981000015768

    Sheet1

    000

    000

    000

    000

    000

    000

    000

    000

    000

    000

    MGNS with durable topic

    JMS

    MGNS with durable topic and message filter

    Number of Messages in thousands

    Time taken to publish in milliseconds

    Performance stats for durable topic and message filter

    Sheet2

    Sheet3

  • ConclusionThe notification service is aimed at the bioinformatics community but also presents some interesting aspects like durable topics, negotiation over QoS, federated services in p2p, hierarchical topic structure and web service compliance which are new in distributed computing and messaging middleware.

    The results obtained from initial tests show that most of the features supported in the service justify the overhead they incur in terms of performance degradation as they offer compensating benefits.

  • Future workImplementing federation of servi

Recommended

View more >