Search
Write a publication
Pull to refresh
23
0
Anton MegaPort @AlexTest

Magento, Telegram bots

Send message

Реализуем http/2 server push с помощью nghttp2

Reading time3 min
Views21K
Всем привет, сегодня я расскажу о том, как настроил server push на своём сайте и добился увеличения скорости рендеринга страниц. Для начала о том, что же такое server push в HTTP/2. Это технология, позволяющая серверу «протолкнуть» дополнительные данные клиенту, в момент запроса основного документа. То есть в обычной ситуации запрашивает браузер html-страничку, затем обрабатывает её и приходит к выводу, что ему для корректного отображения необходимо подгрузить дополнительные файлы: стили, скрипты, изображения. После чего скачивает их и отображает конечный результат. Server push позволяет отправить дополнительные файлы уже в момент получения основного документа, и они уже будут иметься в кэше, когда они потребуются браузеру. За счёт этого возрастает скорость загрузки сайта.

На этот раз схема будет следующая:



Читать дальше →

BTSync как средство бэкапа

Reading time6 min
Views25K
День добрый комрады. Спустя некоторое время, как я устроился системным администратором, я стал сталкиваться с такой бедой задачей:

Специфичный юзкейс, решаемый в данной статье


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

Итак, исходные данные:
  • Имя файла и его адрес: известны хотя бы примерно
  • Дата создания искомой версии файла: не известна
  • Бэкап ежедневный, инкрементальный или равный ему по ресурсоёмкости. Полный и разностный не используются ввиду ограниченности объёмов дискового пространства в хранилище/приемнике бэкапов.
Читать дальше →

Как opcache портил мою жизнь и тратил мои нервы

Reading time2 min
Views21K
Jackie-Chan_opcache

Все началось с апдейта php, давным давно и в этой же самой галактике. И с того момента меня преследовала одна мерзкая проблема, которая портила мне жизнь на протяжении достаточно длительного времени.
Читать дальше →

Падение криптовалюты Ethereum и сомнительное будущее децентрализованных организаций

Reading time5 min
Views17K
Децентрализованные организации (DAO: Decentralized autonomous organization) являются одной из главных инноваций, которые стали возможны благодаря блокчейну Ethereum, позволяющему хранить в себе так называемые "контракты". Каждый контракт имеет свой собственный адрес (по аналогии с адресами кошельков Bitcoin), а по сути — представляет из себя программу со сводом правил, который исполняется в случае проведения транзакции с ним. Главной особенностью DAO как организации является отсутствие посредников в лице человека — правила принятия решений, и, соответственно, распоряжения средствами организации принимаются при исполнении кода, использованного при создании этого контракта. Именно это и сыграло ключевую роль в нападении на крупнейшую децинтрализованную организацию — "The DAO" 17 июня 2016 года (подробнее об организации можно почитать в недавней статье на Geektimes).

image
Читать дальше →

ProxySQL — еще один mysql-proxy

Reading time9 min
Views46K
На хабре не раз упоминался данный инструмент для проксирования SQL-запросов, но, к сожалению, я не нашел ни одной статьи описывающей его работы, кроме того, документации на русском языке тоже не было найдено. Ну чтож, попробуем заполнить этот пробел. В статье мы рассмотрим структуру ProxySQL, конфигурирование и пример использования.

Читать дальше →

Отладка php функций с помощью phpdbg, как альтернатива Xdebug через IDE

Reading time2 min
Views15K
Иногда приходится работать с сервером через «кучу» файерволов, c локальным IP c репозиторием и т.д., и по этой причине довольно тяжело настроить XDebug для работы через IDE NetBeans (и прочих IDE). Приходится проще поднимать локально виртуальную машину. И если XDebug нужен лишь только для того, чтобы по быстрому ознакомиться с большим новым проектом (с кучей легаси кода) с последующей отладкой через error_log, то отлаживать отдельные скрипты довольно не всегда удобно в нем.
Читать дальше →

Персональная фильтрация информации в Интернете как борьба с пропагандой и манипуляцией общественным сознанием

Reading time3 min
Views7.2K


Раньше считалось, что люди, которые получают новостную информацию через интернет, в меньшей степени подвержены манипуляции общественным сознанием со стороны СМИ. Многие гордо заявляли — «Я телевизор не смотрю, а читаю новости в Интернете». И это звучало так, как будто человек знает правду, в отличие от тех, кто получает новости с помощью электронно-лучевой трубки и динамика телевизора. Может быть когда-то это было правдой, и в Интернете информация не подвергалась цензуре и пропаганде, во что я лично не верю. Но сегодня сложно найти источник новостной информации, который бы не пытался «скормить» народу бесполезный рейтинговый информационный шум.

Мне хотелось бы обсудить фильтрацию информации в Интернете. Добровольную. Пост исключительно дискуссионный, и те, кому интересен данный вопрос добро пожаловать под кат.
Читать дальше →

Альтернативы смерти: как победить старение

Reading time11 min
Views80K


Как современная молекулярная биология смотрит на феномен старения? Как пытаются старение изучать, есть ли надежды на замедление или даже остановку этого процесса? Этим вопросам была посвящена лекция биолога Александра Панчина, с которой он выступил на прошедшем в офисе Mail.Ru Group научно-популярном лектории Set Up.
Читать дальше →

Что нужно сделать перед тем, как выложить код открытого программного обеспечения

Reading time3 min
Views28K
Выложить проект с открытым программным кодом – это больше, чем выложить код в Интернете.

Интерес к программным продуктам с открытым исходным кодом растёт последние 10 лет. Linux стоит и в стиральных машинах, и в боевых дронах. Большинство программистов не могут представить свою жизнь без широкого ассортимента бесплатных и открытых инструментов в своем распоряжении.

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

Чем вы можете помочь своему проекту, чтобы его заметили?

Читать дальше →

Contactless Infusion X5: девайс, способный удаленно копировать данные 15 банковских карт в секунду

Reading time4 min
Views39K
Устройство работает на расстоянии до 8 сантиметров от целевой карты, клонирование ведется постоянно



В dark web поступило в продажу устройство, изготовленное группой The CC Buddies, которое способно клонировать данные 15 банковских карт в секунду. При этом само устройство имеет очень небольшой размер, и работает на расстояниях до 8 сантиметров от целевой карты. Конечно, это не так много. Но представьте, сколько карточек можно клонировать, если пройтись по посещаемому супермаркету, вагону метро, очередью в авиакассу или потолкаться в других подобных местах (клуб, концерт известной группы и т.п.).

Если раньше злоумышленники для этой же цели использовали довольно габаритные девайсы, которые можно было рассмотреть, то размеры этого устройства позволяют положить его в карман. А если кто-то и увидит гаджет в руках злоумышленника, вряд ли поймет, что это такое. Называется эта система X5, и предназначена она для копирования данных чипа, встроенного в современные банковские карты с RFID.
Читать дальше →

Два простых способа отсрочить принудительный апгрейд до Windows 10

Reading time5 min
Views16K
С момента выхода Windows 10 Microsoft с прогрессирующей настойчивостью пытается убедить пользователей, не желающих расставаться с привычными достоинствами предыдущих версий, что обновиться до 10 жизненно необходимо. Способы, которые выбираются для достижения этой цели зачастую оказываются, мягко говоря, не совсем корректными. А последствия последующих обновлений ОС, установленных «втихую» без любого предупреждения, как продемонстрировал показательный случай с африканской службой охраны животных, вполне могут оказаться фатальными. Сегодня мы расскажем, как избежать принудительного обновления ОС до Windows 10 в случае, если вы по каким-то своим соображениям на данный момент в этом не заинтересованы.

image
Подробнее

Самый черный материал на Земле не дает тонуть в воде алюминиевому диску

Reading time3 min
Views76K
Этот материал — тот самый Vantablack 2, который не поддаётся измерению спектрометром



Еще два года назад компания Surrey NanoSystems создала из нанотрубок самый черный материал на Земле, который получил название Vantablack (Vertically Aligned NanoTube Arrays). У этого материала был зафиксирован самый низкий коэффициент отражения среди всех прочих известных темных материалов — всего 0,036%. Для демонстрации свойств Vantablack его создатели сняли ролик с лазерной указкой. Пятно света, которое проходит по поверхности этого материала, просто пропадает. Все это похоже на черную дыру в миниатюре.

Уже в этом году специалисты той же компании представили новую версию Vantablack, Vantablack 2. Его коэффициент отражения пока не сообщается — просто потому, что чувствительность современных спектрометров слишком мала. В итоге коэффициент отражения остается неизвестным — нулю он не равен, это невозможно, но стремится к нему.
Читать дальше →

Знание физики помогает обыграть казино в рулетку

Reading time3 min
Views89K


Когда дело касается азартных игр, то казино всегда в выигрыше. Особенно в рулетке, где шансы игрока на победу особенно низки. Но из каждого правила есть исключения, тем более когда в игру вступает человек с отличными знаниями физики.

В 1970-е годы профессор математики, специалист по теории хаоса, общей теории систем и эконофизике Джей Дойн Фармер (J. Doyne Farmer) сконструировал известный гаджет, который настолько повышал шансы выигрыша в рулетку, что учёному запретили вход во все казино Невады.

Теперь коллега Фармера объяснил подробно, как работает это устройство.
Читать дальше →

Искусственная система превзошла натуральный лист по эффективности фотосинтеза

Reading time3 min
Views26K

Впервые учёным удалось эффективно совместить химический электролиз с деятельностью бактерий. Система производит спирт и другие вещества буквально «из воздуха»




Исследователи из Гарвардского университета создали бионическую систему, которая преобразует и сохраняет солнечную энергию в химическом виде, используя гибридный механизм из неорганических материалов и живых микроорганизмов. Такая схема помогает решить сразу две проблемы: 1) сохранение солнечной энергии, которая производится в избытке в светлое время суток и которой не хватает вечером; 2) устранение лишнего CO2 из атмосферы.

Новое изобретение превосходит по эффективности все существующие подобные разработки и даже превосходит фотосинтез в естественной природе. Научная статья опубликована 3 июня в журнале Science (doi:10.1126/science.aaf5039).
Читать дальше →

Новые виртуальные серверы OVH в сравнении с отечественными бюджетниками

Reading time6 min
Views18K
Компания OVH является мировым лидером в области услуг хостинга и в представлении не нуждается. В 2016 году хостер анонсировал новую линейку виртуальных серверов www.ovh.ie/vps/vps-ssd.xml. У которой новая платформа: теперь вместо процессоров AMD Opteron используются Intel Xeon E5v3, в качестве накопителей задействованы SSD диски, а система виртуализации OpenVZ заменена на KVM. Все это привело к тому, что новые виртуальные серверы VPS SSD 2016 v1 в сравнении с прошлыми конфигурациями Classic 2014 стали значительно быстрее.
Читать дальше →

MySQL – это лучшая NoSQL-система

Reading time6 min
Views18K
При рассмотрении сценариев использования NoSQL, таких как хранение пар ключ-значение, оказывается, что MySQL более предпочтительна с точки зрения производительности, легкости использования и стабильности. MySQL – это основательная система с обилием онлайн-материалов, которые охватывают все темы от основных операций и разбора ошибок до репликации и различных паттернов использования. Это дает MySQL преимущество перед более молодыми NoSQL-системами, у которых нет такого опыта.

За последние годы NoSQL-системы стали господствующим направлением. Многие разработчики видят в NoSQL-системах, таких как MongoDB, Cassandra, Redis или Hadoop, оптимальный вариант для построения своих приложений, считая их единой семьей продуктов, которая обесценивает старые SQL-системы.

Зачастую, в основе решения об использовании базы данных NoSQL лежит рекламная шумиха или ошибочное убеждение, что реляционные базы данных не могут обеспечить такую же производительность, как базы данных NoSQL. Когда доходит до выбора базы данных, инженеры часто упускают из виду эксплуатационные расходы, а также соображения стабильности и зрелости технологии. Чтобы узнать больше об ограничениях и изъянах различных NoSQL (а также SQL) систем, обратите внимание на серию статей проекта Jepsen, опубликованную на Aphyr.com.

В этой статье мы объясним, почему, по нашему мнению, использовать MySQL для хранения пар ключ-значение лучше, чем большинство специализированных NoSQL-систем, а также предоставим инструкции для использования MySQL.
Читать дальше →

PHP, статические переменные внутри методов класса и история одного бага

Reading time7 min
Views21K

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

Читать дальше →

Ручная установка Windows 7/8/8.1/10 в систему с загрузчиком GRUB2

Reading time9 min
Views128K
Наверняка почти у каждого пользователя ОС Linux и ОС Windows, а я имею в виду именно тех, у кого, в силу ряда причин, установлены обе системы, время от времени возникал вопрос: «А нельзя ли, черт возьми, придумать способ, с помощью которого можно было бы устанавливать эти системы в произвольном порядке? Без порчи настроек загрузчика?» Ведь если ставим сначала Windows а потом Linux всё хорошо — линуксовый загрузчик (например GRUB) обычно подхватывает bootmgr. Если ставить в обратном порядке то увы. Даже с использованием GPT + EFI. В случае с EFI нет опасности перезаписи MBR, зато таки есть один нюанс, который лично мне не нравится — установщик Windows в режиме EFI хоть и не перезаписывает сектора диска своим кодом, но зато переопределяет NVRAM, подсовывая туда путь к своему загрузчику. Так что функционал GBUB всё равно приходится восстанавливать. В настройках штатного установщика нет опций для кастомизации процесса установки загрузчика. А что если… не использовать стандартный установщик?! Ну, или почти не использовать…



И такой способ есть. И основан он на технологии установки Windows, которую мы имеем в её дистрибутивах начиная с «семерки». Способ работает для случая Windows версий 7/8/8.1/10, как в случае с MBR + BIOS системы, так в случае с EFI + GPT. Установить систему можно как в раздел HDD, так и на VHD. При этом функционал установщика нужен нам в общем-то для запуска программы настройки BCD-хранилища конфигурации загрузчика. Вместо установочного диска можно использовать загрузочный носитель на основе WinPE. Если бы утилитам bcdedit.exe и BootICE была *nix альтернатива, весь процесс развертывания системы можно было бы вообще выполнить в среде Linux.

Читать дальше →

Yum, шпаргалка

Reading time4 min
Views794K


Шпаргалка по работе с пакетным менеджером Yum (Yellowdog Updater, Modified), который используется в популярных Linux дистрибутивах: RedHat, CentOS, Scientific Linux (и других). В целях экономии места вывод команд не представлен.

Оглавление


Команды
Опции Yum
Пакет Yum-Utils
Конфигурационные файлы
Плагины
Работа через прокси
Читать дальше →

Как набрать в IT-стартап команду разработки, которая действительно сделает продукт?

Reading time15 min
Views33K
Итак, вы решили дать миру новый программный продукт или сервис. У вас есть продуманная идея, видение, понятное позиционирование, несколько первых потенциальных клиентов и даже бюджет. В общем, дело за малым – собрать команду разработчиков и сделать продукт.

В этой статье мы рассмотрим правильные и неправильные решения при подборе людей, их мотивации и сохранении команды – вашего нового актива. Речь пойдет не о том, как набрать лучших людей и построить совершенную машину разработки, а о том, какие грубые ошибки в подборе людей и организации их работы могут погубить ваше начинание.
Читать дальше →

Information

Rating
Does not participate
Registered
Activity