Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Параллелизация процессов в ПХП 
V
    Опции темы
animegirl
Дата 25.7.2011, 02:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Незнайка на Марсе
**


Профиль
Группа: Участник
Сообщений: 326
Регистрация: 24.7.2011

Репутация: нет
Всего: нет



Есть ли возможность одновременно выслать запросы на разные MySQL, да так, что бы второй, не ждал пока придёт ответ от первого?
Код

<?
$server1 = mysql_connect("55.55.55.55","a","b");
$server2 = mysql_connect("66.66.66.66","c","d");

mysql_db_query("db1","SELECT ...",$server1);
mysql_db_query("db2","SELECT ...",$server2);

...somethink to do...
?>



--------------------
Скажи миру - НЯ!
PM   Вверх
CruorVult
Дата 25.7.2011, 11:25 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 868
Регистрация: 24.9.2008
Где: г.Киев, Украина

Репутация: нет
Всего: 28



http://www.ibm.com/developerworks/ru/libra...task/index.html

Добавлено через 1 минуту и 47 секунд
либо через fsockopen

Код

function http_request($url, $params = null) {
    $data = "";
    if($params) {
        if(is_array($params))
            $data = http_build_query($params);    
        else
            $data = $params;    
    }        
    $parts = parse_url($url);        
    if (!$fp = fsockopen($parts['host'], isset($parts['port']) ? $parts['port'] : 80))      
        return false;             
     
    fwrite($fp, "POST " . (!empty($parts['path']) ? $parts['path'] : '/') . " HTTP/1.1\r\n");
    fwrite($fp, "Host: " . $parts['host'] . "\r\n");
    fwrite($fp, "Content-Type: application/x-www-form-urlencoded\r\n");
    fwrite($fp, "Cookie: " . $_SERVER["HTTP_COOKIE"] . "\r\n");
    fwrite($fp, "Content-Length: " . strlen($data) . "\r\n");
    fwrite($fp, "Connection: Close\r\n\r\n");
    fwrite($fp, $data);       
    fclose($fp);     
    return true;
}


Добавлено через 3 минуты и 12 секунд
З.Ы. Для профи вы погарячились smile 
PM MAIL Skype   Вверх
solenko
Дата 25.7.2011, 14:10 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1473
Регистрация: 15.1.2006
Где: Украина

Репутация: 2
Всего: 67



CruorVult, вы предлагаете реалзовывать протокол mysql, или получать данне через еще один API слой? 


--------------------
Ла-ла-ла-ла
Заметьте, нет официального подтверждения, что это не просто четыре слога.
PM MAIL WWW ICQ Skype   Вверх
solenko
Дата 25.7.2011, 14:25 (ссылка) |    (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1473
Регистрация: 15.1.2006
Где: Украина

Репутация: 2
Всего: 67



animegirl, посмотрите на mysqli_query c result_mode = MYSQLI_ASYNC


--------------------
Ла-ла-ла-ла
Заметьте, нет официального подтверждения, что это не просто четыре слога.
PM MAIL WWW ICQ Skype   Вверх
CruorVult
Дата 25.7.2011, 14:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 868
Регистрация: 24.9.2008
Где: г.Киев, Украина

Репутация: нет
Всего: 28



Цитата(solenko @  25.7.2011,  14:10 Найти цитируемый пост)
получать данне через еще один API слой


просто выполнять параллельно http запросы на сервис, передавая разные параметры(имя БД), время выполнения которых будет составлять максимальное  время взаимодействия с какой-то БД.

fsockopen скорее не подойдет для данного случая, т.к. нету возможности перехвата потока, лучше 1-й вариант.
PM MAIL Skype   Вверх
solenko
Дата 25.7.2011, 15:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1473
Регистрация: 15.1.2006
Где: Украина

Репутация: 2
Всего: 67



http очень сложно назвать производительным решением. Лучше все-таки использовать стандартные средства, которые, благо, существуют.


--------------------
Ла-ла-ла-ла
Заметьте, нет официального подтверждения, что это не просто четыре слога.
PM MAIL WWW ICQ Skype   Вверх
CruorVult
Дата 25.7.2011, 15:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 868
Регистрация: 24.9.2008
Где: г.Киев, Украина

Репутация: нет
Всего: 28



ну в принципе согласен! Просто как-то не доводилось работать с MYSQLI_ASYNC
PM MAIL Skype   Вверх
baldina
Дата 25.7.2011, 16:16 (ссылка)    | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3433
Регистрация: 5.12.2007
Где: Москва

Репутация: 1
Всего: 101



Цитата(animegirl @  25.7.2011,  02:00 Найти цитируемый пост)
Есть ли возможность одновременно выслать запросы на разные MySQL, да так, что бы второй, не ждал пока придёт ответ от первого?

можно вынести на клиента, используя параллельные ajax запросы
PM MAIL   Вверх
animegirl
Дата 25.7.2011, 16:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Незнайка на Марсе
**


Профиль
Группа: Участник
Сообщений: 326
Регистрация: 24.7.2011

Репутация: нет
Всего: нет



Цитата(baldina @  25.7.2011,  16:16 Найти цитируемый пост)
можно вынести на клиента, используя параллельные ajax запросы

Нельзя, данные надо будет дальше обрабатывать, до передачи юзеру
solenko, а можно по подробней?  smile 


--------------------
Скажи миру - НЯ!
PM   Вверх
baldina
Дата 25.7.2011, 17:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3433
Регистрация: 5.12.2007
Где: Москва

Репутация: 1
Всего: 101



в манах пример. http://www.php.net/manual/en/mysqli.poll.php
структурно устроено как и в любых низкоуровневых реализациях асинхронных взаимодействий
PM MAIL   Вверх
Sentox
Дата 25.7.2011, 22:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


как то так
**


Профиль
Группа: Участник
Сообщений: 392
Регистрация: 27.1.2009
Где: Зимбабве

Репутация: нет
Всего: 7



Цитата(animegirl @ 25.7.2011,  16:44)
Цитата(baldina @  25.7.2011,  16:16 Найти цитируемый пост)
можно вынести на клиента, используя параллельные ajax запросы

Нельзя, данные надо будет дальше обрабатывать, до передачи юзеру
solenko, а можно по подробней?  smile

В принципе как вариант используется для UC своей цепочкой обязанностей при передаче ajax - ом (это кстати довольно реализовывается легко (то есть юзверь получит те данные которые ему нужны), но есть один минус требуется упорядочивание ajax запросов по их приоритетам и создание алгоритма очереди с распределением и сбросами (благо на 30 % это уже в jquery сделано)) но это ИМХО извращение и дополнительная нагрузка на разработку архитектуры клиента.

Вопрос к другим участникам, если в требованиях - ограничениях нельзя использовать lite версию mysql?

Это сообщение отредактировал(а) Sentox - 25.7.2011, 22:54
PM MAIL   Вверх
animegirl
Дата 26.7.2011, 00:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Незнайка на Марсе
**


Профиль
Группа: Участник
Сообщений: 326
Регистрация: 24.7.2011

Репутация: нет
Всего: нет



Цитата(Sentox @  25.7.2011,  22:54 Найти цитируемый пост)
В принципе как вариант используется для UC своей цепочкой обязанностей при передаче ajax - ом (это кстати довольно реализовывается легко (то есть юзверь получит те данные которые ему нужны), но есть один минус требуется упорядочивание ajax запросов по их приоритетам и создание алгоритма очереди с распределением и сбросами (благо на 30 % это уже в jquery сделано)) но это ИМХО извращение и дополнительная нагрузка на разработку архитектуры клиента.

Ещё раз: Аякс - нельзя.


Цитата(Sentox @  25.7.2011,  22:54 Найти цитируемый пост)
Вопрос к другим участникам, если в требованиях - ограничениях нельзя использовать lite версию mysql?

Версия самая обыкновенная


--------------------
Скажи миру - НЯ!
PM   Вверх
gcc
Дата 2.8.2011, 21:43 (ссылка)    | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Агент алкомафии
****


Профиль
Группа: Участник
Сообщений: 2691
Регистрация: 25.4.2008
Где: %&й

Репутация: нет
Всего: 17



как вариант,может быть еще поможет PRADO:
http://www.xisc.com/
компонентный событийно-ориентированный инструмент для Web-программирования на PHP 5
PM WWW ICQ Skype GTalk Jabber   Вверх
makklovskiy
Дата 19.8.2011, 17:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 19
Регистрация: 14.1.2010

Репутация: -1
Всего: -2



а мне что то эти примеры сомнительны...
PM MAIL   Вверх
animegirl
Дата 3.9.2011, 22:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Незнайка на Марсе
**


Профиль
Группа: Участник
Сообщений: 326
Регистрация: 24.7.2011

Репутация: нет
Всего: нет



makklovskiy, Мои примеры или примеры решения?


--------------------
Скажи миру - НЯ!
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса

Внимание: данный раздел предназначен для решения сложных, нестандартных задач.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Для профи | Следующая тема »


 




[ Время генерации скрипта: 0.0882 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.