Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |
|
Интересует мнение по проблеме |

21.04.2010, 17:31
|
|
Участник форума
Регистрация: 28.01.2008
Сообщений: 247
Провел на форуме: 205760
Репутация:
28
|
|
Интересует мнение по проблеме
Ситуация!
Есть несколько сайтов на пхп на разных хостингах, в одном из сайтов есть общие мускульная база и директория с картинками. Базу и картинки используют все сайты,
причем через мод_рерайт удалось реализовать видимость того, что картинки находятся в базе именно этого сайта.
Все работает, но есть один момент - пользователь регится на одном из сайтом и желает загрузить картинку. Соответственно, картинка должна попасть в общую базу картинок, но эта база то на другом сервере.
Как здесь быть?
Если бы все сайты были на одном хостинге, то это решалось бы через абсолютные пути в скриптах, а так ситуация другая!
|
|
|

21.04.2010, 19:26
|
|
Познающий
Регистрация: 01.03.2009
Сообщений: 85
Провел на форуме: 272527
Репутация:
19
|
|
Подобный проблем... Хочу реализовать mirror или backup сервер
|
|
|

22.04.2010, 14:06
|
|
Участник форума
Регистрация: 28.01.2008
Сообщений: 247
Провел на форуме: 205760
Репутация:
28
|
|
^_WhitE_DeMoN_^,
Что Вариант только фтп?
|
|
|

22.04.2010, 14:08
|
|
Он хакер.
Регистрация: 01.11.2008
Сообщений: 1,756
Провел на форуме: 6462214
Репутация:
3171
|
|
Ну, когда пользователь грузит файл, ты просто в фоновом режиме отправляй его на третий сервер, хотябы простым curl, или ftp, так будет попоще в некоторых смыслах.
А так, я бы создал что то проде, полноценного mirror-сервера.
//AJAX+jquery помоему может работать со сторонними доменами, так что можно прямо с браузера грузить на третий сервер. Не проверенно, но насколько я помню, такое возможно.
|
|
|

22.04.2010, 21:34
|
|
Участник форума
Регистрация: 28.01.2008
Сообщений: 247
Провел на форуме: 205760
Репутация:
28
|
|
когда пользователь грузит файл, ты просто в фоновом режиме отправляй его на третий сервер
А если такой файл уже загружен? Как система поймет это? А если нужно удалить один файл и вместо него добавить другой?
Скажем, так
PHP код:
define('FILE_DIR', 'home/html/files/');
еслибы заменить на
PHP код:
define('FILE_DIR', 'ftp://user:user@123.232.127.34/files/');
Будет ли такая конструкция работать?
Последний раз редактировалось serg-php; 23.04.2010 в 00:12..
|
|
|

23.04.2010, 00:12
|
|
Познающий
Регистрация: 27.04.2009
Сообщений: 87
Провел на форуме: 140663
Репутация:
34
|
|
Есть два подхода к проблеме.
1.Пользоваться одной базой, если юзер хочет что то загрузить, загружать именно в эту одну базу.
2. Сохранять все там где оно есть, и с некоторой периодичностью сливать все три базы во едино на всех трех серверах.
Оба подохода имеют право на существование. Первый прост в реализации, но не устойчив к пиковой нагрузке. Второй сложнее в плане реализации , но гораздо устойчивее к нагрузке, ибо база существует в трех экземплярах, получается своего рода кластер.
Так же можно постоянно заливать на все три сервера. Это будет уместно если юзеры намного чаще смотрят фотки чем их заливают, ибо в таком случае существенно снизит нагрузку, без потери реалтайма.
Какой способ использовать решать вам.
Последний раз редактировалось $now; 23.04.2010 в 00:16..
|
|
|

23.04.2010, 00:14
|
|
Участник форума
Регистрация: 28.01.2008
Сообщений: 247
Провел на форуме: 205760
Репутация:
28
|
|
Пользоваться одной базой, если юзер хочет что то загрузить, загружатьименно в эту одну базу
Так об это-то и речь идет!
Выше привел конструкцию!
|
|
|

23.04.2010, 00:20
|
|
Познающий
Регистрация: 27.04.2009
Сообщений: 87
Провел на форуме: 140663
Репутация:
34
|
|
serg-php
Файлами между серверами лучше обмениваться по http - быстрее. Я бы написал RPC службу принимающую файлы - быстро и надежно.
|
|
|

23.04.2010, 15:10
|
|
Участник форума
Регистрация: 28.01.2008
Сообщений: 247
Провел на форуме: 205760
Репутация:
28
|
|
$now,
твой вариант сильно сложен будет для меня!
А не проще ли вызвать пхп-форму с удаленного сервера
поместить ее в
<iframe height="898" allowTransparency="true" frameborder="0" scrolling="yes" style="width:90%;border:none" src="http://123.232.127.34/index.php?page=add"><a href="http://123.232.127.34/index.php?page=add">Загрузка файла</a></iframe>
|
|
|

08.05.2010, 15:27
|
|
Участник форума
Регистрация: 28.01.2008
Сообщений: 247
Провел на форуме: 205760
Репутация:
28
|
|
Может ли помочь allow_url_fopen
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|