From a124b85eb06d53ef7e45018c573b895241a0a6b0 Mon Sep 17 00:00:00 2001 From: Sergey Matveev Date: Thu, 20 Feb 2025 13:48:44 +0300 Subject: [PATCH] zstd --patch-from MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit https://www.linux.org.ru/news/opensource/17890558 https://github.com/facebook/zstd/releases/tag/v1.5.7 Только что вышел новый zstd. Узнал о существовании --patch-from штуки, которая и прежде был (но кто ж читает документацию!?). Попробовал -- действительно, делает прям патч, который можно применить относительно уже существующих данных. Я применяю bsdiff для обновления (bf0b7e0357b8bf41a874a85ab55f920a0fba7d59) своих web-серверов, ведь у них нет явного конфига и любые изменения это пересборка самого демона, который весит несколько мегабайт. Тогда как bsdiff патчи занимают десятки килобайт (если не прыжок с мажорной Go версии на мажорную произошёл). zstd делает патчи в разы большего размера, но это всё равно сильно лучше чем передавать полностью все эти бинарники. Думаю, что буду zstd использовать теперь для этих целей, просто чтобы иметь меньший зоопарк инструментов. Впрочем, под FreeBSD bsdiff идёт из коробки. Попробовал и новую --max опцию. Памяти она жрёт уйму: для двух потоков более 30GiB. Поэтому я не могу утилизировать все свои ядра на компьютере (мало памяти). Ну и медленно оно конечно работает. Для больших файлов вряд ли вариант -- уж очень долго. -- 2.50.0