четверг, 28 мая 2020 г.

https://regex101.com/

      Хочется сказать огромное спасибо ребятам которые сделали https://regex101.com/. Я думаю трудно даже представить сколько труда было вбухано в создание этого инструмента. Но получился реально классный инструмент для отладки регулярок. Он мне тонну времени с экономил. 

PHP: Асинхронность и производительность

     Никогда не думал что буду когда-нибудь снова писать про PHP. Но Жизнь напоминает что никогда нельзя говорить никогда. Итак: последния веяния программистской моды докатились с 5-ти летним опозданием до PHP. Лучше поздно чем никогда, заметит PHP программист и с этим трудно не согласится. 
      Если погуглить "promises in php" то реализация https://github.com/guzzle/promises окажется на 3-ем месте по популярности. Ничего удивительного что одноименный HTTP клиент вызывает у php-коммьюнити дикий восторг. Асинхронный, на промисах... и похеру что внутри сидит все тот же curl_multi_exec(если быть совсем честным не только он. есть еще варианты fall-back-а в случае недоступности curl).  В общем с точки зрения архитектуры GuzzleHTTP и в правду не плох. Но вот производительность он убивает напрочь. Я заменил в одном из нагруженных хенджлеров GuzzleHTTP на примитивный синхронный HTTP клиент(тоже curl based) и получил прирост примерно в 2 раза меньшее время ответа. Реально вместо 1000-1200ms стало 500-600ms. Отсюда вывод - не надо усложнять. Если вам нужно сделать всего 1-2 HTTP запроса - вам не нужна асинхронность, промисы и прочие красивые штуки. И если вам важно время ответа - то асинхронность вам скорее всего тоже не нужна. Асинхронность - это оптимизация пропускной способности, возможность одновременно сделать 20 запросов. А если вам нужно только 2 - сделайте их последовательно и будет сильно быстрее(как это не парадоксально).
      И вообще кажется я становлюсь ретроградом. Но это пока не точно.  Возможно просто новые технологии гавно. 

понедельник, 25 мая 2020 г.

Философии пост

        На меня редко такое находит, но сегодня решил по-философствовать. Как водится на злобу дня - covid и все вот это. Когда все это начиналось, я думал - надо на пару недель зажмурится - и весь этот херовый сон пройдет, и все будет все как прежде. Как в детстве школу закрывали на пару недель из-за эпидемии гриппа, так и сейчас будет. Сейчас я склонен думать что не пройдет, и что этот covid останется в наших головах на всегда. Скорее всего не в виде конкретного заболевания, а в виде паранойи. Такой пост-травматический синдром ковидника, и опытного сидельца дома. Вообще меня не покаидает ощущение что мы сейчас живем в эпоху каких-то глобальных перемен, что вся заварушка только начинается.
            Интересно как по разному люди реагируют на эту ситуацию. Кто-то запасается всем в прок и побольше. Начиная с туалетной бумаги и заканчивая лимоном. Кто-то перечитал столько информации по разным вирусам что им впору на медфак поступать, причем сразу на второй курс. Кто-то стал параноить и безжалостно осуждать "идиотов" выходящих на улицу без костюма хим защиты и противогаза. Кто-то наоборот насрал на все и продолжает бухать. 
              Ну а я купил себе дом и теперь развлекаюсь с этим конструктором для больших мальчиков не доигравших в детстве в Lego. Среди моих развлечений, конопатка, сборка бензопилы, приведение в чувство бензотриммера неопознанного китайского производителя у которого половина комплектующих включая инструкцию куда-то просрали. Из плюсов - просыпаться под пение птиц по утрам и свежайший воздух. В общем весь этот covid мне начинает нравится. Интернет бы только провести в мою избушку - вообще цены ей не будет :-)