Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Benchmark publishing and running events #89

Merged
merged 1 commit into from
Jun 9, 2015
Merged

Conversation

jcredding
Copy link
Member

This updates the benchmark report to also time publishing events
and processing the events. This is so we can be aware of how
changes alter the performance of Qs.

When benchmarking processing events, this is the time it takes for
an event to be dispatched to a queue and then handled by that
queue. This is done the same way that running jobs is benchmarked.
A common IO pipe is written to when a job/event is completed in
a separate process. The report process listens to the IO pipe and
waits for every job/event to complete.

@kellyredding - Ready for review.

This updates the benchmark report to also time publishing events
and processing the events. This is so we can be aware of how
changes alter the performance of Qs.

When benchmarking processing events, this is the time it takes for
an event to be dispatched to a queue and then handled by that
queue. This is done the same way that running jobs is benchmarked.
A common IO pipe is written to when a job/event is completed in
a separate process. The report process listens to the IO pipe and
waits for every job/event to complete.
@kellyredding
Copy link
Member

@jcredding like on the system tests PR, this looks great and I'm glad we have it 👎

jcredding added a commit that referenced this pull request Jun 9, 2015
Benchmark publishing and running events
@jcredding jcredding merged commit bbe3644 into master Jun 9, 2015
@jcredding jcredding deleted the jcr-benchmark-events branch June 9, 2015 20:40
jcredding added a commit that referenced this pull request Aug 4, 2015
* Add `Event` (#67)
* Add `EventHandler` mixin (#68)
* Hotfix: Updating benchmark report to set new baseline (a3a88f5)
* Add `dispatcher_queue` to Qs, setup for publishing events (#69)
* Add payload type to jobs (#70)
* Update `Event` to set a custom payload type (#73)
* Add `Qs.publish` (#74)
* Add `event` to `Queue` (#75)
* Split `TestHelpers` (#72)
* Store queues as event subscribers in redis (#76)
* Add `Payload` module for serializing and deserializing (#78)
* Add `Message`, setup `Event` being a kind of `Message` (#79)
* Add `MessageHandler` (#80)
* Update runners to expect a message (#81)
* Update `Event` to be a kind of `Message` (#82)
* Add optional publisher for events (#77)
* Rename `RedisItem` to `QueueItem` (#83)
* Pass params via options when building jobs and events (#84)
* Add separate logging for jobs and events (#85)
* Add `DispatchJobHandler` (#86)
* Update dispatcher queue (#87)
* Benchmark publishing and running events (#89)
* Add daemon event handling system tests (#88)
* Add subscription system tests, fix sync (#90)

/cc @kellyredding
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants