[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Сжать данные,полученные от удаленного mysql server
kav1
Доброго дня.

Имеется server1, на котором крутится сайт, написанный на php, имеющий скрипты, содержащие подключение к удаленной БД:

$hostname = 'server2_ip_address';        // Your MySQL hostname. Usualy named as 'localhost'
$dbname = 'admin_base'; // Your database name.
$dbusername = 'admin_user'; // Your database username.
$dbpassword = 'pass'; // Your database password.

$connection = mysql_connect($hostname, $dbusername, $dbpassword);
if(!$connection) {
die("database connection failed.");
}
$connection_q = mysql_query("SET names 'utf8'");
if(!$connection_q) {
die("set names failed.");
}
$db_select = mysql_select_db($dbname, $connection);
if(!$db_select) {
die("database selection failed.");
}
$sql = "SELECT * FROM table1";
$res = mysql_query($sql);

while($row = mysql_fetch_array($res))
{
echo $row['name'].'<br>';
echo $row['surname'].'<br>';
// и так далее остальные столбцы (а они нужны ВСЕ)
}
mysql_close($connection);


В случае, если таблица table1 небольшого размера (к примеру, 10 мб), то скрипт выполняет быстро, время выполнения почти не отличается от времени, если бы база была на локалхосте, то есть там же, где и скрипты. Однако если таблица table1 имеет размер, к примеру, 2 гб, то скрипт может и не выполниться, упершись в таймаут. Менять таймаут выполнения php-скрипта, максимальный объем памяти, занимаемой скриптом , а также редактировать my.cnf на server1 возможности нет. На server2 - есть. Если выполнить этот же скрипт на server2, то все "летает".

Может ли быть "узким местом" здесь получение результата запроса-выборки (а это в моем случае ВСЕ строки таблицы table1) от server2? Если да, существует ли возможность сжимать получаемые данные или все соединение осуществлять со сжатием данных, и как это реализовать в моем случае.

p.s. server1 - это google app engine от google cloud, бесплатный тариф.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.