Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: проблема с загрузкой контента из БД с другого сервера
 
 автор: prosaic   (21.03.2008 в 16:34)   письмо автору
 
 

Добрый день.

Код загружает данные из БД, которая находится на другом сервере.
Проблема в том, что сайт подвисает и страница грузится долго.
Этот же код есть на сервере где хранится БД и с загрузкой данных нет.

Подскажите в чем можеть быть проблема.

   
 
 автор: Antohins   (21.03.2008 в 17:38)   письмо автору
 
   для: prosaic   (21.03.2008 в 16:34)
 

Каким способом получаете контент с др. страницы?

   
 
 автор: prosaic   (21.03.2008 в 18:23)   письмо автору
 
   для: Antohins   (21.03.2008 в 17:38)
 

подключаюсь к БД

$dbhost="ip-сервера";
$dblogin="логин";
$dbpass="пароль";
$dbname="имя БД";
$connect=mysql_connect ($dbhost,$dblogin,$dbpass);
$request=mysql_select_db ($dbname);

дальше стандартные запросы MySQL.

   
 
 автор: Antohins   (21.03.2008 в 18:29)   письмо автору
 
   для: prosaic   (21.03.2008 в 18:23)
 

Если бы мне нужна была инфа с др.сервера я бы сделал так:

1.php - скрипт берущий инфу из бд и выводящий примерно в таком виде:
<ff>БЛА БЛА БЛА БЛА БЛА БЛА БЛА<ff>
2.php - скрипт, который делает file_get_content(http://blabla/1.php) и через регулярные выражения вырезает все что находится между <ff> и <ff>
далее вырезает, оформляет, короче юзает как хочет по полной наГРАбленное.

всё.

   
 
 автор: prosaic   (21.03.2008 в 18:32)   письмо автору
 
   для: Antohins   (21.03.2008 в 18:29)
 

не совсем то, что нужно по задумке.
у меня есть доступ к обоим серверам. но БД на одном.
поэтому второй сайт находящийся на втором сервере делает запрос (подключаясь к БД первого сервера) для получения контента.
непонятно почему всё зависает и грузится очень медленно. ведь сам запрос с подключением занимает секунды.

   
 
 автор: Antohins   (21.03.2008 в 18:35)   письмо автору
 
   для: prosaic   (21.03.2008 в 18:32)
 

Может у вас не разрешены некоторые функции на сервере?

второй сайт находящийся на втором сервере делает запрос (подключаясь к БД первого сервера) для получения контента - вот с этим я не знаком абсолютно.

Попробуйте мой вариант.

   
 
 автор: prosaic   (21.03.2008 в 18:41)   письмо автору
 
   для: Antohins   (21.03.2008 в 18:35)
 

спасибо. но он не подходит.

   
 
 автор: prosaic   (24.03.2008 в 11:22)   письмо автору
 
   для: prosaic   (21.03.2008 в 18:41)
 

проблема актуальна. есть у кого-нибудь инфа?

   
 
 автор: Antohins   (24.03.2008 в 11:28)   письмо автору
 
   для: prosaic   (24.03.2008 в 11:22)
 

А почему не подходит мой способ?
Просто сделать его немного универсальнее. Например шлешь запрос на http://server2.ru/index.php?table=users&id=8

и пусть она выводит юзера с id = 8

Конечно же подумать над защитой нужно.

   
 
 автор: prosaic   (24.03.2008 в 12:30)   письмо автору
 
   для: Antohins   (24.03.2008 в 11:28)
 

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

и если я Вас понял, то Ваш способ не подходит. я просто хочу узнать, у тех людей, которые сталкивались с подобной проблемой, как ее решить. проблема: подвисает сайт когда код берет данные путем запроса к БД, находящейся на другом сервере.

   
 
 автор: prosaic   (25.03.2008 в 11:58)   письмо автору
 
   для: prosaic   (24.03.2008 в 12:30)
 

тема актуальна

   
 
 автор: mihdan   (25.03.2008 в 14:29)   письмо автору
 
   для: prosaic   (25.03.2008 в 11:58)
 

Сделайте кэширование, зачем вам по несколько раз получать данные с другого сервера.

Один раз получите данные сохраните их в файл
При повторном запросе проверяйте если файл на сервере, если нет, то уж тогда тяните его с друго сервера.
Так проще и нагрузки на сервер нет

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования