ProHoster > Blog > internet haberleri > Küçük dosyaların kompakt bir şekilde depolanmasına yönelik bir sunucu olan wZD 1.0.0'ın ilk sürümü
Küçük dosyaların kompakt bir şekilde depolanmasına yönelik bir sunucu olan wZD 1.0.0'ın ilk sürümü
Mevcut ilk baskı wZD 1.0.0 — сервера для эффективного хранения большого числа файлов в компактном виде, который снаружи выглядит как обычный WebDAV-сервер. Для хранения используется модифицированная версия BoltDB. Код проекта написан на языке Go и tarafından dağıtıldı BSD lisansı altında.
Sunucu verir значительно сократить количество маленьких файлов на обычных или кластерных файловых системах с полной поддержкой блокировок. Поддерживаемый разработчиками wZD кластер хранит около 250 миллионов мелких файлов, разнесённых по 15 миллионам директорий в кластерной ФС GeyikFS.
wZD даёт возможность переместить (архивировать) содержимое директорий в архивы в формате BoltDB и затем раздавать эти файлы из этих архивов (или помещать файлы в архивы методом PUT), значительно сократив число файлов в ФС и снизив накладные расходы на хранение метаданных. Для повышения эффективности обработки больших файлов, такие файлы могут сохраняться отдельно от Bolt-архивов. Подобный подход позволяет организовать хранение огромного числа мелких файлов, не упираясь в лимит на число inode в файловой системе.
Сервер также можно использовать как NoSQL базу для данных в формате ключ/значение (с шардингом на базе структуры директорий) или для раздачи из БД предварительно сгенерированных html или json-документов. Что касается производительности, то отдача и запись данных с использованием Bolt-архивов приводит к увеличению задержки приблизительно на 20-25% при чтении и на 40-50% при записи. Чем меньше размер файла, тем меньше различия в задержках.
Hata toleransı ve yük dengeleme sağlayan çoklu sunucu;
Kullanıcı veya geliştirici için maksimum şeffaflık;
Desteklenen HTTP yöntemleri: GET, HEAD, PUT ve DELETE;
İstemci başlıkları aracılığıyla okuma ve yazma davranışının kontrolü;
Esnek sanal ana bilgisayarlar için destek;
Поддержка CRC-целостности данных при записи/чтении;
Minimum bellek tüketimi ve optimum ağ performansı ayarı için yarı dinamik arabellekler;
Отложенная упаковка данных;
В дополнение предлагается многопоточный архиватор wZA для перемещения файлов в Bolt-архивы без остановки сервиса.
Некоторые ограничения текущего выпуска: нет поддержки Multipart, метода POST, протокола HTTPS, биндингов для языков программирования, рекурсивного удаления директорий, отсутствует поддержка монтирования структуры в файловую систему через WebDAV или FUSE, файлы хранятся под одним системным пользователем. Формат хранения привязан к архитектуре и не переносим между системами Little Endian и Big Endian. Несмотря на то, что сервер wZD реализует поддержку протокола HTTP, запускать его требуется только под прикрытием реверс прокси, таких как nginx и haproxy.