Производительность md5hash с большими файлами для проверки файлов в общей папке - PullRequest
0 голосов
/ 21 мая 2010

Мое приложение Windows создает .NET в Windows XP, копирует файлы pdfs в общую сетевую папку на сервере Windows 2003.

Пользователь с правами администратора в Win2003 обнаруживает некоторые поврежденные файлы PDF в этой общей папке.

Я хочу проверить, скопирован ли файл прямо в общую папку

Андре Крижен говорит, что лучший способ - создать MD5Hash-файл оригинального файла. Когда файл скопирован, проверьте файл MD5Hash скопированного с оригинальным.

У меня большие PDF-файлы.

применить хэш md5 для большого файла, есть проблемы с производительностью?

Если я только проверю (без создания хэша md5) Длина файлов (исходных и скопированных)?

Ответы [ 3 ]

3 голосов
/ 21 мая 2010

Установите средство проверки MD5 на каждом сервере и сделайте его локальным процессом, чтобы вам не приходилось использовать пропускную способность для повторной проверки хэша.

вы можете использовать MD5sums в качестве параметра командной строки или создать собственное приложение для рабочего.

1 голос
/ 21 мая 2010

Вы можете проверить длину файлов, чтобы быстро определить, отличаются ли они, но одинаковая длина не говорит о том, что содержимое файлов идентично.

Чтобы действительно определить, идентичны ли файлы или нет, вы должны сравнить каждый байт в файлах. Повторная отправка файлов только для сравнения, конечно, нецелесообразна, но отправка MD5-хеша файла:

Если вы хотите сравнить файлы, которые вы должны прочитать целиком, нет никакого способа обойти это. Хэш MD5 по крайней мере экономит много сетевого трафика.

1 голос
/ 21 мая 2010

Я думаю, что проверка MD5 должна быть отдельным приложением, работающим на сервере, чтобы вашему приложению не нужно было открывать копию в общей папке для проверки MD5.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...