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

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

72 CHAPTER 4. PERFORMANCE ENGINEERING OF EVENT-BASED SYSTEMS<br />

Each Consumer is reflected by an own place. Available resources <strong>of</strong> the consumer are represented<br />

by Ready tokens which are stored at the consumer place. The pull attempt <strong>of</strong> the<br />

Consumer is implemented by transistion T1 : if an <strong>Event</strong> is available at the Load Balancer <strong>and</strong><br />

the Consumer is ready (symbolized by a Ready token) to process the next <strong>Event</strong> token, the<br />

<strong>Event</strong> is forwarded to the Consumer. If multiple Consumers are ready, an <strong>Event</strong> is r<strong>and</strong>omly<br />

assigned to one Consumer. After an <strong>Event</strong> is processed by the Consumer, the resources are<br />

released by creating a Ready token, which is done by transition T2. The number <strong>of</strong> available<br />

resources <strong>of</strong> a Consumer can be modeled by the initial number <strong>of</strong> Ready tokens at a Consumer<br />

place.<br />

QPN Definition<br />

Places:<br />

Place Type Description<br />

Load Balancer S Receives incoming events.<br />

Consumer i S Consumes incoming events. One place for each <strong>of</strong> the n<br />

consumers.<br />

Colors:<br />

Color<br />

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

Ready<br />

Description<br />

Represents the published event.<br />

Represents that the Consumer is ready to process an <strong>Event</strong>.<br />

Init No. <strong>of</strong> Colors:<br />

Color Place Count Description<br />

Ready Consumer i j Specifies for each Consumer i the number <strong>of</strong> <strong>Event</strong>s,<br />

which can be processed in parallel.<br />

Transitions:<br />

Id Input Output FW Description<br />

T1 1 <strong>Event</strong> (Load Balancer) 1 <strong>Event</strong> (Consumer i) 1 Forwards event<br />

1 Ready (Consumer i)<br />

T2 1 <strong>Event</strong> (Consumer i) 1 Ready (Consumer i) 1 After an event is processed,<br />

the resources<br />

are released.<br />

Note: n is the count <strong>of</strong> Consumers.

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

Saved successfully!

Ooh no, something went wrong!