diff .hgtags @ 5991:435ee290c2e1

Upstream hash: speedup consistent hash init. Repeatedly calling ngx_http_upstream_add_chash_point() to create the points array in sorted order, is O(n^2) to the total weight. This can cause nginx startup and reconfigure to be substantially delayed. For example, when total weight is 1000, startup takes 5s on a modern laptop. Replace this with a linear insertion followed by QuickSort and duplicates removal. Startup for total weight of 1000 reduces to 40ms. Based on a patch by Wai Keen Woon.
author Roman Arutyunyan <arut@nginx.com>
date Mon, 02 Mar 2015 18:41:29 +0300
parents 05bc5d5d1c5d
children 166c2c19c522
line wrap: on
line diff