У нас есть приложение, которое делает много регистрации. Среда, к которой мы подключаемся, - это SSD-накопители SLC, однако мы начинаем видеть некоторые сбои в этой области. Мы могли бы отключить регистрацию (у нас есть), иметь уровни журналирования (у нас есть), однако иногда инженер включает регистрацию, чтобы диагностировать ошибку и забывает отключить ее, что приводит к отказу SSD через некоторое время.
Глядя на код журнала, мы сохраняем запись журнала в очереди и каждые 5 секунд перебираем коллекцию и используем File.AppendAllText для записи строки в файл.
Согласно MSDN это пишет в файл, а затем закрывает его.
Какой режим лучше использовать для достижения той же функциональности, но для предотвращения (или уменьшения) повреждения SSD?
Было бы лучше открыть FileStream при запуске программного обеспечения, записать в поток во время использования и закрыть до завершения работы программного обеспечения? Как это облегчило бы ситуацию на уровне диска? Какие процессы задействованы и как это лучше, чем открывать файл и закрывать его немедленно. Использование FileStream «лучше», но перед внесением изменений мне нужно более конкретное обоснование.
Может быть, есть лучший способ, который мы не рассмотрели.