» Материалы за Октябрь 2019 года

 

Пробуем preload (PHP 7.4) и RoadRunner

Автор: admin от Сегодня, 14:25, посмотрело: 0

Пробуем preload (PHP 7.4) и RoadRunner


Привет, Хабр! 



Мы часто пишем и говорим о производительности PHP: как мы ей занимаемся в целом, как мы сэкономили 1 млн долларов при переходе на PHP 7.0, а также переводим разные материалы на эту тему. Это вызвано тем, что аудитория наших продуктов растёт, а масштабирование PHP-бэкенда при помощи железа сопряжено со значительными затратами — у нас 600 серверов с PHP-FPM. Поэтому инвестирование времени в оптимизацию для нас выгодно.



Прежде мы говорили в основном об обычных и уже устоявшихся способах работы с производительностью. Но сообщество PHP не дремлет! В PHP 8 появится JIT, в PHP 7.4 — preload, а за пределами core-разработки PHP развиваются фреймворки, подразумевающие работу PHP как демона. Пора поэкспериментировать с чем-то новым и посмотреть, что это может нам дать.



Так как до релиза PHP 8 ещё далеко, а асинхронные фреймворки плохо подходят для наших задач (почему — расскажу ниже), сегодня остановимся на preload, который появится в PHP 7.4, и фреймворке для демонизации PHP — RoadRunner.



Это текстовая версия моего доклада с Badoo PHP Meetup #3. Видео всех выступлений мы собрали в этом посте.

Категория: Программирование

 

Как сохранить права на разработки по заказу

Автор: admin от Сегодня, 12:25, посмотрело: 5

Как сохранить права на разработки по заказу



Проблема основана на положениях закона, согласно которым права на ПО и прочие произведения, созданные по заказу, принадлежат заказчику, если договором между подрядчиком (исполнителем) и заказчиком не предусмотрено иное (ст.1296 ГК РФ).



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



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

Категория: Веб-разработка

 

Кто он — убийца JavaScript?

Автор: admin от Сегодня, 11:55, посмотрело: 5

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



Десять лет назад очевидно было то, что javascript имеет все шансы, так сказать, править миром. За эту честь сражались и другие платформы — такие, как Java, Flash и Silverlight. Всем этим трём платформам нужны, для работы в браузерах, специальные плагины. Все три меняют HTML-подход к формированию интерфейсов на что-то другое. Это позволило им уйти далеко вперёд от javascript в плане возможностей. Например — они умели проигрывать видео, выводить анимацию, рисовать что-то на экране. Всё это другие платформы поддерживали задолго до появления стандартного тега codev_0. Но всё это стало причиной их краха. Так, когда в мире начался бум мобильного интернета, и когда это было учтено в HTML, другие платформы оказались не у дел.



Кто он — убийца JavaScript?



Ирония есть и в том, что происходит сейчас. В то самое время, когда javascript царствует в мире веб-разработки, появился один проект, вроде бы не особенно масштабный, который, когда-нибудь в будущем, способен стать убийцей javascript. То, о чём мы тут говорим, началось с экспериментальной технологии asm.js. Как это может выглядеть? Прежде чем ответить на этот вопрос — давайте немного притормозим и поговорим о современном положении дел.

Категория: Веб-разработка

 

Как я разрабатываю и тестирую API со своим «велосипедом» PieceofScript

Автор: admin от Сегодня, 11:25, посмотрело: 5

PieceofScript — простой язык для написания сценариев автоматического тестирования HTTP JSON API.



PieceofScript позволяет:




  • описывать методы API в формате YAML, с названием метода на почти естественном языке, что удобно для чтения тестов

  • достаточно гибко описывать модели в формате YAML и генерировать по ним рандомные данные

  • писать сложные сценарии вызовов API на легкочитаемом языке с несложным синтаксисом

  • получать результаты тестирования в форматах JUnit и HTML



Я написал этот «велосипед» потому что меня вгонял в уныние интерфейс SoapUI. Хотелось просто и понятно описывать тесты в текстовом редакторе без специального GUI. Кроме того, git плохо переваривает огромный xml-файл, который выдает SoapUI, поэтому тесты на конкретную задачу сложно положить в той же ветке, где сделана сама задача. Интерфейс Postman куда приятнее, но при разработке много времени уходит на составление/изменение там запросов и повторение их в нужной последовательности. Это хотелось автоматизировать. Я изучил еще и другие инструменты тестирования, у каждого был "фатальный недостаток", поэтому в припадке NIH-синдрома я открыл IDE.



Вот что из этого вышло.



Как я разрабатываю и тестирую API со своим «велосипедом» PieceofScript

Категория: Программирование

 

Заделываем дыры в кластере Kubernetes. Доклад и расшифровка с DevOpsConf

Автор: admin от Сегодня, 11:20, посмотрело: 5

Павел Селиванов, архитектор решений Southbridge и преподаватель Слёрма, выступил с докладом на DevOpsConf 2019. Этот доклад — часть одной из тем углубленного курса по Kubernetes «Слёрм Мега».



Слёрм Базовый: введение в Kubernetes проходит в Москве 18-20 ноября.

Слёрм Мега: заглядываем под капот Kubernetes — Москва, 22-24 ноября.

Слёрм Онлайн: оба курса по Kubernetes доступен всегда.





Под катом — расшифровка доклада.

Категория: Программирование

 

От поиска идеи, до готового приложения

Автор: admin от Сегодня, 11:20, посмотрело: 4

От поиска идеи, до готового приложения



Наверно многие задумывались над тем, как можно реализовать свои знания в готовом продукте. Кто-то больше, кто то меньше потратил на это времени. Хочу поделиться с сообществом своим опытом и видением, как это надо делать правильно, но не всегда получается.

Категория: Facebook

 

Где ошибка, Билли? Нам нужна ошибка…

Автор: admin от Сегодня, 11:20, посмотрело: 5

Где ошибка, Билли? Нам нужна ошибка…



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

Категория: Программирование

 

Лучшие продукты отталкиваются от настоящих проблем: Intercom про Jobs-to-be-Done. Часть 3, заключительная

Автор: admin от Сегодня, 11:15, посмотрело: 4

Лучшие продукты отталкиваются от настоящих проблем: Intercom про Jobs-to-be-Done. Часть 3, заключительная


Заключительная часть о том, как концепция Jobs-to-be-Done меняет принципы создания и улучшения IT-продукта. Третья часть перевода книги «Intercom про Jobs-to-be-Done». Главы с седьмой по девятую.



Первая часть

Вторая часть

Категория: Game Development

 

Интерактивное веб-приложение без программирования? Легко! Mavo вам в руки

Автор: admin от Сегодня, 11:15, посмотрело: 4

Вы владеете HTML и CSS и умеете создавать простые (и не очень) статические веб-страницы, а хотели бы вдохнуть в них больше «жизни» и интерактивности? У вас есть работы (картины, фотографии, стихи, коллекция марок и т. п.), которыми вам хотелось бы поделиться с миром, но создание сайта-портфолио или блога, куда можно их разместить и без лишних усилий обновлять, вам не под силу? Или мечтаете вести дневник путешественника, или собирать необычные кулинарные рецепты, или отслеживать свою фитнес-активность и делать всё это онлайн на собственном сайте? Возможно, у вас есть любимый питомец, уход за которым требует особых процедур, и их обязательно нужно отслеживать и оперативно фиксировать? 



Но от упоминания javascript вас бросает в лёгкую (а иногда и не очень) дрожь, а количество технологий и концепций, которыми нужно овладеть, чтобы реализовать ваши задумки, приводит вас в замешательство и отчаяние? В итоге вы задаётесь вопросами: «Почему веб-программирование должно быть таким трудным? Неужели нельзя что-то придумать, чтобы сделать его проще?». 



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



Интерактивное веб-приложение без программирования? Легко! Mavo вам в рукиАвтор оригинальных картинок: Mart Virkus (toggl.com)



Маститые и умудрённые опытом фронтенд-разработчики, не спешите закрывать статью с криками, что сейчас тут будут что-то «втирать» новичкам и вам здесь делать нечего. Я уверен, вы тоже сможете почерпнуть для себя что-то полезное. Главное, помните: если что-то станет простым для новичков, это автоматически станет простым для всех! А значит, в какой-то мере упростит жизнь и вам. Это неплохо, согласитесь?

Категория: Game Development

 

Как мы выбирали компонентную базу для умного дома: о датчиках и контроллере

Автор: admin от Сегодня, 11:15, посмотрело: 4

Kauri разрабатывает оборудование для IoT-решений и пишет под него софт. Недавно мы успешно протестировали работу сети Zigbee при помощи отладочной платы и датчиков, поэтому составили небольшой гид.



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



Как мы выбирали компонентную базу для умного дома: о датчиках и контроллере

Категория: Game Development

 
Назад Вперед