Using apache bench (ab) on my home computer, using 256 concurrent, keep-alive requests over 50000 requests this server was able to serve over 4500(!) pages a second, and each page with a max latency of 0.15 ms. Yes i told you it was FAST didn't I?
Проблема в том, что такая сортировка зачастую вовсе не нужна для всей выборки — хочется просто достать случайный элемент из определённого множества, к тому же ORDER BY RAND() достаточно медленный выход из ситуации. Можно попробовать делать выборку основываясь на числе элементов в целом и функции RAND():
SELECT name FROM my_table JOIN (
SELECT CEIL(RAND() * (
SELECT MAX(id) FROM my_table
)) AS randomID
) AS random_table ON random_table.randomID=my_table.ID
На 50000 рядов такой запрос занимает 0.00086 сек… Сравните с 1.56356 сек обычного варианта ORDER BY RAND().
ну тогда теряется «тот_самый_глубокий_смысл» слов protected и private. тут php больше похож на java. но (!), сдаётся мне, что «заставить работать все наше дерево классов, как бы в одной плоскости последнего чайлда» можно эмулировать средствами php (чего ими тока нельзя сделать...)
некоторые песни кривоваты (например: Red Hot Chilly Peppers “Under the Bridge”), некоторые - обрезанные (Metallica “Enter Sandman”). могу поделиться своей коллекцией gtp, около 1 Гб (там точно есть полная версия)
www.chabotc.com/phpsocketdaemon/
$daemon = new socketDaemon();
$server = $daemon->create_server('httpdServer', 'httpdServerClient', 0, 2001);
$daemon->process();
Performance:
Using apache bench (ab) on my home computer, using 256 concurrent, keep-alive requests over 50000 requests this server was able to serve over 4500(!) pages a second, and each page with a max latency of 0.15 ms. Yes i told you it was FAST didn't I?
ибо на джаве быдлокодеров нет по-дефолту…
SELECT * FROM my_table ORDER BY RAND()
Проблема в том, что такая сортировка зачастую вовсе не нужна для всей выборки — хочется просто достать случайный элемент из определённого множества, к тому же ORDER BY RAND() достаточно медленный выход из ситуации. Можно попробовать делать выборку основываясь на числе элементов в целом и функции RAND():
SELECT name FROM my_table JOIN (
SELECT CEIL(RAND() * (
SELECT MAX(id) FROM my_table
)) AS randomID
) AS random_table ON random_table.randomID=my_table.ID
На 50000 рядов такой запрос занимает 0.00086 сек… Сравните с 1.56356 сек обычного варианта ORDER BY RAND().
специально для таких как вы созданы вот такие вот описания www.php.net/manual/en/language.oop5.visibility.php
:)
что дальше? они начнуть сниферать pop3 и smtp?
еще раз спасибо!
зы.у меня отрицательная карма, потому и вопросы..
как минимум в варианте (2) и (5) "тот самый аккорд" (я надеюсь вы понимаете о чём я) звучит так как надо!
и снова респект! :)