Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Высонагруженный проект VS сессии? 
:(
    Опции темы
BuShaRt
Дата 21.5.2012, 23:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1391
Регистрация: 29.6.2006

Репутация: нет
Всего: 6



Недавно меня очень удивили сообщив то, что в высоко нагруженных проектах нельзя использовать сессии и вместо них следует использовать собственные разработки с аналогичными алгоритмами. Т.е. допустим информация об авторизации должна храниться не в сессии, а в базе данных, а доступ к ней осуществляется по токену. По сути тоже самое, но как мне сообщили тут есть весомая разница с точки зрения производительности. Аргументировали повышение производительности тем, что высоко нагруженные проекты часто разносят на N-ое количество серверов в клауде и может случиться такое, что балансировщик нагрузки перекинет пользователя с одного сервера на другой, при этом должна пропасть сессия т.к. она уникальна для каждого сервера. 

Честно говоря такой ход дел меня сильно удивил и т.к. я очень плохо разбираюсь в вопросах свяханных с железом, очень хотелось бы получить комментарии людей более опытных по вышеизложенному.
PM MAIL   Вверх
Fortop
Дата 22.5.2012, 12:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2200
Регистрация: 13.11.2007
Где: Донецк

Репутация: 1
Всего: 42



Все правильно рассказали.

В случае разнесения проекта на разные сервера стандартный механизм сессий использовать не слишком удобно.

Вместе с тем. Есть возможность подключить Redis, как хранилище для сессий в рамках стандартного механизма.
А Redis в свою очередь поддерживает репликацию на несколько серверов.

Это сообщение отредактировал(а) Fortop - 22.5.2012, 12:44


--------------------
Мир это Я.
Живее всех живых.
PM MAIL   Вверх
BuShaRt
Дата 22.5.2012, 13:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1391
Регистрация: 29.6.2006

Репутация: нет
Всего: 6



Может ли Redis полностью избавить меня от возможных проблем, а разработчиков от необходимости знать как это работает внутри т.е. дальше работать с сессиями, как-будто сервер всего один?
PM MAIL   Вверх
skyboy
Дата 22.5.2012, 17:04 (ссылка) |    (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 1
Всего: 260



Цитата(BuShaRt @  22.5.2012,  12:37 Найти цитируемый пост)
 а разработчиков от необходимости знать как это работает внутри

тут не от Редиса зависит.
смотри, есть session_set_save_handler — там хоть с редисом связать можно, хоть с голубиной почтой smile
PM MAIL   Вверх
Fortop
Дата 23.5.2012, 06:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2200
Регистрация: 13.11.2007
Где: Донецк

Репутация: 1
Всего: 42



Цитата(BuShaRt @  22.5.2012,  13:37 Найти цитируемый пост)
Может ли Redis полностью избавить меня от возможных проблем, а разработчиков от необходимости знать как это работает внутри т.е. дальше работать с сессиями, как-будто сервер всего один? 

Не проверял надежность поскольку не было такой необходимости.
Подключать именно так, как писал skyboy - через session_set_save_handler

В остальном работа не отличается от работы с обычными сессиями.


--------------------
Мир это Я.
Живее всех живых.
PM MAIL   Вверх
BuShaRt
Дата 23.7.2012, 09:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1391
Регистрация: 29.6.2006

Репутация: нет
Всего: 6



Интересно. Теоретически, если я плюну на безопасность и открою MySQL сервер наружу, то я могу легко организовать общую сессию для сайтов находящихся на разных серверах (но имеющих общий домен, на пример sport.ru & sub.sport.ru)?
PM MAIL   Вверх
MoLeX
Дата 23.7.2012, 10:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Местный пингвин
****


Профиль
Группа: Модератор
Сообщений: 4076
Регистрация: 17.5.2007

Репутация: 0
Всего: 140



да. тока на безопасность не плюй - ограничение по IP на этот порт в настройках фаервола 


--------------------
Amazing  smile 
PM MAIL WWW ICQ   Вверх
Muan
Дата 7.2.2013, 21:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 7.2.2013
Где: Москва

Репутация: нет
Всего: нет



Не проще-ли использовать как хранилище Memcached?

------------------------------------------
химические свойства меди

Это сообщение отредактировал(а) Muan - 5.1.2020, 19:16
PM MAIL WWW   Вверх
Wowa
Дата 11.2.2013, 03:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
Group Icon


Профиль
Группа: Админ
Сообщений: 15017
Регистрация: 14.9.2000
Где: Винград

Репутация: нет
Всего: 290



Цитата(Muan @  7.2.2013,  20:56 Найти цитируемый пост)
Не проще-ли использовать как хранилище Memcached? 

да, что угодно можно использовать. Просто Redis даёт побольше возможностей, чем memcached. Но эти возможности нужны для других нужд проекта. Для сессий и обычного memcached хватит.
PM WWW   Вверх
Fortop
Дата 11.2.2013, 12:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2200
Регистрация: 13.11.2007
Где: Донецк

Репутация: 1
Всего: 42



Кстати, Redis на 0.5млн уников скурвился.
А мемкеш тянет

Правда и писались туда не только сессии, но и страницы кешировались.


--------------------
Мир это Я.
Живее всех живых.
PM MAIL   Вверх
Wowa
Дата 11.2.2013, 13:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
Group Icon


Профиль
Группа: Админ
Сообщений: 15017
Регистрация: 14.9.2000
Где: Винград

Репутация: нет
Всего: 290



Цитата(Fortop @  11.2.2013,  11:57 Найти цитируемый пост)
Кстати, Redis на 0.5млн уников скурвился.

Посмотри, отключена ли запись на диск. Редис по-умолчанию сбрасывает данные на диск. Это серьезно замедляет его работу.


Цитата

Правда и писались туда не только сессии, но и страницы кешировались. 

Количество объектов в кеше не сказывается на производительности.


user posted image
http://oldblog.antirez.com/post/redis-memc...-benchmark.html
PM WWW   Вверх
Fortop
Дата 13.2.2013, 18:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2200
Регистрация: 13.11.2007
Где: Донецк

Репутация: 1
Всего: 42



Цитата(Wowa @  11.2.2013,  13:26 Найти цитируемый пост)
Посмотри, отключена ли запись на диск. Редис по-умолчанию сбрасывает данные на диск. Это серьезно замедляет его работу.

Я в курсе. К сожалению он использовался еще и для других целей, отличных от кеширования и сессий, так что без персистентности никак не обойтись.
Поэтому унесли все не персистентное в мемкеш

Впрочем, действительно нужно будет посмотреть как бы он себя вел при отключенной записи.

Цитата(Wowa @  11.2.2013,  13:26 Найти цитируемый пост)
Количество объектов в кеше не сказывается на производительности.

Дело не количестве, а в объеме smile


--------------------
Мир это Я.
Живее всех живых.
PM MAIL   Вверх
Wowa
Дата 13.2.2013, 19:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
Group Icon


Профиль
Группа: Админ
Сообщений: 15017
Регистрация: 14.9.2000
Где: Винград

Репутация: нет
Всего: 290



Цитата(Fortop @  13.2.2013,  17:23 Найти цитируемый пост)
Поэтому унесли все не персистентное в мемкеш

можно было два редиса поднять.
PM WWW   Вверх
Fortop
Дата 13.2.2013, 20:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2200
Регистрация: 13.11.2007
Где: Донецк

Репутация: 1
Всего: 42



Цитата(Wowa @  13.2.2013,  19:26 Найти цитируемый пост)
можно было два редиса поднять. 

Можно было smile
просто это был не первый случай сложностей с ним (например на другом проекте периодически отваливался коннект к БД при 50-100к запросов в секунду) и надоело их выявлять smile


--------------------
Мир это Я.
Живее всех живых.
PM MAIL   Вверх
Deja_Vu
Дата 9.4.2013, 17:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 88
Регистрация: 15.6.2007
Где: Казань

Репутация: нет
Всего: 2



Цитата(Wowa @ 11.2.2013,  13:26)
user posted image
http://oldblog.antirez.com/post/redis-memc...-benchmark.html

Я так понимаю это тестировали на 1 ноде?
PM Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса

Внимание: данный раздел предназначен для решения сложных, нестандартных задач.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Для профи | Следующая тема »


 




[ Время генерации скрипта: 0.0571 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.