Мы обнаружили узкое место на нашем сервере (размещенном на жестком диске), связанное с функцией /dev/random . Мы хотим, чтобы ОС использовала /dev/random которая находится на нашем SSD-накопителе, а не на HDD.

Как заставить сервер использовать /dev/random на другом диске, кроме ОС? это будут символические ссылки или жесткие ссылки?

Буду признателен за любые советы о том, как это сделать (использовать случайным образом с другого подключенного сервера).

Спасибо!

редактировать Благодаря Скотту за терпение:]

СОЛР и ОС работают на HDD. У нас есть индекс SOLR для тома SSD. Когда мы индексируем файлы через java, он работает на жестком диске и вызывает много записей на диск, поэтому мы хотим перенести его на SSD (продиктовано, что не читается).

2 ответа2

6

/dev/random - это не файл, который можно перемещать, поскольку он вообще не является "файлом". /dev/ - это фактически "пустая" папка, "файлы" внутри нее помещаются ядром и существуют только в памяти. Когда вы переходите к "чтению" или "записи" в эти файлы, ядро будет перехватывать вызов и вообще никогда не будет касаться жесткого диска.

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

Например, если вам не нужны криптографически сильные случайные числа, то /dev/urandom намного, намного быстрее, но это также более "предсказуемо", чем /dev/random (но не так, как это важно для вас, см. Редактирование в дно). Если вы объясните, что вы используете /dev/random мы можем помочь вам решить, будет ли /dev/urandom хорошим выбором или нет.


Изменить: Проведя еще несколько исследований, я обнаружил, что /dev/urandom можно использовать и для криптографических целей, и он будет намного быстрее.

2

В дополнение к ответу @ ScottChamberlain устройство /dev/random служит генератором случайных чисел. Каждый раз, когда вы читаете с него, ваш компьютер пытается генерировать новые случайные числа. Это требует процессорного времени. Узкое место, которое вы видите, скорее всего, связано с этим фактом. Вы не можете удалить его, если не используете другой (более легкий) способ получения случайных чисел.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .