RAM диск – это виртуальный диск, который создается в свободной области оперативной памяти и с точки зрения операционной системы выглядит как обычный локальный диск. Преимущество RAM Drive – очень высокая скорость чтения и записи на него (до 10 раз быстрее чем SSD, и до 2-3 раз чем NVME M.2). RAM диск можно использовать на компьютерах с большим объёмом RAM для хранения кеша и временных файлов приложений. Чаще всего RAM Drive используется для хранения кэша браузера, временных баз SQL, кэша приложений обработки графики, видео, рендеринга. При перезагрузке компьютера содержимое RAM диска обычно очищается.
В Windows 10 и 11 нет встроенных средств для создания RAM дисков, поэтому нужно использовать сторонние программы (AMD RAMDisk, ImDisk, PassMark OSFMount, StarWind RAM Disk и т.д.).
В этом примере рассмотрим open-source утилиту ImDisk Toolkit ( https://sourceforge.net/projects/imdisk-toolkit/ ). Ее преимущества:
Вы можете перенести кэш приложений на RAM диск с помощью символьный ссылок Windows . Например, чтобы хранить кэш 1С на RAM-диске:
mklink /j %USERPROFILE%AppDataLocal1C1cv8 R:UserLocal
mklink /j %USERPROFILE%AppDataRoaming1C1cv8 R:UserRoaming
Чтобы браузер Google Chrome хранил данные на RAM диске, нужно добавить в ярлык его запуска следующий параметр:
"C:Program Files (x86)GoogleChromeApplicationchrome.exe" --disk-cache-dir="R:Chrome"
В таком режиме Google Chrome будет меньше изнашивать ваш SSD накопитель.
Скорость чтения и записи на RAM диск можно оценить с помощью утилиты Crystal Disk Mark. В нашем тесте скорость чтения/записи на RAM диск в DDR4 в 2-3 раза больше чем на SSD NVME M.2 накопитель.
Windows Server вы можете создать RAM диск без использования сторонних программ. Можно выделить часть оперативной памяти сервера с помощью драйвера iSCSI.
Установите компонент iSCSI Target Server с помощью Server Manager (File and Storage Services -> File and iSCSI Services )
Откройте порты для службы iSCSI Service в Windows Defender Firewall. Можно разрешить доступ в графической консоли управления Windows Firewall или вы можете включить правила файервола с помощью PowerShell :
Set-NetFirewallRule -Name MsiScsi-in-TCP -Enabled True
Set-NetFirewallRule -Name MsiScsi-out-TCP -Enabled True
Чтобы разрешить трафик на loopback интерфейсе для iSCSI, измените в ветке реестра HKLMSoftwareMicrosoftiSCSI Target значение DWORD параметра AllowLoopBack на 1: Можно изменить значение параметра реестра из PowerShell командой:
Set-ItemProperty -Path 'HKLM:SOFTWAREMicrosoftiSCSI Target' -Name AllowLoopBack -Value 1
Затем создайте виртуальный RAM диск размером 5 Гб:
New-IscsiVirtualDisk -Path "ramdisk:testRAM.vhdx" -Size 5GB
Теперь нужно создать iSCSI таргет:
New-IscsiServerTarget -TargetName targetRAMDisk -InitiatorIds @("IPAddress:10.1.1.200")
Подключите RAM диск в созданный iSCSI таргет:
Add-IscsiVirtualDiskTargetMapping -TargetName targetRAMDisk -DevicePath "ramdisk:testRAM.vhdx"
Откройте консоль Server Manager -> Tools -> iSCSI Initiator.
На вкладке Targets укажите IP адрес вашего сервера, нажмите Quick Connect и подключите ваш iSCSI таргет.
Get-IscsiTarget | Connect-IscsiTarget
Теперь откройте консоль управления дисками ( diskmgmt.msс
), проверьте что у вас появился новый диск размером 5 Гб (это и есть ваш RAM диск). Инициализируйте, разметьте, отформатируйте диск, и назначьте ему букву диска.
Get-Disk | Where partitionstyle -eq 'raw' | Initialize-Disk -PartitionStyle MBR -PassThru | New-Partition -AssignDriveLetter -UseMaximumSize | Format-Volume -FileSystem NTFS -NewFileSystemLabel "disk2" -Confirm:$false
Теперь вы можете перенести необходимые файлы на RAM диск и перенастроить ПО на использование данного диска.
После перезагрузки сервера RAM диск удаляется (вместе со всем содержимым) и его нужно пересоздавать заново.
Но к сожалению при тесте оказалось, что производительность (iOPS) RAM диска, созданного через iSCSI таргет на Windows Server почти в 2 раза меньше, чем у RAM диска на базе ImDisk.
Zulip — программное обеспечение для реализации корпоративного чата. Разработан в 2012 году, в 2014 был…
Zookeeper — cервис-координатор, который позволяет обеспечить контроль синхронизации данных. Разработан на Java компанией Apache Software…
Zimbra — программное обеспечение для реализации почтового сервиса или, если сказать точнее, автоматизации совместной деятельности…
Zabbix — бесплатная система мониторинга. Позволяет отслеживать состояние сетевых узлов, компьютеров и серверов. Возможности: Поддержка…
YouTube — компания-владелец одноименного портала для просмотра и хранения видео. Чтобы пользоваться данным порталом достаточно…
Yota — провайдер, предоставляющий доступ к сети Интернет по беспроводной связи. Впервые, сервис начал работать…