мавр
Группа: в ухо Карма: не нужна
Сообщений: 5187 Сила слова: 1.81
|
Я не знал как правильно назвать но в общем это еще одна тема для холивара.
Вобщем читаем тут
http://mabp.kiev.ua/content/2008/05/08/autocache/
и пишем что думаем. а еще лучше оставляйте ссылки на описание какихнибудь классных алгоритмов кэширования которые можно на это натянуть
|
|
|
|
|
Записан
|
java.lang.OutOfMemoryError
|
|
|
|
CTAPbIu_MABP ↓
|
 |
|
09 Май, 2008, 03:59:54 , спустя 1 день 3 часа 34 минуты 38 секунд
|
НЕ ХУЕТА!
ХУЕТА!
|
мавр
Группа: в ухо Карма: не нужна
Сообщений: 5187 Сила слова: 1.81
|
что неужели никто не может ничего лучшего предложить?
|
|
|
|
|
Записан
|
java.lang.OutOfMemoryError
|
|
|
|
adw0rd ↓
|
 |
|
09 Май, 2008, 04:14:46 , спустя 14 минут 52 секунды
|
НЕ ХУЕТА!
ХУЕТА!
|
эдво
Группа: в ухо Карма: не нужна
Сообщений: 17633 Сила слова: 1.67
|
CTAPbIu_MABP, еще бы выделить время на прочтение твоего труда...
|
|
|
|
|
Записан
|
|
|
|
|
ghost ↓
|
 |
|
10 Май, 2008, 03:25:06 , спустя 11 часов 10 минут 20 секунд
|
НЕ ХУЕТА!
ХУЕТА!
|
без вариантов
Группа: в ухо Карма: 29
Сообщений: 876 Сила слова: 3.31
|
Но это все было бы очень хорошо если бы наш бэкэнд (я имею ввиду сайт Киевстара) не возвращал только первых 500 найденных записей на каждый запрос
хм.. Киевстара.. знакомый оператор) а ты откуда кстати? а по поводу алгоритма.. уместен вопрос если при выборе одной буквы выбирается 1000000 записей, при уточнении (+1 буква) 10000 записей, и т.д сколько пользователей одновременно смогут обратится к страничке.. и при какой посещаемости хостер пошлёт тебя куда-подальше..
что касаемо кеширования - думаю мускль с этим справится сам. не стоит, имхо, заморачиваться.
|
|
|
|
|
Записан
|
 Если ты уже два часа споришь с идиотом - скорее всего он делает тоже самое...
|
|
|
|
ghost ↓
|
 |
|
10 Май, 2008, 03:30:37 , спустя 5 минут 31 секунду
|
НЕ ХУЕТА!
ХУЕТА!
|
без вариантов
Группа: в ухо Карма: 29
Сообщений: 876 Сила слова: 3.31
|
вот только причём тут жаб-скрипт)?
|
|
|
|
|
Записан
|
 Если ты уже два часа споришь с идиотом - скорее всего он делает тоже самое...
|
|
|
|
adw0rd ↓
|
 |
|
10 Май, 2008, 03:32:59 , спустя 12 часов 2 минуты 22 секунды
|
НЕ ХУЕТА!
ХУЕТА!
|
эдво
Группа: в ухо Карма: не нужна
Сообщений: 17633 Сила слова: 1.67
|
ghost, он хочет вынести вычисления на клиент часть, чтобы к серваку не обращаться каждый раз.
|
|
|
|
|
Записан
|
|
|
|
|
vasa_c ↓
|
 |
|
10 Май, 2008, 03:45:07 , спустя 12 минут 8 секунд
|
НЕ ХУЕТА!
ХУЕТА!
|
Группа: в ухо Карма: 81
Сообщений: 2459 Сила слова: 3.29
|
Используйте не примитивные строки, а объекты String(), тогда элементы массивов будут содержать только ссылки на них.
Сначала определите до какого уровня нужно держать кэши. Нужны ли "КАР", "КАД" и т.п. или их можно восстанавливать из "КА".
Когда вы вводите "К", то в ответе сначала возвращаются слова начинающиеся на "КА" (если упорядочивание по алфавиту), потом (если КА не занял всю страницу) начинающиеся на "КБ" и т.д. Возвращайте в этом случае структуры слов на "ка", "кб"... Для последнего, вошедшего на страницу, сочетания так же желательно вернуть общее количество слов в базе. Дальше из этого склеивайте последовательность для "К".
Оптимальность зависит во многом от того сколько у вас слов и будет ли пагинатор.
|
|
|
|
|
Записан
|
|
|
|
|
ghost ↓
|
 |
|
10 Май, 2008, 04:03:53 , спустя 18 минут 46 секунд
|
НЕ ХУЕТА!
ХУЕТА!
|
без вариантов
Группа: в ухо Карма: 29
Сообщений: 876 Сила слова: 3.31
|
выгружать на клиентский комп 1000000 записей для 1-й буквы?????????
|
|
|
|
« Последнее редактирование: 10 Май, 2008, 04:08:13 от ghost »
|
Записан
|
 Если ты уже два часа споришь с идиотом - скорее всего он делает тоже самое...
|
|
|
|
vasa_c ↓
|
 |
|
10 Май, 2008, 05:37:52 , спустя 1 час 33 минуты 59 секунд
|
НЕ ХУЕТА!
ХУЕТА!
|
Группа: в ухо Карма: 81
Сообщений: 2459 Сила слова: 3.29
|
Нет. С постраничным лимитом
|
|
|
|
|
Записан
|
|
|
|
|
ghost ↓
|
 |
|
10 Май, 2008, 05:56:45 , спустя 18 минут 53 секунды
|
НЕ ХУЕТА!
ХУЕТА!
|
без вариантов
Группа: в ухо Карма: 29
Сообщений: 876 Сила слова: 3.31
|
тогда выгружая например для той же 1-й "К" с лимитом например 30 мы выгрузим 30 слов, начинающихся на "ка", что не даст абсолютно никаких преимуществ если следующая буква будет скажем "е"
|
|
|
|
|
Записан
|
 Если ты уже два часа споришь с идиотом - скорее всего он делает тоже самое...
|
|
|
|
vasa_c ↓
|
 |
|
10 Май, 2008, 05:59:16 , спустя 2 минуты 31 секунду
|
НЕ ХУЕТА!
ХУЕТА!
|
Группа: в ухо Карма: 81
Сообщений: 2459 Сила слова: 3.29
|
Мы по всякому загружая слова на "К" будем загружать слова на "КА", так почему бы сразу и не запомнить?
|
|
|
|
|
Записан
|
|
|
|
|
ghost ↓
|
 |
|
10 Май, 2008, 06:16:36 , спустя 17 минут 20 секунд
|
НЕ ХУЕТА!
ХУЕТА!
|
без вариантов
Группа: в ухо Карма: 29
Сообщений: 876 Сила слова: 3.31
|
ну может тогда имеет смысл их еще и в куках запоминать?. чтоб при обновлении запросы не дублировались.
и где-нить хранить дату последнего обновления таблицы, чтоб при необходимости куки угрохать
|
|
|
|
|
Записан
|
 Если ты уже два часа споришь с идиотом - скорее всего он делает тоже самое...
|
|
|
|
vasa_c ↓
|
 |
|
10 Май, 2008, 06:22:22 , спустя 5 минут 46 секунд
|
НЕ ХУЕТА!
ХУЕТА!
|
Группа: в ухо Карма: 81
Сообщений: 2459 Сила слова: 3.29
|
излишне
|
|
|
|
|
Записан
|
|
|
|
|
CTAPbIu_MABP ↓
|
 |
|
11 Май, 2008, 02:03:55 , спустя 19 часов 41 минуту 33 секунды
|
НЕ ХУЕТА!
ХУЕТА!
|
мавр
Группа: в ухо Карма: не нужна
Сообщений: 5187 Сила слова: 1.81
|
хм.. Киевстара.. знакомый оператор) а ты откуда кстати?
Киев)
сколько пользователей одновременно смогут обратится к страничке
Меня не интересует перформанс сервера, меня интересует перформанс клиента, если он на диалапе то качать туда-сюда 1000 записей всетакие не очень приятно. Кстати по поводу сервера там не мускул а оракл, и это не хостер а выделенная площадка.
Используйте не примитивные строки, а объекты String(), тогда элементы массивов будут содержать только ссылки на них.
с этого места поподробнее можно?
Дальше из этого склеивайте последовательность для "К"
я думаю это излишне, склеивание я пожалуй реализовывать не буду
|
|
|
|
|
Записан
|
java.lang.OutOfMemoryError
|
|
|
|
vasa_c ↓
|
 |
|
11 Май, 2008, 07:52:25 , спустя 5 часов 48 минут 30 секунд
|
НЕ ХУЕТА!
ХУЕТА!
|
Группа: в ухо Карма: 81
Сообщений: 2459 Сила слова: 3.29
|
с этого места поподробнее можно?
В теории:
var str = "Строка"; // str содержит примитивное значение строки.
var str2 = str; // Копирование всей строки в нужную переменную.
var str = new String("Строка"); // Создание объекта String в памяти и запись ссылки на него в str.
var str2 = str; // Копирование ссылки на объект. Объект остаётся один.
На практике: внутри каждого конкретного JS-движка возможно использование отложенного копирования для оптимизации первого варианта.
Так что в идеале нужно протестировать все браузеры на тему, будет ли где-нибудь выигрыш.
|
|
|
|
|
Записан
|
|
|
|
|