← Back to team overview

fuel-dev team mailing list archive

Re: Nailgun performance

 

As a part of our API freezing (for 5.0) we were discussing many
features which may help us improve Nailgun performance, such as
pagination and querying by separate fields. Also, there are some ways
we could improve our discovering agent and this is in active
discussion and prototyping, too. Actually, Dmitry Sokolov was working
on it, but now we still have all meeting notes and docs.

I looked through how they do it in OpenStack and found that Pecan
(proposed framework they use) still kinda unstable and doesn't solve
all problems we have, so it doesn't worth time to rewrite our API to
it for now. Still? switching to uWSGI will be a huge step forward and
will help a lot, even though code is far from being perfect in some
places.

On Mon, Mar 31, 2014 at 11:49 AM, Igor Shishkin <ishishkin@xxxxxxxxxxxx> wrote:
> In current state it's not usable for 1000 nodes :)
> But nailgun team takes care about performance and possibly it will be usable.
>
> For now we're working on uwsgi, and when it will be done nailgun will take less system resources for the same nodes amount, does less context switches and in some cases will work better and faster with higher nodes amount.
>
> As I know, nailgun team have some ideas how to make nailgun better and faster inside(for example, it does commit very often, even if it's not necessary). It's the next step, we already discussed with them.
>
> The endpoint for all of these an future changes and tests is to make our ui more responsive and be able to deploy more nodes.
> --
> Igor Shishkin
> QA Engineer
>
>
>
> On 31 Mar 2014, at 11:34 am, Roman Alekseenkov <ralekseenkov@xxxxxxxxxxxx> wrote:
>
>> Igor,
>>
>> Can you please clarify:
>>       * what does it mean for the end user? is UI going to be usable at 1000 nodes? what 20 minutes is about?
>>       * will nodes be flapping on/off or this issue is fixed now?
>> Thanks,
>> Roman
>>
>>
>> On Mon, Mar 31, 2014 at 12:28 AM, Igor Shishkin <ishishkin@xxxxxxxxxxxx> wrote:
>> Hello,
>>
>> Recently we've done nailgun performance for cases described in these blueprints:
>>
>> https://blueprints.launchpad.net/fuel/+spec/nailgun-performance-testing-deployment
>> https://blueprints.launchpad.net/fuel/+spec/nailgun-performance-testing-emulate-agents
>>
>> First of all, we tested two configurations, previously used native python HTTP-server was choked by csw and shown results was not good enough.
>> The second configuration with uwsgi application(developed by Nikolay M.) gave as understanding about internal nailgun logic problems and shown a little bit better results.
>> With uwsgi results for node registration is about 50rps for stable.
>> For brand new shiny PUT /api/nodes/agent handle - is about 400rps for stable.
>>
>> Besides, we've tested how nailgun works with 1000 nodes, results are:
>> /api/clusters/3/orchestrator/provisioning/defaults -- takes about 15 seconds for 1000 nodes
>> /api/clusters/3/orchestrator/deployment/defaults -- takes more then 20 minuts for 1000 nodes(finished with 504 from nginx
>>
>> All detailed info about these tests could be found in blueprints.
>>
>> Thanks for attention.
>> --
>> Igor Shishkin
>> QA Engineer
>>
>>
>>
>>
>> --
>> Mailing list: https://launchpad.net/~fuel-dev
>> Post to     : fuel-dev@xxxxxxxxxxxxxxxxxxx
>> Unsubscribe : https://launchpad.net/~fuel-dev
>> More help   : https://help.launchpad.net/ListHelp
>>
>
>
> --
> Mailing list: https://launchpad.net/~fuel-dev
> Post to     : fuel-dev@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~fuel-dev
> More help   : https://help.launchpad.net/ListHelp



-- 
Best regards,
Nick Markov


References