PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи

Страниц (98): В начало « ... 59 60 61 62 [63] 64 65 66 67 ... » В конец

> Найдено сообщений: 1465
teddy Отправлено: 16 Августа, 2013 - 14:56:00 • Тема: highload проекты • Форум: Вопросы новичков

Ответов: 20
Просмотров: 1013
LIME
Silver Soft
Теперь как то проще стал смотреть на эту ситуацию

Silver Soft пишет:
читай доки

Я стараюсь )) но иногда приходится дочитывать в гугле ибо в доках обычно простые примеры и докам вопрос не задать )) и не факт что написано правильно в разных статьях...

Если отойти от темы, то скажу одну небольшую весч:
Ещё несколько месяцев назад во всяких блогах смотрел популярные скрипты и думал вау, какой крутой чувак, целый скрипт написал! И в коментах вроде благодарят, значит скрипт нормально написан. А глядя на эти скрипты сейчас, в тех же блогах, вижу, что это говнокод и сам могу лучше...

Мораль: не знаешь кому доверять.

Но на форуме проще, я его часто посещаю и знаю приблизительный уровень многих кто тут... И так как то совмещаю. Доки + гугл + мнение опытных форумчан = итоговое умозаключение
teddy Отправлено: 16 Августа, 2013 - 13:33:28 • Тема: highload проекты • Форум: Вопросы новичков

Ответов: 20
Просмотров: 1013
Stierus пишет:
Я не очень понимаю, что значит проектировать нагрузку

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

Stierus пишет:
Есть четкие правила построения распределенных систем

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

Stierus пишет:
Я не понимаю, какую цель вы ставите перед собой

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

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

Мелкий
Спасибо, вполне доступное объяснение. Даже в ответ написать нечего

Zuldek
Благодарю, я почитаю скорее всего

Если честно, меня беспокоил этот вопрос потому, что я думал без этих знаний делать хотя бы нормальные сайты где посещений 5-10к в сутки - не светит. Подумал так потому что в прошлом(ещё до того как я занялся созданием сайтов) я админил небольшой сайт знакомого. Так вот там при одновременной авторизации 50-60 человек сайт лёг сразу... цифра мелкая, вот я и вспомнил и озадачился. Видимо хостинг оставлял желать лучшего... или скрипты были кривые а-ля запросы из разряда "цикл в цикле"
teddy Отправлено: 16 Августа, 2013 - 02:53:28 • Тема: highload проекты • Форум: Вопросы новичков

Ответов: 20
Просмотров: 1013
DelphinPRO пишет:
Для увеличенных нагрузок рекомендют купить премиум акк с выделенным сервером.

Тоесть с точки зрения разработчика сайта все ложится на плечи хостера относительно нагрузок? Чем больше платишь - тем больше ресов выделяется. А если хочется собственный сервак - то марш учить все эти внутренности? Я правильно понимаю?
teddy Отправлено: 16 Августа, 2013 - 02:35:49 • Тема: highload проекты • Форум: Вопросы новичков

Ответов: 20
Просмотров: 1013
.
avtor.fox пишет:
Как Вы собираетесь "впихнуть" дополнительный сервер?

Пока не знаю. Но читая в гугле встречал что "впихивают". Ведь не каждый админ мог знать что когда то его сайт будет хорошо востребован. Думаю все начинали с одного сервера, а потом уже при необходимости расширяли объем своих ресурсов

avtor.fox пишет:
Для этого есть сервера разгрузки, они должны знать какой из серверов-обработчиков упадёт при дополнительных 100 подключениях и в таком случае они просто перекинут нагрузку следующих 100 подключений на другие сервера (примерно)

Да-да, встречал подобное в одной из прочитанных статей... ещё картинка была помню как происходит распределение нагрузки...

Благодарю за ответы, хоть что то стало прояснятся...

От ответов остальных разработчиков не откажусь, хочу почитать всех )) ну тех, кто понимает что то в данной теме и сделать конечный вывод
teddy Отправлено: 16 Августа, 2013 - 02:33:43 • Тема: highload проекты • Форум: Вопросы новичков

Ответов: 20
Просмотров: 1013
DelphinPRO пишет:
на инсертах хостер заблокировал доступ к БД на несколько минут
селекты прошли.

Как то я немного разгрузился... я слышал есть ещё всякие VPS(с хостерами пока не дружу, поэтому могу ошибаться) которые по мощнее чем обычные хостинги и стоят дороже на 10-15 долларов - отличие сильное по обработке запросов к серверу?

И кстати по поводу твоих тестов - это разок только я так понял... а если стабильно - могут наверное и навсегда заблокировать акк?

Может вопросы задаю глупые - не судите строго, для меня это новая тема
teddy Отправлено: 16 Августа, 2013 - 02:13:31 • Тема: highload проекты • Форум: Вопросы новичков

Ответов: 20
Просмотров: 1013
Кстати я так полагаю все сводится к запросам к серверу и чем объемнее запрашиваемый ресурс тем больше нагрузки... Хотелось бы узнать ньюансы, желательно в цифрах, хотя бы приблизительных...

Вообщем топик представляет кашу и я это понимаю. Но надеюсь опытные разработчики смогут уловить суть и объяснить мне хоть от части что к чему
(Добавление)
avtor.fox
ща выкурю все что вы написали и отпишу ))
(Добавление)
avtor.fox пишет:
Не хватает ресурсов? Нужна разгрузка серверов?

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

Где можно прочитать про подводные камни, на какую тему гуглить... Я столько всего видел(читал, но мало что понял) - для меня этот пусть кажется очень долгим и с сотнями ньюансов... или я преувеличиваю?
teddy Отправлено: 16 Августа, 2013 - 00:24:56 • Тема: highload проекты • Форум: Вопросы новичков

Ответов: 20
Просмотров: 1013
Здравствуйте. Иногда встречаю такой термин, я так понимаю это те проекты, где очень много посетителей. Типа 100500 авторизаций и действий в секунду и т.п

Так вот в чем собственно вопрос, начиная с какой цифры "одновременного" посещения к примеру главной страницы можно назвать проект highload-овым? Хотя бы приблизительно.

Я в серьез обеспокоен данным вопросом и вообще без понятия в какую сторону нужно смотреть. Некоторые рекомендуют выделять несколько серверов для проекта, даже вычитал в книже(если ничего не напутал), что для хранений sessID выделяют отдельный сервер. Вообщем инфы полно, всякие расширения, какие то непонятные функции работающие на уровне ОС и всё такое. Глаза разбежались, чего учить, для чего читать - не понятно. Более того недостаточно выучить, надо ещё умудриться спроектировать нагрузку очень грамотно. Вообщем хаос. - Что посоветуете делать со всем этим добром? Куда смотреть, чего читать, хотя бы для старта. В добавок ко всему когда нахожу что то на эту тему, все написано на "заумном" языке на столько, что если бы данная речь не была связана с программированием а являлась бы обычной повседневной речью, то её тоже было бы сложно понять Хм Ну вы поняли о чем я... Где то в глубине души я надеюсь, что всё это для хостеров, а не для меня )) Т.е они оптимизируют свои услуги, а я за это плачу... или нет? Недовольство, огорчение

+ вопрос, есть ли к примеру сервисы, которые принимают всю ответственность по нагрузке на себя? Т.е что бы залить файл со скриптами и нормально чтоб работало даже при большом кол-ве посещений, не абсолютно, но от части чтоб взяли на себя нагрузку. Хостинги может особые... Понятное дело многое зависит от того как написано приложение, но все же...

В добавок ещё интересует ответ на след. вопрос: Если допустим у меня обычный хостинг, в скриптах ничего особенного нет, страницы которые меняются раз в 100 лет закешированы, не закешированы скрипты работающие с аяксом ну и MySQL насколько я сам кеширует частые запросы, остальные страницы кешируются тоже, но если контент был обновлен, тогда уже инфа берется с сервера, если нет - берется из кеша - такой подход на обычном хостинге какую нагрузку может выдержать? Т.е приблизительно от какого кол-ва одновременных посещений страницы сайт может "лечь" ? Допустим эта цифра 1000 пользователей(прошу назвать приблизительную), насколько изменился эта цифра(приблизительно) если пользователи не просто посетили главную страницу, но ещё что то сделали на сайте либо если это те посетители которые постоянно чем то заняты на сайте.

Надеюсь вы меня поняли Растерялся

Буду рад выслушать каждого
(Добавление)
Так же если у вас был опыт удачи/неудачи в подобных проектах, хотел бы послушать небольшой рассказ про эти случаи(желательно обучающего характера)
teddy Отправлено: 15 Августа, 2013 - 18:08:17 • Тема: Калькулятор • Форум: Вопросы новичков

Ответов: 2
Просмотров: 159
Savok32
Дефолт из тела else вытащите и всё
PHP:
скопировать код в буфер обмена
  1. else
  2. {
  3.    $output .=$number1/$number2;
  4. }
  5.   break;
  6.   default: $output="Неизвестынй оператор $znak";
  7.  
teddy Отправлено: 15 Августа, 2013 - 17:01:45 • Тема: Безопасная валидация данных • Форум: Вопросы новичков

Ответов: 22
Просмотров: 885
Мелкий
Спасибо.

Вообщем вывод в итоге сделал такой:

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

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

Как то так все это понял Улыбка
teddy Отправлено: 15 Августа, 2013 - 16:27:54 • Тема: Безопасная валидация данных • Форум: Вопросы новичков

Ответов: 22
Просмотров: 885
Мелкий пишет:
Сколько места и как по удобочитаемости будет с экранированием?

Получается, что использовав подготовленный запрос, можно смело выкидывать real_escape_string? Если есть ньюансы, скажите про них пожалуйста. Не хочу что бы в будущем мои приложения ложились одно за другим

Мелкий пишет:
Если вы в запросе (аналогия - в объявлении функции) указали 5 обязательных параметров, почему она должна работать, если передать только 3 параметра?

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

Благодарю за помощь
teddy Отправлено: 15 Августа, 2013 - 15:34:51 • Тема: Безопасная валидация данных • Форум: Вопросы новичков

Ответов: 22
Просмотров: 885
LIME пишет:
тем что сначала в бд улетает запрос с плейсхолдерами
а затем летят отдельно данные и подставляются в запрос(в транслированный уже план запроса) в этом случае данные рассматриваются как данные и не парсятся на предмет управляющих символов

Спасибо

LIME пишет:
человеческие константы чтоб понятней было

Почитал в мануале, приблизительно разобрался, но как по мне мудрено как то... мне проще явно привести к типу одной строкой а потом уже писать различные условия для валидации если это требуется...
teddy Отправлено: 15 Августа, 2013 - 14:53:11 • Тема: Безопасная валидация данных • Форум: Вопросы новичков

Ответов: 22
Просмотров: 885
Мелкий пишет:
Препарированные запросы.

А можно подробнее про это? Я не пользуюсь подготовленными запросами, поэтому хотелось бы получить ответ на несколько вопросов. Есть например такой код

PHP:
скопировать код в буфер обмена
  1. $db = new mysqli("localhost", "root", "", "DBname");
  2. $stmt = $db->prepare("INSERT INTO `test` (`s_field`, `i_field`, `i_field`) VALUES(?, ?, ?)");
  3. $stmt->bind_param("sii", $sField, $iField0, $iField1);
  4. $sField = "text";
  5. $iField0 = 123;
  6. $iField1 = 456;
  7. $stmt->execute();
  8.  

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

Или тут сначала выполнится запрос, а потом уже подставятся значения? Не совсем понятно честно говоря... Если так, то логика не совсем ясна... Или может просто мы говорим: "Приготовься выполнить этот запрос и только этот, и если прилетит что то левое, то принимай это как обычные данные и не в коем случае не подставляй в запрос"

И почему когда кол-во передаваемых параметров не совпадает кол-ву полей в БД интерпретатор плюется ошибкой? В обычных запросах вроде как нет... или может есть специальные настройки что бы это отключить?
teddy Отправлено: 15 Августа, 2013 - 11:02:28 • Тема: как определить по кому кликнули при событие blur • Форум: JavaScript & VBScript

Ответов: 22
Просмотров: 5166
this
teddy Отправлено: 14 Августа, 2013 - 15:30:58 • Тема: Безопасная валидация данных • Форум: Вопросы новичков

Ответов: 22
Просмотров: 885
EuGen пишет:
Отрицательное число - тоже целое. Так что проверка соответствует утверждению "ожидается неотрицательное целое число".

Да, согласен. Я просто не так выразился

EuGen пишет:
Любая строка предполагается к обработке в запросах?

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

PHP:
скопировать код в буфер обмена
  1. if($_SERVER["REQUEST_METHOD"] == "POST"){
  2.    
  3. $name = $db->real_escape_string(trim($_POST['name']));
  4. $num = abs(intval($_POST['num']));
  5.  
  6. //или например
  7. if(!intval($_POST['num'])){
  8.    
  9.     echo "Это не число!";
  10. }
  11.  
  12. }
  13.  

По разному делаю, в зависимости от того, что именно мне нужно в результате
teddy Отправлено: 14 Августа, 2013 - 14:58:10 • Тема: Безопасная валидация данных • Форум: Вопросы новичков

Ответов: 22
Просмотров: 885
кстати... напишу то как делаю валидацию/фильтрацию данных, может пнёт кто если что не очень хорошо.

Сначала задаю себе вопрос, "что я ожидаю получить, какие данные". Если например это целое число, то abs(intval($_POST['num']));

Если строка, то $db->real_escape_string($_POST['str']);
тоже самое и с $_GET параметрами

ну и для мыла filter_var

Если нужен конкретный шаблон входящих данных, использую preg_match с модификатором u

Ну а дальше уже по необходимости... типа if(strlen($var) < 3) {$error_str = "error";}

Страниц (98): В начало « ... 59 60 61 62 [63] 64 65 66 67 ... » В конец
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB