20.01.2015 Views

Performance Modeling and Benchmarking of Event-Based ... - DVS

Performance Modeling and Benchmarking of Event-Based ... - DVS

Performance Modeling and Benchmarking of Event-Based ... - DVS

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

4.2. PERFORMANCE MODELING PATTERN 57<br />

Pattern 5: Time Controlled Pull II<br />

Timer<br />

1‘Disconnected!<br />

T3<br />

1‘Trigger!<br />

Trigger<br />

Store<br />

1‘<strong>Event</strong> 1‘<strong>Event</strong> 1‘<strong>Event</strong> 1‘<strong>Event</strong><br />

Producer<br />

T1<br />

Broker<br />

T2<br />

Consumer<br />

T2-I: Pull <strong>Event</strong><br />

Broker<br />

<strong>Event</strong><br />

1 1<br />

Consumer<br />

<strong>Event</strong><br />

T2-II: Disconnect<br />

Trigger Store<br />

Trigger<br />

1<br />

1<br />

Timer<br />

Disconnected<br />

Trigger Store<br />

Trigger<br />

1<br />

1<br />

Trigger Store<br />

Trigger<br />

T3: Connect<br />

Timer<br />

Disconnected<br />

1<br />

1<br />

Trigger Store<br />

Trigger<br />

Figure 4.13: Time-controlled Pull Pattern<br />

Characteristics<br />

• Dynamic pull-based communication<br />

• Time controlled behavior: the consumer connects frequently to the broker to pull all<br />

waiting events after a certain time interval.<br />

Example<br />

An event consumer connects frequently to a broker to check whether notifications are waiting.<br />

If yes, the consumer downloads all <strong>of</strong> them, closes the connection afterwards <strong>and</strong> waits for a<br />

specified period <strong>of</strong> time before reconnecting.<br />

Description<br />

In this scenario we face again a time controlled pull-based communication behavior. In contrast<br />

to Pattern 4, the consumer does not only pull one event per connection, but all event notifications<br />

available at the broker. To reflect this, we introduce this pattern.<br />

Similar to Pattern 4, the scenario can be described as a loop composed <strong>of</strong> four phases:<br />

Phase I:<br />

Phase II:<br />

Phase III:<br />

Phase IV:<br />

Consumer is disconnected<br />

Establish connection<br />

Pull all available events<br />

Consumer disconnects<br />

Phase I, II <strong>and</strong> IV are comparable to the one <strong>of</strong> the previous pattern. However, Phase<br />

III differs from Pattern 4, where the consumer tries to pull a fixed number (1) <strong>of</strong> <strong>Event</strong>s. In the

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!