Опыт с CVS в кластерной файловой системе

Вы будете видеть больше проблем со встроенным микропрограммным обеспечением и драйверами для аппаратных средств, чем Вы будете на самом деле видеть физические отказы (по крайней мере, рано во время жизни устройства), поэтому удостоверьтесь, что это актуально и протестировано сначала.

Диски SATA обычно будут первыми для движения. SAS имеет тенденцию быть более надежным. (Хотя я услышал хорошие вещи о последних дисках SATA 2),

4
задан 19 May 2009 в 12:15
3 ответа

Лучший ответ на Ваши проблемы масштабирования VCS является тем, который Вы дали в своем вопросе. Не используйте CVS. Я действительно соглашаюсь с Вами, хотя, SVN является решением никаких проблем. Существует много хорошо масштабируемых систем управления версиями там (По необходимости, Рациональный примеры).

Я думаю в целом, хотя Вы собираетесь найти, что кластерные файловые системы не собираются обеспечивать производительность, которую Вы ищете, их главными целями является доступность. Если необходимо выбрать какой-либо кластеризованный FS затем, я думаю, что необходимо изучить что-то как http://oss.oracle.com/projects/ocfs/, который создается для высокопроизводительной кластеризации базы данных. Высокопроизводительные базы данных, тем не менее, не полагаются на скопление или подобные механизмы захвата файла, как CVS делает, это просто не масштабируется. Необходимо было бы добавить своего рода транзакционного распределенного менеджера блокировок. CVS и высокая производительность просто не помещаются в ту же приблизительную оценку.

У меня действительно есть чувство, хотя это, Вы не пытаетесь масштабировать свою систему управления исходным кодом и Вы пытаетесь использовать CVS для чего-то специализированного. В этом случае я предложил бы кодировать непосредственно к RCS и прокрутить Вашего собственного менеджера блокировок. Я избежал бы сложности и дорогой из распределенных или кластерных файловых систем и сконцентрировался бы на создании более умного приложения с помощью своего рода распределенного подхода блока хеша.

3
ответ дан 3 December 2019 в 04:18

Промежуточный Ваш san и машины рабочий CVS Вы испытываете необходимость в некоторой форме сетевой файловой системы (по крайней мере, я не могу думать ни о какой файловой системе, которая справляется с параллельным доступом к тому же устройству, и я предполагаю, что SAN Вы имеете в виду устройство хранения данных, представленное серверу/ОС как устройство хранения). Несколько лет назад были обсуждением CVS по NFS, и Вы собираетесь потенциально столкнуться с теми же/подобными видами проблем с любыми сетевыми файловыми системами.

  • Вы хотите сетевую файловую систему, которая обрабатывает блокировки хорошо
  • Идеально Вы также хотите сетевую файловую систему, которая обрабатывает когерентность кэш-памяти файловой системы между Вашим CVS frontends

Теперь, я не знаю точно, как SourceForge структурирована для CVS, однако, мое предположение было бы чем-то вроде:

  • Небольшое число поля, который позволяет фиксации CVS, это возможно делится таким способом, которым проект связан с одним полем/файловой системой, где они делают свои фиксации.
  • Состояние от полей фиксации CVS затем копируется в большое количество полей/файловых систем, которые они баланс загрузки и обрабатывает обработки отказа для анонимных чтений CVS, CVS-> просмотр HTML, и т.д.

(Обоснование позади моих предположений состоит в том, что анонимный CVS при случае служил состоянию CVS, которое было несколькими старыми часами, и у меня есть неопределенное воспоминание о разговоре с sf полями фиксации CVS, при случае проверяющими очень медленно).

0
ответ дан 3 December 2019 в 04:18
  • 1
    Существуют кластерные файловые системы, которые позволяют такие вещи (см. OCFS, GFS и т.п.). Я знаю, что это работает в целом, но я ищу отчеты об опыте. –  Daniel Schneller 28 May 2009 в 18:19

У меня действительно нет ответа, но ради содействия обсуждению...

Я предполагаю, что CVS использует некоторую транзакционную базу данных в качестве запоминающего устройства (я знаю, что это - то, как SVN делает это). Если это так, мне кажется, что несколько устройств записи на тех файловых структурах действительно не были бы безопасны. Разве лучше не приблизился бы для создания уровня абстракции в интерфейсе БД? Например, используйте сервис SQL вместо локального BDB/LDBM или независимо от того, что это может быть (предположение, что CVS поддерживает такую вещь).

-2
ответ дан 3 December 2019 в 04:18
  • 1
    CVS является оберткой по набору RCS, v файлы - ничто транзакционное об этом... Конечно, если you' ре, восстанавливающее репозиторий с разрушенной системы, that' s не обязательно плохие новости - но это означает Daniel can' t рассчитывают на справку от CVS для его repo' s целостность –  Mike G. 29 May 2009 в 22:06