Re[8]: Вопрос по взаимодействию Servlet и БД. Большие нагруз
От: javaque  
Дата: 26.08.07 10:24
Оценка:
2Cyberax: Вы могли бы прокомментировать следующих 2 момента в своих постах:

1)"...Точнее, я бы использовал комбинированую схему — сделал бы центральную БД, где хранятся все блобы (удобно для бэкапа и т.п.) и систему, которая распихивала бы блобы по узлам-серверам. Таким образом, очень легко обеспечить HA — упадет одна нода, так просто перераспределяем ее данные на работающие узлы."

Правильно ли я вас понял?: вы предлагаете, все же все картинки хранить в БД и при первом обращении к картинке в БД, перед тем как отобразить ее юзеру картинка пишется на диск (на винт одной из нод, определяемой, к примеру, случайным образом ) и затем, уже, с файловой система хттп-сервер отдает контент юзеру. Имхо сложно как то. Допустим надо будет определять впервый раз мы обращаемся к картинке или уже обращались (на ведь надо знать есть такая картинка или нет на файловой системе), для этого надо будет завести поле в таблице или проверять существование соответсвующего файла напрямую.

А может реализовать так: картинки сохраняются сразу на файловую систему (ФС) распределенную по нодам. А в БД хранить только различные атрибуты картинки (какому пользовалю принадлежит, в какой фотоальбом входит и т.п.) и путь до картинки на ФС (сетевой или абсолютный урл). Таким образом DAO, в методе getPics будет возращать не коллекцию бинарников, а колекцию стрингов-УРЛов до картинок

2) "Дело в том, что из memcached данные нужно передать на нужный хост — а это еще дополнительная загрузка сети. Проще иметь "персистентные кэши"."
Что есть "персистентные кэши"? Приведете плиз пару названий соотвеющих либов. Это что-то типа oscache?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.