rob05c commented on issue #2199: Add Grove In-Place Upgrades URL: https://github.com/apache/incubator-trafficcontrol/issues/2199#issuecomment-385796967 Idea: halve the cache size during Upgrade. So, upgrading looks like: 1. Halve the cache size of the old running app 2. Bring up the new app, with the same halved cache size 3, Serialize the old app's cache and load it into the new cache 4. The new app starts listening on the same socket, and the old app is killed. 5. Once the old app dies, and its memory is free, change the new app's cache max size back to the real maximum. This results in more upstream requests than strictly necessary, but far fewer than if the new app had no cache, and had to re-request everything. And because it's an LRU, hopefully less than half, hopefully more like 15% more requests. Idea: Combine Memory Halving with previous Serialize idea. For example: Serialize the half of the LRU which is being purged on the old app, and make the old app use the serialized cache while its memory is halved. Likewise, the new app loads its half-size-cache, and also uses a disk cache for the other half, until the old app is terminated and the full memory cache size is restored, whereupon the new app loads the rest of the serialized disk cache into memory.
---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: [email protected] With regards, Apache Git Services
