Прошу прощения за создавшуюся неразбериху. Я просто отделил от этой темы ветку
HTTP-сервер-обменник для тайлового кеша
Теперь здесь обсуждаем беркли, а там сервер.
Модератор: Tolik
vdemidov писал(а):Прошу прощения,rokki но обратите внимания, что единственный автор программы feya, а остальные к ней имеют весьма опосредованное отношение. То что вы предлагаете нужно реализовывать самому автору. Причем это довольно сложный кусок работы. А то что обсуждали остальные можно прикрутить с минимальным вмешательством в саму программу.
rokki писал(а):vdemidov писал(а):Прошу прощения,rokki но обратите внимания, что единственный автор программы feya, а остальные к ней имеют весьма опосредованное отношение. То что вы предлагаете нужно реализовывать самому автору. Причем это довольно сложный кусок работы. А то что обсуждали остальные можно прикрутить с минимальным вмешательством в саму программу.
Уважаемый vdemidov, насколько я понял этот форум предназначен для обсуждения именно функционала программы а не стороннего софта который можно к ней прикрутить ...
полная операция получения тайла (соединение с базой, поиск и передача данных в браузер) длилась от 0.017 до 0.047 сек.
zed писал(а):Надо разобраться с Беркли + php, глянуть какое там будет быстродействие.
Vasya писал(а):полная операция получения тайла (соединение с базой, поиск и передача данных в браузер) длилась от 0.017 до 0.047 сек.
На колько я понимаю, всё это для одного тайла. А одновремено на экране находится более 10 тайлов.
Можно ли узнать время получения, допустим 20-ти тайлов ?
svp писал(а):Выгрузи в скрипт базу без данных, пожалуйста. Я затяну туда свои 25 гигов кеша и попробую покрутить их дельфей (без скриптов) на реальных выборках.
<?php
/* Переменные для соединения с базой данных */
$hostname = "localhost";
$username = "root";
$password = "";
$dbName = "TailBase";
/* Таблица MySQL, в которой хранятся данные */
$userstable = "main";
/* создать соединение */
mysql_connect($hostname,$username,$password) OR DIE("Не могу создать соединение ");
/* выбрать базу данных. Если произойдет ошибка - вывести ее */
mysql_select_db($dbName) or die(mysql_error());
/* чтение тайла в память */
$file_name = "c:/test/kh.google.com/flatfile/Image/19/trtqrqs.jpg";
$data = file_get_contents($file_name);
$data = addslashes($data);
echo "Добавляем 5 000 записей в базу данных.<br>";
$time_start = microtime(1);
for ($i=0; $i< 5000; $i++) {
$x=mt_rand(0,16000000);
$y=mt_rand(0,16000000);
$ver=mt_rand(0,255);
$z=mt_rand(0,24);
$mt=mt_rand(0,255);
/* составить запрос для вставки информации о клиенте в таблицу */
$query = "INSERT INTO $userstable (Ver,X,Y,Z,MapT,Data) VALUES ($ver,$x,$y,$z,$mt,'$data')";
/* Выполнить запрос. Если произойдет ошибка - вывести ее. */
mysql_query($query) or die(mysql_error());
}
$time_end = microtime(1);
$time = $time_end - $time_start;
echo "Время операции: $time секунд\n";
echo "<br>";
/* Закрыть соединение */
mysql_close();
?>
<?php
$time_start = microtime(1);
/* Переменные для соединения с базой данных */
$hostname = "localhost";
$username = "root";
$password = "";
$dbName = "TailBase";
/* Таблица MySQL, в которой хранятся данные */
$userstable = "main";
/* создать соединение */
mysql_connect($hostname,$username,$password) OR DIE("Не могу создать соединение ");
/* выбрать базу данных. Если произойдет ошибка - вывести ее */
mysql_select_db($dbName) or die(mysql_error());
$LookX =0;
$LookY =0;
$LookZ =1;
$LookMapT =1;
echo "Поиск по базе данных: X=$LookX and Y=$LookY and Z=$LookZ and MapT=$LookMapT<BR>";
$query = "SELECT * FROM $userstable WHERE X=$LookX and Y=$LookY and Z=$LookZ and MapT=$LookMapT";
/* Выполнить запрос. Если произойдет ошибка - вывести ее. */
$res = mysql_query($query) or die(mysql_error());
/* Как много нашлось таких */
$number = mysql_num_rows($res);
/* Напечатать всех в красивом виде*/
if ($number == 0) {
echo "Нет данных в базе<BR>";
} else {
echo "В базе: $number записи<BR>";
/* Получать по одной строке из таблицы в массив $row, пока строки не кончатся */
while ($row=mysql_fetch_array($res)) {
echo "X=".$row[X]."<BR>";
echo "Y= ".$row[Y]."<BR>";
echo "Z= ".$row[Y]."<BR>";
echo "MapT= ".$row[MapT]."<BR>";
echo "Data= ".$row[Data]."<BR>";
echo "<BR><BR>";
}
echo "</CENTER>";
}
$time_end = microtime(1);
$time = $time_end - $time_start;
echo "Время запроса: $time секунд\n";
/* Закрыть соединение */
mysql_close();
?>
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 20