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.
PC Server<br />
310<br />
PC Server<br />
310<br />
PC Server<br />
310<br />
PC Server<br />
310<br />
PC Server<br />
310<br />
PC Server<br />
310<br />
PC Server<br />
310<br />
PC Server<br />
310<br />
1.3. APPROACH AND CONTRIBUTIONS OF THIS THESIS 3<br />
WAN<br />
WAN<br />
WAN<br />
WAN<br />
Figure 1.1: A (Distributed) <strong>Event</strong>-based System<br />
1.3.1 Contributions in <strong>Performance</strong> Engineering<br />
<strong>Modeling</strong> EBS is challenging because <strong>of</strong> the decoupling <strong>of</strong> the communicating parties, on the<br />
one h<strong>and</strong>, <strong>and</strong> the dynamic changes in the system structure <strong>and</strong> behavior, on the other h<strong>and</strong>. If<br />
a request is sent in a traditional request/reply-based distributed system, it is sent directly to a<br />
given destination. This makes it easy to identify the system components <strong>and</strong> resources involved<br />
in its processing. In contrast, when an event is published in an EBS, as illustrated in Figure 1.1,<br />
it is not addressed to a particular destination, but rather routed along all those paths that lead<br />
to event consumers. The event might have to be processed by multiple system nodes on its way<br />
to consumers <strong>and</strong> it is difficult to predict in advance which nodes will be involved in delivering<br />
the event. Moreover, individual events published by a given producer might be routed along<br />
completely different paths, visiting various sets <strong>of</strong> system nodes. Another difficulty stems from<br />
the fact that every time a new subscription is created or an existing one is modified, this might<br />
lead to significant changes in the system behavior. Thus, the dynamics <strong>of</strong> EBS require that<br />
workload characterization be done on a regular basis in order to reflect changes in the system<br />
configuration <strong>and</strong> workload.<br />
We proposed a novel approach to workload characterization <strong>and</strong> performance modeling <strong>of</strong><br />
EBS, aiming to address the above challenges. We developed a workload model based on monitoring<br />
data that captures the system routing behavior <strong>and</strong> resource consumption at a level that<br />
allows us to use this information as an input to performance models. The workload model we<br />
proposed does not make any assumptions about the algorithms used at the event routing <strong>and</strong><br />
overlay network layers <strong>of</strong> the system. Using the workload model <strong>and</strong> applying operational analysis<br />
techniques, we were able to characterize the message traffic <strong>and</strong> determine the utilization<br />
<strong>of</strong> system components. This in turn enabled us to derive an approximation <strong>of</strong> the mean event<br />
delivery latency. For more accurate performance prediction, we proposed detailed performance<br />
models based on queueing Petri nets (QPNs). Furthermore, we discussed how different features<br />
<strong>of</strong> EBS can be reflected in performance models <strong>and</strong> introduced eleven performance modeling<br />
patterns for the most common settings <strong>and</strong> features <strong>of</strong> EBS. We used QPNs as a modeling<br />
technique to illustrate the patterns. However, several <strong>of</strong> our patterns are not (or only with high<br />
effort) convertible with st<strong>and</strong>ard QPNs.