Performance Modeling and Benchmarking of Event-Based ... - DVS
Performance Modeling and Benchmarking of Event-Based ... - DVS
Performance Modeling and Benchmarking of Event-Based ... - DVS
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Broker<br />
Switch to<br />
1<br />
48 <strong>Event</strong> 1<br />
CHAPTER 4. State PERFORMANCE A<br />
ENGINEERING OF EVENT-BASED SYSTEMS Not.<br />
T2-II<br />
Pattern 3: St<strong>and</strong>ard Pub/Sub - Configurable No. <strong>of</strong> Subscribers<br />
1‘Sub.<br />
1‘Sub.A<br />
Init T0 Controller<br />
Configure Controlller<br />
T2<br />
Creates the configured no. <strong>of</strong><br />
notifications for each incoming <strong>Event</strong>.<br />
1‘<strong>Event</strong> 1‘<strong>Event</strong> 1‘Notification 1‘Notification<br />
Producer<br />
T1<br />
Publish <strong>Event</strong><br />
Broker<br />
T3<br />
Forward <strong>Event</strong><br />
Consumers<br />
The Modi <strong>of</strong> Transition 2<br />
T2 has four modi (T2-I to T2-IV), which<br />
a) implement states in the Controller place<br />
<strong>and</strong><br />
b) create a configured number <strong>of</strong> notification<br />
tokens for each incoming event.<br />
T2-III: State A<br />
Controller<br />
State A<br />
Sub. B<br />
1<br />
1<br />
1<br />
1<br />
1<br />
Controller<br />
State A<br />
Sub. A<br />
Broker<br />
Not.<br />
Controller<br />
State A<br />
State B<br />
Broker<br />
<strong>Event</strong><br />
1<br />
1<br />
1<br />
1<br />
T2-I<br />
Switch to<br />
State B<br />
1<br />
1<br />
Switch to<br />
State A<br />
T2-II<br />
Controller<br />
State A<br />
State B<br />
T2-IV: State B<br />
Controller<br />
State B 1<br />
Sub. A<br />
1<br />
1<br />
1<br />
1<br />
Controller<br />
State B<br />
Sub. B<br />
Broker<br />
Not.<br />
Figure 4.9: St<strong>and</strong>ard Pub/Sub Pattern - Configurable No. <strong>of</strong> Subscribers<br />
1‘Sub.<br />
1‘Sub.A<br />
Characteristics<br />
Creates the configured no. <strong>of</strong><br />
• Init 1 : n communication T0 Controller (one event is consumed T2<br />
notifications<br />
by a configurable<br />
for each<br />
number<br />
incoming<br />
<strong>of</strong> consumers)<br />
<strong>Event</strong>.<br />
Configure Controlller<br />
• Dynamic number <strong>of</strong> notifications<br />
1‘<strong>Event</strong> 1‘<strong>Event</strong> 1‘Notification 1‘Notification<br />
Example<br />
A<br />
Producer<br />
dynamic number <strong>of</strong> T1 event consumers<br />
Broker<br />
subscribe to a topic. T3<br />
Publish <strong>Event</strong><br />
Forward <strong>Event</strong><br />
Description<br />
Consumers<br />
In complex <strong>and</strong> flexible models we need the possibility to scale the number <strong>of</strong> notifications easily.<br />
In these cases Pattern 2 is not applicable. As a consequence, we define Pattern 3 where the<br />
number <strong>of</strong> notifications per event can be configured by the token count.<br />
Pattern 3 is based on the underlying idea <strong>of</strong> Pattern 2 regarding the service dem<strong>and</strong>. In<br />
contrast to Pattern 2, the user can configure the number <strong>of</strong> notifications for each event simply<br />
by adjusting the number <strong>of</strong> tokens named Subscriber in the system without modifying the