Техническая оптимизация проектов (для злых программеров)

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

Приведу простой пример – нубы очень любят пофлеймить на тему того, как лучше делать конкатенацию строк – “маша $otshila васю” или “васе все равно “.$poh.” на Машу” и начинаются безумные холивары на тему производительности и так далее. А по большому счету – да какая хрен разница сгенерится страница на 5 миллисекунд быстрее или нет ? В общем надеюсь моя позиция по этому поводу ясна :twisted:

Теперь перейдем к конкретике – волшебный проект gickr.com

Говорю сразу, код был написан не мной, а моим рыжим сотоварищем, и после просмотра кода этого самого товарища мне хотелось придушить :) Но код работал, гифки генерились, и это было самое главное! Жило все это добро на VPS от паршивой компании Dreamhost и в какой-то момент нам просто вырубили imagemagick с формулировкой “ребята, вы ЧО ! охренели создавать 100 процессов imagemagick и нагружать наш суперпупермегамногоядерный Xeon на 99%”. И вот тут-то и началась оптимизация.

Шаг номер 1 – Найди bottle neck (то бишь узкое место)

Главное выяснить что отжирает больше всего процессорного времени, это делается простыми засечками типа:

function CurTime() {
list($usec, $sec) = explode(' ', microtime());
$time2 = (double) $usec + (double) $sec;
if(!defined("__TIME__"))define("__TIME__", $time2);
$l = round($time2 - __TIME__, 6);
return $l;
}
CurTime();
тут куча кода ...
echo CurTime();

Шаг номер 2 – заоптимизируй это самое узкое место нахрен

В моем случае выяснилось две вещи:

1) Если ставить ватермарк на каждый кадр гифа, а потом уже собирать сам гиф, то это получается в 3 раза быстрее чем ставить ватермарк на уже готовый гиф! В общем если подумать почему так, то все становится ясно, ведь чтобы поставить ватермарк на готовый гиф, надо его опять разобрать на кадры, шлепнуть лого и собрать опять.

2) Если 500 человек захотят одновременно сделать большие гифы, то они все равно положат почти любой сервак.

Первая проблема решилась понятно как, а от второго была придумана совершенно тупая защита: я стал хранить текущие процессы по обработке в базе, и теперь разрешаю обрабатывать одновременно не больше 4 гифоф, а остальные идут в очередь, вот и вся история.

Шаг номер 3 – заоптимизируй все остальное если не в лом и делать нечего :)

Ну а тут открывается простор для полета фантазии и действий, можно бесконечно оптимизировать БД и запросы к ней, можно например поставить APC и кэшировать популярные запросы, можно вообще присобачить HTML кэш :) Помнится когда я сделал одну системку, на которой сейчас работает 49 мемберок одной известной в узких кругах партнерки, меня только HTML кэш и спас (и это все на кластере из 8 машин)

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

P.S. Вообще, все ведь уже поняли что все самое интересное на этом блоге происходит именно в комментах ? :)

помоги Винни за пирожок или опять о разном

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

1) Байка про CLX

CLX.ru – такое же унылое говно, каким оно было 6 лет назад (если не хуже). Я помню 2001 год, когда я там выкупал баннерные показы миллионами и все такое, и вот я снова решил попробовать добыть там дешевого трафа, но на этот раз с оплатой за клик. Выяснилось что интерфейс за 6 лет стал еще хуже чем был (хотя казалось бы куда уж хуже), да и реального толку от сервиса стало ненамного больше. В планах было выкупать стоматологический траф максимум по 10 центов, а еще лучше от пяти и меньше. Однако как ни странно 70% площадок норовят загнуть цену в 50 и более центов, а некоторые особо наглые отморозки вообще хотят $2 за клик (это как в сапе народ с ТИЦ = 10 любит поднять цену на страницу 3го уровня с 0.03 в месяц до 22 баксов). Поэтому список площадок резко сужается и реальных кликов у меня сейчас от силы 3-5 в день. Толку от них пока никакого, 30 CLX кликов сконвертились в 1 клик на Директе, и это типа работа в убыток … выводы правда пока делать рано, пробую играться с самими объвлениями, посмотрим к середине следующей недели на финальный результат.

2) Кубик-рубик

Для тех кто до сих пор не читал волшебно-все-разжевывающую статью про кубик – читать. А собственно кубик я пытаюсь доить, но меня так заломало тратить деньги в никуда закидывая их на Адвордс или 3фн или Эво, что пришлось использовать фейсбук :twisted: , только тсссс, никому не палите эту тему ;)

3) В здоровом теле здоровое все

Блоггеры чаще начинают задумываться о своем здоровье, вот и мне пора наконец оторвать задницу от кресла и продолжить кататься на велосипеде. + скоро приедет мой подарок на День Рождения, который я сам себе сделал :) – огромный качкокомплекс, пора возвращать былую форму. Да и погода радует

weather.png

А вы что делаете для своего здоровья ?

4) Самое главное – нужен софт для рассылок

Заклинаю вас, посоветуйте отличный софт для рассылок, пусть даже платный, пусть даже дорогой. У меня накопилась база на 90К юзеров на гикре, и пришло время разослать им немного новостей (ну и офферов впридачу :twisted:) Хочется найти волшебный софт, который не отсылает письма на съедение спам-фильтрам, который ведет как можно более подробную статистику по просмотрам, кликам по ссылкам внутри письма и так далее. Знаю только про епочту, на вид она очень даже ничего, но смущает то, что сам рассылатель – десктопное приложение. Я ж помру с ноутбука 90К писем рассылать, нужен надежный серверный вариант. В общем надеюсь на ваши советы, главному советчику с меня какой-нибудь вкусный пирожок, в долгу не останусь.

P.S. в комментах пожалуйста отпишитесь стоит ли мне кошмарить вас подробностями о жизни в Испании чуть больше :) я просто в сомнениях интересно это кому-то или всем только расскажи как денег срубить :)

разное про PPC + конкурс

Про арбитраж русского трафика:

  1. Никогда не покупайте траф на tak.ru ! (и не продавайте его там тем более), клики есть, но все вместе это тупо не окупается …
  2. Click-click.ru – хамские менеджеры, якобы регистрация новых рекламодателей закрыта, попытки там что-то купить ни к чему не привели

Про волшебную PPC систему для CA + US трафа:

ads-click.com – это чудесно !

Почему чудесно ? Потому что есть:

а) Много новых форматов рекламы

  • Облако тэгов
  • Внутритекстовые ссылки
  • RSS реклама
  • Ну и обычные контекстные объявления

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

в) Настройка формата и цветов рекламы прямо в админке, а не в коде. То есть в любой момент из админки можно поменять отображение любого объявления.

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

д) минималка 50 баксов, выплаты 2 раза в месяц на пэйпал или ваер

Вот пример облака:

Правда мило смотрится ? никогда и не подумаешь что это реклама :twisted:

В общем монетизируйте на здоровье, моего личного интереса тут нет, потому что там нет реферальской программы :(

Про конкурс:

Это не мой, это седьмой слон делает, наш бегун-гуру. Но мне очень понравилась возможность и поделиться опытом и немного подзаработать :evil: . Общие условия, и условия первого этапа. Так что народ, не стесняемся участвовать, давайте писать материалы.

Напоследок: подписался на блог SEO-analiz с его ведущим Kip’ом, очень советую, сам нашел для себя много готовых идей, скриптов, и поводов задуматься :)

Яндекс.Вебмастер – не сильно полезная вещь

Пока в блогах гуляют неинформативные скриншоты нового сервиса Яндекс.Вебмастер, я им уже пользуюсь :)

На самом деле ничего сильно полезного для себя я там не нашел, разве что дата последнего захода яндекс-бота и список ошибок индексации. Вот когда эта поделка дорастет хотя бы до уровня аналогичного сервиса от гугла, тогда и будем говорить спасибо Яндексу.

Тройка скриншотов:

1.png 2.png 3.png

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

P.S. За инвайт спасибо Асе Патрышевой

shoppingads – нормальная тема

Недавно пришло письмо от TLA про новую PPC – ShoppingAds, решил попробовать.

Есть у меня на гикре одно самое отстойное рекламное место в самом низу справа, вот там и появился новый баннер, да еще и в ротации на 50% с дейтингом.

И знаете, я приятно удивлен – 24 клика, примерно 30К показов, $4.40 денег

Да-да, CTR совершенно отвратный, но ведь и реклама в самой заднице, и кейворды для товаров я вообще не настраивал. Главное – цена за клик, она очень вкусная для меня, потому что на гикре обычно выше 7-8 центов биды не бывают (на адсенсе). Так что теперь я думаю какие товары могут быть интересны моим американским детям, и куды бы запихнуть этот блок без ущерба основному доходу.

Партнерка платит в пэйпал, но я думаю что кому надо, тот найдет способ обменять деньги через обменники.
Реф. ссылка там весьма оригинальная :)


Вот эта маленькая ссылочка внизу и есть оно, так что прошу пройти к регистрации :)

Кстати на тему гикра я в грустях, мы никак не можем перейти рубеж в 300 баксов по будням, вчера было 296 – опять недотянули …

Из интересного :

Daminc поднимает больную тему управления деньгами, а Holly выкладывает накипевшее про бомжей (и я с ним абсолютно согласен)

На этот раз пока все, на подходе тесты других интересных партнерок :)

UPD: invitation code – TLAPUB, кстати для читающих в ридере – там не видно рекламу со ссылкой, так что приходите сюда, на блог