[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Принципы разработки под высокие нагрузки
Страницы: 1, 2, 3, 4, 5, 6, 7
Joker
Цитата (inpost @ 17.01.2013 - 18:02)
Запустил, в разных браузерах, всё ок работает
Может ты имел ввиду блокировку БРАУЗЕРА, когда первый запрос не будет выполнен - не отправляется второй запрос? Так это уже дело браузера.

у тебя разные сессии.... ты с одной запусти, ты же на сайте не сидишь из двух браузеров?) (ну многие точно не сидет)
Joker
Цитата (inpost @ 17.01.2013 - 18:02)
Может ты имел ввиду блокировку БРАУЗЕРА, когда первый запрос не будет выполнен - не отправляется второй запрос? Так это уже дело браузера.

убери строчку session_start и увидишь что браузер выполняет оба запроса сразу)
inpost
Высокая нагрузка - плохо серверу. Обновил сервер - нагрузка перестала быть для него такой уж критической. Решил ещё улучшить - разделил на 1000 серверов, нагрузка стала на столько маленькой, что выдерживает миллионы людей в сутки и при этом не падает, нет никакого критического состояния, даже нагрузок тяжелых, всё летает.... не верите, смотрите: vk.com smile.gif

Joker
Я понял, я попробую. А теперь я о другом, сессия как работает: в начале php она открылась, в конце работы - закрылась. При этом работает непосредственно с переменными в PHP cреде, а не сразу с файлом, отсюда и получается, что запустив 2 скрипта (твоим методом) - они друг друга затрут, о чём Киллер сказал ранее. Я не вижу необходимости избавляться от такой системы, пока что не вижу. Не вижу повода кому-то открывать в секунду 2 вкладки. Целостность при общем доступе теряется.

_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
Joker
Цитата (inpost @ 17.01.2013 - 18:13)
что запустив 2 скрипта (твоим методом) - они друг друга затрут, о чём Киллер сказал ранее. Я не вижу необходимости избавляться от такой системы, пока что не вижу. Не вижу повода кому-то открывать в секунду 2 вкладки. Целостность при общем доступе теряется.

это не мой метод))) Я всё го лишь сказал что говорят на HighLoad )
waldicom
Цитата (ApuktaChehov @ 17.01.2013 - 13:09)
Joker - сложные алгоритмы обработки выбранных из БД данных.

Можно поподробнее про это? Просто у меня неммного противоположное мнение, вот и спрашиваю. Т.е. да, с база данных сложные хапросы надо убирать, но вот переладывать это непосредственно на пхп - это как?


_____________
Свои мозги еще никто не отменял.
Телепатов нету.
Guest
inpost
Цитата
А теперь я о другом, сессия как работает: в начале php она открылась, в конце работы - закрылась.

Сессия это обычный текстовый файл с сериализованными данными и при start_session он блокируется самим серваком, так что при запросе той же сессии ещё раз из файла s2.php выполнится только после того как будет снята блокировка с файла сессии.
Guest
inpost
Цитата
При этом работает непосредственно с переменными в PHP cреде, а не сразу с файлом,

С точностью до наоборот, переменные среды PHP формируются во время session_start через десериализацию в массив $_SESSION и только за тем работа с ними.
Guest
Joker
Прав, запросы упрощаются до самых наипростейших но увеличиваются количества API от фронта к серверу, за счёт этого происходит масштабируемость в горизонтали, так как система API сервера представляет собой обычные разнородные сервисы почти не связанные между собой, как писалось в HighLoad++.
Что то напоминает работу Node.js с V8.
inpost
Guest
Я это и написал. Из файла в переменную, из переменной в конце работы обратно в файл. smile.gif Читай внимательнее.

_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
ApuktaChehov
waldicom - ты же знаешь, что SQL хоть и язык запросов, но тем не менее во множестве реализаций имеет кучу встроенных функций, которыми можно пользоваться прямо в запросах. Например, сортировка, минимальное, максимальное и среднее значение, регулярки, поиск по части строки, математические операции, условия, циклы и т.д. и т.п. Ну вот посредством всего этого можно писать очень сложные запросы, включая вложенные запросы с присоединением и объединением таблиц.

В результате, такие запросы хоть и будут быстры, по сравнению с PHP, но в рамках СУБД будут занимать очередь. Таким образом БД может лечь. Получится, что PHP работает, но ждет БД.

Учитывая, что БД сложнее разделить на несколько серверов, чем PHP, то часть алгоритмов выполняемых СУБД перекладывают на php.

Предположим, устал PHP, не справляется. Покупаем сервак, цепляем его к ngnix, и вперед - PHP окреп. А БД как? Изменять структуру? Настраивать репликацию? А время простоя при этом?

Думаю тут и так все ясно.

_____________
Joker
Цитата (ApuktaChehov @ 18.01.2013 - 11:15)
Предположим, устал PHP, не справляется. Покупаем сервак, цепляем его к ngnix, и вперед - PHP окреп. А БД как? Изменять структуру? Настраивать репликацию? А время простоя при этом?

Ну во 1 не так легко пхп разделить на несколько серваков как это кажеться на первый взгляд, мало купить сервер, надо еще балансер покупать, надо настраивать его, то же самое время простоя, и чтоб пхп лег нужно ОООЧень постараться))) Проще бд разнести с репликацией, это оч быстро делается особенно если движок имеет такую функцию заранее.
twin
Joker
Цитата
особенно если движок имеет такую функцию заранее.
Движок может так же заранее иметь и роутер и балансер. Куда как проще и надежнее подцепить дополнительный сервер к СУБД, чем настраивать репликации.

Тут нет рецептов, все от архитектуры зависит. Принцип работы высоконагруженных систем один - как можно больше разгрузить СУБД. Методы у всех разные.

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

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
Guest
ApuktaChehov, твои размышления похожи на советы типа "можно и через попу питаться". Или ты просто теоретически повторяешь за кем то как попугай?
Уродовать всю логику программы, подстраиваясь под какие то простые запросы?
Убогая идея.
Лучше подучи SQL, понятие индексов, оптимизации запросов.
Если оптимизированный по максимуму запрос на правильной структуре бд не идет хорошо на БД mysql, то какой вывод?
Выбрать не mysql, а что то в сотни раз посерьезней, типа Oracle.
Благо современные php фреймворки дают код совместимый между разными субд wink.gif, так что если по современному работаешь, проблем намного меньше.
И естественно высокопосещаемые проекты прибыльные и поэтому могут позволить себе и купить серьезную базу и т.д.
А не через попу писать подделанный говнокод.
ApuktaChehov
Guest - а ты кто хоть?

_____________
lock12
ApuktaChehov, а ты кто? blink.gif
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.