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

QoS capability #19

Closed
eswdd opened this issue Oct 28, 2013 · 5 comments
Closed

QoS capability #19

eswdd opened this issue Oct 28, 2013 · 5 comments

Comments

@eswdd
Copy link
Contributor

eswdd commented Oct 28, 2013

Various requests merge into one:

  • We are looking for ways to implement a mechanism for rejecting requests that are coming for non-essential flows when we detect that a service has an out of ordinary load/response time. Impl by having a fully automatic mechanism that based on some rules to take the decision of blocking calls or to limit the number of calls based on flow priorities and/or agreed SLA’s.

Thoughts on how to implement:

Have a list of monitors (or a status aggregator) with thresholds that cause a trigger (seperate to impact on monitoring status), and then based on that execute pieces of logic to process a request at the entry to the EV (and maybe to it's Q), to allow rejection of requests with a reason.

@eswdd
Copy link
Contributor Author

eswdd commented Nov 7, 2013

Currently working in the QoS branch. Have added a capability for having ExecutionPreProcessor which will be executed both prior to enqueuing in EV queue and also post. Have added a QoSProcessor which takes a Monitor, a triggering Status and an ExecutionPreProcessor to execute when triggered. Then implementation of those requirements above become relatively simple.

TODO:

  • Construct some examples to meet the reqs above
  • New ServerFaultCodes?

@eswdd
Copy link
Contributor Author

eswdd commented Nov 18, 2013

QoS branch has now been merged into master. The Monitor has been changed to a StatusSource to enable a wider range of use cases.

@eswdd
Copy link
Contributor Author

eswdd commented Nov 25, 2013

Have broken out the client time sections to #55 as this is less urgent.

@eswdd
Copy link
Contributor Author

eswdd commented Nov 27, 2013

Gist describing how to configure this: https://gist.github.com/eswdd/7683613

@eswdd
Copy link
Contributor Author

eswdd commented Dec 13, 2013

Marking as done since the load average monitor is not critical for the framework, only for the usecase that drove the feature. Documentation will be covered in the general doco issue #41

@eswdd eswdd closed this as completed Dec 13, 2013
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant