Syncthing 2.0 запускается с крупной переработкой базы данных
Syncthing 2.0, инструмент для синхронизации файлов с открытым исходным кодом, дебютирует с переходом на SQLite, обновленной системой логирования, более быстрой синхронизацией и многими другими улучшениями.
Syncthing, любимый многими энтузиастами самохостинга инструмент для синхронизации файлов по принципу «равный-равному», который позволяет поддерживать папки в синхронизации на нескольких устройствах без зависимости от центрального сервера или провайдера облачного хранения, выпустил долгожданную версию 2.0 — своё первое введение в новую серию 2.x.
Во-первых, разработчики предупреждают, что пользователи должны «ожидать некоторые недоработки и сохранять дух приключений». Тем не менее, обновление также приносит значительный набор улучшений, упорядочиваний и изменений, которые закладывают основу для будущего.
Одним из самых значительных изменений является переход от бэкенда базы данных LevelDB к SQLite. Это изменение должно упростить обслуживание базы данных и сделать её менее подверженной ошибкам, хотя процесс миграции во время первого запуска может занять некоторое время у пользователей с большими настройками.
Кроме того, журналирование было модернизировано с использованием структурированных записей, управления уровнем логов для каждой упаковки и нового уровня WARNING между INFO и ERROR. Интерфейс командной строки также был упрощен: старые однострочные длинные опции были удалены, некоторые опции были переименованы, а другие реорганизованы в подкоманды.
Что касается обслуживания, Syncthing больше не будет хранить удаленные элементы в базе данных навсегда — теперь они забываются через шесть месяцев по умолчанию, хотя это можно настроить или отключить.
Производительность также получает увеличение, поскольку обнаружение сдвинутых данных с использованием рулевого хеша было отменено, что приводит к более быстрым сканированиям и синхронизации. «Папка по умолчанию» исчезла, а множественные подключения теперь являются стандартом между устройствами версии 2, что помогает ускорить передачу метаданных и файлов.
Тем не менее, не все новости хороши для каждой платформы. Из-за проблем с кросс-компиляцией с SQLite больше не предоставляются предварительно скомпилированные бинарные файлы для определенных систем, включая DragonFly BSD, Illumos, Solaris, Linux PPC64, NetBSD и некоторые варианты OpenBSD и Windows ARM.
Под капотом находится длинный список исправлений ошибок и улучшений. Основные моменты включают лучшее обработку конфликтов при удалении файлов (где удаление теперь может быть «выигрышным» исходом), использование ключей Ed25519 для синхронизационных подключений, опцию ограничения пропускной способности локальной сети и поддержку привязки UDP-портов с QUIC. Многие улучшения также направлены на повышение эффективности использования памяти, очистку кода и упрощение процесса сборки.
Для получения полного списка всех изменений в Syncthing 2.0 см. список изменений.
Если вы думаете о том, чтобы попробовать Syncthing, наше руководство «Как настроить и использовать Syncthing для синхронизации файлов на Linux» проведет вас через все этапы, так что вы сможете быстро и без лишних хлопот начать его использовать.



Добавить комментарий