Коллеги, возвращаясь к теме записи звонков.
Имеется система высокой доступности из двух FS - основной и резервный. При падении. основного резервный подхватывает активные звонки.
Есть ли какое-то решение, как при этом организовать запись - чтобы получить файл с звуковыми данными до и после падения?
Формально - нет. Поскольку при падении fs файл будет битый с вероятностью "наверняка" (данные сбрасываются на диск ОС через буферы, размер которых никогда не кратен размеру скидываемых с каждым пакетом данных + есть заголовки, которые так же будут хаотично сдвигать эти границы и это если вы используете формат с постоянной длинной фрейма при записи, что, например, уже не соответствует mp3), соответственно, продолжать писать в этот файл - получить нечитаемый мусор на выходе. Это что касается непосредственно сбрасывания данных. Если же Вы как-то решите эту проблему (например, Вы будете писать на удаленную FS, типа GFS и иже с ними), то время закрытия протухшего дескриптора доступа к файлу распределенной файловой системой по таймауту у вас будет БОЛЬШЕ времени переподнятия FS (если все организовано хорошо), в следствие чего FS скорее всего получит от файловой системы отлуп при попытке открыть этот же файл на запись. И это только то. что сразу приходит в голову. То есть, у Вас в любом случае будет ДВА файла, мердж которых не будет тривиальной автоматизируемой задачей.
Алексей задал очень хороший вопрос: какой надежности системы Вы пытаетесь добиться? Стандартные 99,999 достигаются и без таких извращений. Если у Вас фрисвич падает часто, то это повод пересмотреть способ его использования...