Второй и третий вариант отпадает, потому что при выводе фоток делает упор на фотках тех людей, которые больше всего голосовали.
Т.е. фотки активных людей выводятся чаще, чем неактивных.
Приложение, суть которого оценивать фотки других пользователей.
Все фотки показываются по очереди.
Нужно показывать только те фотки, которые пользователь не оценивал.
Таблица, в которой лежат оценки разрастается очень быстро. Уже более миллиона записей.
Соответственно ваши варианты не подходят.
1я таблица — фотки
2я таблица — какой юзер за какую фотку голосовал
SELECT * FROM photos WHERE
photo_id NOT IN( SELECT photo_id FROM votes WHERE user_id = '$user_id' )
Как тут поступать?
Вариант сначала выбрать все ID за которые голосовал, а потом вставить во второй запрос айдишки через запятую — не подходит, т.к. юзер может оценить и 3к фоток, не будешь же 3к айдишек перечислять?
Хотя наверное можно сначала выбрать 20 комментов, потом один запросом 20 юзеров. В пыхе все склеить и выдать результат.
Гуру хайлоада, поделитесь информацией.
К примеру, для получения информации о пользователе в комментариях (при отрисовки ника) проще сделать отдельный запрос (конечно же закешировав его), чем JOIN на таблицу пользователей
Никогда этого не понимал, это если 20 комментариев я вывожу, я делаю еще 20 запросов?
Являюсь разработчиком iframe приложений для ВКонтакте уже год.
С этой проблемой столкнулись давно, костыли все пробовали, но в итоге пришли к выводу, что в iframe приложениях лучше не использовать куки.
В основном куки нужны для авторизации, поэтому мы используем 100% рабочий метод — передаем параметры авторизации через URL.
— Небольшой оффтоп: вы используете ссылки в приложении? Если да, то скоро столкнетесь с проблемой, узнав что не одно iframe приложение ВКонтакте не может работать одинаково правильно во всех браузерах. За год разработчики ввели некоторые вещи, которые уменьшают возможность глюков, но до конца проблему не вылечили. Кнопки Назад и Вперед на данный момент вообще адекватно не работают, из-за проблем с методом onLocationChanged. Если будет время, напишу пост про это на хабре, может местные умельцы придумают более стабильный вариант.
А давайте скинемся всем хабром и подарим бедной компании Мейл.ру нормальную видеокамеру?
Это уже какой по счету пост, с ужасным качеством видео, от Мейл.ру?
Фиг знает. У меня бывает жутко тормозит.
Особенно если несколько приложений открыто. Но тут может уже недоработка ОС.
Поидеи она должна контролировать запущенные приложения. И если резко не хватает ресурсов — убивать процессы.
Я просто к чему это сказал, от дройдера были обзоры с Nexus`ом — и там реально все летало.
А тут видны глюки и задержки
Я обладатель Galaxy. Помимо корпуса прошу обратить внимание на кривую адаптацию прошивки…
Даже в обзоре этом видно, что гэлакси не фига не шустрый.
Это жутко бесит.
Т.е. фотки активных людей выводятся чаще, чем неактивных.
Первый вариант интересный.
Все фотки показываются по очереди.
Нужно показывать только те фотки, которые пользователь не оценивал.
Таблица, в которой лежат оценки разрастается очень быстро. Уже более миллиона записей.
Соответственно ваши варианты не подходят.
2 таблицы
1я таблица — фотки
2я таблица — какой юзер за какую фотку голосовал
SELECT * FROM photos WHERE
photo_id NOT IN( SELECT photo_id FROM votes WHERE user_id = '$user_id' )
Как тут поступать?
Вариант сначала выбрать все ID за которые голосовал, а потом вставить во второй запрос айдишки через запятую — не подходит, т.к. юзер может оценить и 3к фоток, не будешь же 3к айдишек перечислять?
Гуру хайлоада, поделитесь информацией.
Никогда этого не понимал, это если 20 комментариев я вывожу, я делаю еще 20 запросов?
Уже лет 5 существует.
Да, но это вариант «в лоб», который 100% работает.
А вот методы, описанные в топике, могут сломаться при очередной выходки браузера.
Но все равно спасибо, полезный материал.
С этой проблемой столкнулись давно, костыли все пробовали, но в итоге пришли к выводу, что в iframe приложениях лучше не использовать куки.
В основном куки нужны для авторизации, поэтому мы используем 100% рабочий метод — передаем параметры авторизации через URL.
Вот так это выглядит: vkontakte.ru/app1905375
— Небольшой оффтоп: вы используете ссылки в приложении? Если да, то скоро столкнетесь с проблемой, узнав что не одно iframe приложение ВКонтакте не может работать одинаково правильно во всех браузерах. За год разработчики ввели некоторые вещи, которые уменьшают возможность глюков, но до конца проблему не вылечили. Кнопки Назад и Вперед на данный момент вообще адекватно не работают, из-за проблем с методом onLocationChanged. Если будет время, напишу пост про это на хабре, может местные умельцы придумают более стабильный вариант.
Это уже какой по счету пост, с ужасным качеством видео, от Мейл.ру?
А насчет появится в России или нет — тут неважно… Я свой заказывал на clove из великобритании
Ведь без лагфикса даже на 2.2 galaxy проигрывает по производительности Нексусу.
Хочу потрогать Nexus S, если корпус лучше, то поменяю свой Galaxy на него…
Особенно если несколько приложений открыто. Но тут может уже недоработка ОС.
Поидеи она должна контролировать запущенные приложения. И если резко не хватает ресурсов — убивать процессы.
Я просто к чему это сказал, от дройдера были обзоры с Nexus`ом — и там реально все летало.
А тут видны глюки и задержки
Даже в обзоре этом видно, что гэлакси не фига не шустрый.
Это жутко бесит.