From 003df51448d5047276cebceaa413f0074d3729a9 Mon Sep 17 00:00:00 2001 From: Phil Day Date: Fri, 21 Mar 2014 21:06:22 +0000 Subject: [PATCH] Update the template to ask about possible perfomance impacts Added a section to capture perfomance considertaions that should be considered at design time Change-Id: I079bcd396ac263ed14276e6fb5f4b5eec92781ad --- specs/template.rst | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/specs/template.rst b/specs/template.rst index 877957282..18e2dee25 100644 --- a/specs/template.rst +++ b/specs/template.rst @@ -100,6 +100,30 @@ Aside from the API, are there other ways a user will interact with this feature? - Does this change have an impact on python-novaclient? What does the user interface there look like? +Performance Impact +------------------ + +Describe any potential performance impact on the system, for example +how often will new code be called, and is there a major change to the calling +pattern of existing code. + +Examples of things to consider here include: +- A periodic task might look like a small addition but if it calls conductor or + another service the load is multiplied by the number of nodes in the system. + +- Scheduler filters get called once per host for every instance being created, so + any latency they introduce is linear with the size of the system. + +- A small change in a utility function or a commonly used decorator can have a + large impacts on performance. + +- Calls which result in a database queries (whether direct or via conductor) can + have a profound impact on performance when called in critical sections of the + code. + +- Will the change include any locking, and if so what considerations are there on + holding the lock? + Deployer impact ---------------