полезно сохранить
сохранить что-ли
Пост, с которым я был согласен, зашел и плюсонул, но потом «начался срач и меня забанили на нулледе и родилось пару памятников»©
*чища свой гугл ридер в 2012, листая избранное в нем*
*чища свой гугл ридер в 2012, листая избранное в нем*
Стелс
Когда люди ссорятся
Один раз Учитель спросил у своих учеников:
— Почему, когда люди ссорятся, они кричат?
— Потому, что теряют спокойствие, — сказал один.
— Но зачем же кричать, если другой человек находится с тобой рядом? — спросил Учитель. — Нельзя с ним говорить тихо? Зачем кричать, если ты рассержен?
Ученики предлагали свои ответы, но ни один из них не устроил Учителя.
В конце концов он объяснил:
— Когда люди недовольны друг другом и ссорятся, их сердца отдаляются. Для того чтобы покрыть это расстояние и услышать друг друга, им приходится кричать. Чем сильнее они сердятся, тем дальше отдаляются и громче кричат.
— А что происходит, когда люди влюбляются? Они не кричат, напротив, говорят тихо. Потому, что их сердца находятся очень близко, и расстояние между ними совсем маленькое. А когда влюбляются еще сильнее, что происходит? — продолжал Учитель. — Не говорят, а только перешептываются и становятся еще ближе в своей любви.
— В конце даже перешептывание становится им не нужно. Они только смотрят друг на друга и все понимают без слов.
*чища свой гугл ридер в 2012, листая избранное в нем*
— Почему, когда люди ссорятся, они кричат?
— Потому, что теряют спокойствие, — сказал один.
— Но зачем же кричать, если другой человек находится с тобой рядом? — спросил Учитель. — Нельзя с ним говорить тихо? Зачем кричать, если ты рассержен?
Ученики предлагали свои ответы, но ни один из них не устроил Учителя.
В конце концов он объяснил:
— Когда люди недовольны друг другом и ссорятся, их сердца отдаляются. Для того чтобы покрыть это расстояние и услышать друг друга, им приходится кричать. Чем сильнее они сердятся, тем дальше отдаляются и громче кричат.
— А что происходит, когда люди влюбляются? Они не кричат, напротив, говорят тихо. Потому, что их сердца находятся очень близко, и расстояние между ними совсем маленькое. А когда влюбляются еще сильнее, что происходит? — продолжал Учитель. — Не говорят, а только перешептываются и становятся еще ближе в своей любви.
— В конце даже перешептывание становится им не нужно. Они только смотрят друг на друга и все понимают без слов.
*чища свой гугл ридер в 2012, листая избранное в нем*
Боже мой, я щас тут дошел до чистки своего "избранного" в гугл ридере
Странные и лично мне кажется ЮМОРные(или нет?) моменты в этом посте.
*чища свой гугл ридер в 2012, листая избранное в нем*
*чища свой гугл ридер в 2012, листая избранное в нем*
Как сделать так, чтобы ширинка сама не расстегивалась
ня
Однажды, когда человек полировал свой автомобиль, его 6-летний сын поднял камень и нацарапал несколько слов на боку автомобиля. В гневе человек схватил руку ребенка и стал бить по ней много раз, не понимая, что он вырывает ее. В больнице ребенок потерял все свои пальцы из-за многочисленных переломов. Когда ребенок увидел своего отца… с глазами, полными боли, он спросил, 'Папа, когда мои пальцы вырастут снова?' Человек испытал боль и ничего не ответил; он возвратился к своему автомобилю и стал его пинать. Опустошенный своими поступками… сидя перед тем автомобилем, он посмотрел на царапины — ребенок написал 'ЛЮБЛЮ ТЕБЯ, ПАПА'.
*чища свой гугл ридер в 2012, листая избранное в нем*
*чища свой гугл ридер в 2012, листая избранное в нем*
Притча о друзьях, рае и аде
Умер человек. Его пес рядом лег и тоже умер. И вот душа человека стоит перед вратами с надписью «Рай» и рядом душа собаки. На вратах надпись: «С собаками вход воспрещен!». Не вошел человек в эти врата, прошел мимо. Идут они по дороге, вторые врата, на которых ничего не написано, только рядом старец сидит.
— Простите, уважаемый…
— Петр я.
— А что за этими воротами?
— Рай.
— А с собакой можно?
— Конечно!
— А там, раньше, что за врата?
— В Ад. До рая доходят только те, кто не бросают друзей.
*чища свой гугл ридер в 2012, листая избранное в нем*
— Простите, уважаемый…
— Петр я.
— А что за этими воротами?
— Рай.
— А с собакой можно?
— Конечно!
— А там, раньше, что за врата?
— В Ад. До рая доходят только те, кто не бросают друзей.
*чища свой гугл ридер в 2012, листая избранное в нем*
Highload оптимизация
Зачастую, «бутылочным горлышком» вашего приложения является база данных, таким образом перво-наперво включаем slow query log и смотрим какой запрос у нас самый медленный, и думаем что с ним делать, если не можем вкурить проблему — зовём старших, пусть тоже повтыкают в EXPLAIN (хабр) вашего чудо-запроса.
Но, опять же ссылаясь к моему опыту, большинство проблем с БД решают правильные индексы. Легко запомнить, что индексировать следует внешние ключи, и всё что у вас в WHERE, ORDER BY, GROUP BY (список не полон, для начала – самое оно).
Не следует пихать много индексов в таблицу которая часто обновляется, иначе накладные расходы на обновление индекса будут перекрывать ваш профит от оных в разы. Советую внимательно почитать об оптимизации в MySQL.
Поиск с использованием LIKE это плохо. Полнотекстовый с MyISAM уже лучше. Внешний аля Sphinx — рулит и бибикает для MySQL и PostgreSQL, инфа достоверная 100%.
Но это полбеды, проблем в БД может подкинуть и само приложение — обращение к БД в цикле/рекурсии или еще каким извращенным способом могут привносить удивительные поправки в результаты нагрузочного тестирования. Сделайте простой профайлер ваших запрос и проследите на каких страницах количество запросов начинает зашкаливать (особенно это касается типа-ORM и почти-Active Record, когда один объект = один запрос, или даже не один). Всем кто уповает на магию фреймворков, иль каких-нить gem-ов — не надейтесь, всё о чём я написал в равной степени относится к большинству языков web-программирования, г… код есть везде, он вездесущ.
Ну, а теперь о главном, нет о главной странице в 1,5 метра — дождется ли её загрузки пользователь со скоростью доступа в 256кбит? Клиентская оптимизация должна проводиться в обязательном порядке: YSlow да Page Speed вам в зубы. Да если погуглить, то даже небольшая правка htaccess для apache улучшит ситуацию:
Пожмите JavaScript и CSS, да переключите jQuery на Google CDN.
anton.shevchuk.name/php/highload-optimization-for-children/
*чища свой гугл ридер в 2012, листая избранное в нем*
Но, опять же ссылаясь к моему опыту, большинство проблем с БД решают правильные индексы. Легко запомнить, что индексировать следует внешние ключи, и всё что у вас в WHERE, ORDER BY, GROUP BY (список не полон, для начала – самое оно).
Не следует пихать много индексов в таблицу которая часто обновляется, иначе накладные расходы на обновление индекса будут перекрывать ваш профит от оных в разы. Советую внимательно почитать об оптимизации в MySQL.
Поиск с использованием LIKE это плохо. Полнотекстовый с MyISAM уже лучше. Внешний аля Sphinx — рулит и бибикает для MySQL и PostgreSQL, инфа достоверная 100%.
Но это полбеды, проблем в БД может подкинуть и само приложение — обращение к БД в цикле/рекурсии или еще каким извращенным способом могут привносить удивительные поправки в результаты нагрузочного тестирования. Сделайте простой профайлер ваших запрос и проследите на каких страницах количество запросов начинает зашкаливать (особенно это касается типа-ORM и почти-Active Record, когда один объект = один запрос, или даже не один). Всем кто уповает на магию фреймворков, иль каких-нить gem-ов — не надейтесь, всё о чём я написал в равной степени относится к большинству языков web-программирования, г… код есть везде, он вездесущ.
Ну, а теперь о главном, нет о главной странице в 1,5 метра — дождется ли её загрузки пользователь со скоростью доступа в 256кбит? Клиентская оптимизация должна проводиться в обязательном порядке: YSlow да Page Speed вам в зубы. Да если погуглить, то даже небольшая правка htaccess для apache улучшит ситуацию:
# Enable ETag
FileETag MTime Size
# Enable Deflate
AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/javascript application/x-javascript
<ifModule mod_expires.c>
ExpiresActive On
ExpiresDefault "access plus 1 seconds"
ExpiresByType text/html "access plus 1 seconds"
ExpiresByType image/x-icon "access plus 2592000 seconds"
ExpiresByType image/gif "access plus 2592000 seconds"
ExpiresByType image/jpeg "access plus 2592000 seconds"
ExpiresByType image/png "access plus 2592000 seconds"
ExpiresByType text/css "access plus 604800 seconds"
ExpiresByType text/javascript "access plus 216000 seconds"
ExpiresByType application/x-javascript "access plus 216000 seconds"
</ifModule>
Пожмите JavaScript и CSS, да переключите jQuery на Google CDN.
anton.shevchuk.name/php/highload-optimization-for-children/
*чища свой гугл ридер в 2012, листая избранное в нем*