У меня есть социальная сеть
-
Таблица пользователей составляет около 60 000 строк
-
Таблица друзей составляет около 1 миллиона строки (используемые для определения того, кто является вашим друг)
Я хочу сделать ссылку для друга, стену, что бы вы ни назвали, она будет показывать такие вещи, как сообщение о статусе пользователя (сообщения типа Twitter), будет показано несколько разных элементов, но для начала это будет просто статус друга и, возможно, сообщение в блоге.
В основном вы увидите только контент, опубликованный с идентификатором пользователя, который находится в вашем списке друзей.
Я пытаюсь найти лучший способ и не очень далеко, но вот моя последняя идея.
В настоящее время для создания этого фида мне нужно
-
Получить список идентификаторов друзей на таблица большого друга
-
Получить данные потока от друга ids из приведенного выше результата
-
ПРИСОЕДИНИТЕСЬ к таблице пользователя, чтобы получить URL и имя пользователя издателей
-
Затем подключитесь к таблице комментариев, чтобы получить комментарии, отправленные в фид.
Это одна большая задача для создания этого фида
У меня есть 3 идеи до сих пор, вот где может помочь ваша помощь.
Вариант Memcache:
- Использовать memcache и кешировать пользователей friendlist как массив, когда пользователь регистрируется на сайте, также когда пользователь одобряет новый запрос друга на друга, который будет добавлен в список, он восстановит там кеш.
- В дополнение к тому, чтобы просто получать туда друзей, я мог бы сохранить там URL-адрес и имя пользователя друзей, это ускорит все, устраняя этот запрос при создании файла-друга.
Файловый кеш-код:
-
Сделайте то же самое, что и параметр memcache но сохраняет эти данные как массив к кеш файлу вместо памяти, затем включите этот файл кеша в страница.
-
Я не уверен, какой из лучших метод для работы я понимаю memcache хранит все в памяти поэтому друзья, у которых есть 20 000 друзей, которые могли бы использовать много памяти и кеша файлов поместить его в память, когда пользователи это нужно, если я прав. Также, если я сделал метод файла, когда пользователь выходит из сайта, я бы удалил там кеш файл, поэтому папка кэша никогда не будет слишком большим файлов
Кэш сеанса Опции:
- То же, что и в кэше файлов выше, я просто понял, что данные сеанса сохранены в файл, поэтому это не сделает его способным кэш-памяти?
Пожалуйста, дайте мне ваши мнения или любые советы или информацию, которые у вас есть на этом, поскольку у меня нет большого количества знаний о кешировании, я много читал, но иногда идеи других людей очень помогают.