Недавно купил OpenVZ VPS и сравнил с выделенными серверами rm -rf
операция занимает значительно больше времени (примерно в 4-5 раз дольше). Это так, даже если в каталоге есть один большой файл, а не много маленьких файлов. У сервера есть собственный выделенный жесткий диск, и он очень быстро справляется с другими задачами. Тип файловой системы simfs
Я использую Debian 6, но также пробовал CentOs 5.5 и Debian 5. Это нормальное поведение OpenVZ VPS? Есть ли какие-нибудь настройки или другие способы удаления файлов быстрее, чем rm -rf
?
Simfs
является псевдо FS. На самом деле ваши файлы могут быть в диапазоне от EXT3 до ты-назови это. Моя ставка - EXT3 :) И очень вероятно, что на том же жестком диске есть другие процессы (других контейнеров OpenVZ), выполняющие ввод-вывод.
Нет, не существует общего способа удаления, который был бы быстрее, чем rm
. Уровень производительности, который вы видите, вызван не OpenVZ как таковым, а, скорее, вызван перегрузкой хоста OpenVZ. Это слишком распространено для хостинг-провайдеров на базе ПК Р-Виртуализация, потому что нет жестких ограничений на любой ресурс, они, как правило, работают с слишком большим количеством клиентов на одном сервере, и производительность страдает. Вот почему они такие дешевые.
Если у вас есть набор данных, который вы регулярно удаляете, иногда быстрее поместить его в другой раздел, а затем размонтировать + mkfs этот раздел. В зависимости от количества файлов это будет значительно быстрее, чем rm -rf.
Что касается производительности, возможно, стоит использовать bonnie ++ для проверки скорости создания и удаления файлов. Из любопытства я протестировал 2 миллиона операций создания / удаления, один раз на линодном VPS, а другой - на супермикро-боксе с LSI Megaraid с 6 дисковым raid10 в нем. Вот VPS:
Version 1.96 ------Sequential Create------ --------Random Create--------
Linode VPS -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--
files /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP
1000 10650 34 152365 99 348 0 10856 35 180476 99 261 0
Latency 1468ms 9929us 13035ms 2528ms 2023us 9952ms
Супермикро + БИС:
Version 1.96 ------Sequential Create------ --------Random Create--------
LSI -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--
files /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP
2000 18275 23 697591 99 1201 1 18436 23 842312 99 2356 3
Latency 1847ms 515us 9160ms 1519ms 85us 7116ms
Команда Bonnie ++:
# bonnie++ -u nobody -d . -c 10 -s 0 -r 0 -n 2000