PHP-BE1
311 subscribers
338 photos
11 videos
19 files
620 links
Канал по PHP, полезный и интересный контент для всех уровней.
По вопросам сотрудничества @cyberJohnny
Download Telegram
#junior #rest

Исчерпывающая статья на тему того, что такое REST. Вы узнаете многое про клиент-серверное общение, заголовки, http и посмотрите примеры реализаций.

https://www.codecademy.com/articles/what-is-rest
#advanced

Как TDD меняет отношение к тестированию приложений и немного полезных графиков о том, как происходи процесс TDD.

https://proglib.io/w/28da9918
ReleaseIt!.pdf
8.4 MB
#advanced #book

Книга о том, как проектировать и правильно эксплуатировать ПО. В книге рассматриваются различные паттерны и антипаттерны, ситуации, при которых нужно действовать быстро, популярные решения многих проблем: отказы, интеграция с API, ретраи, медленные запросы и многое другое. Также в книге рассматриваются примеры плохих решений: слишком много JS, большие Cookie, плохой SQL код, кэширование и т.д.
#advanced

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

https://medium.com/airbnb-engineering/avoiding-double-payments-in-a-distributed-payments-system-2981f6b070bb
#advanced

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

https://www.cloudflare.com/learning/ssl/what-is-an-ssl-certificate/
#advanced #video

Серия видео от Мартина Клепмана, автора книги "Высоконагруженные приложения", о распределенных системах, из которой вы узнаете:
1. Про RPC;
2. Об основных проблемах распределенных систем;
3. Как добиться отказоустойчивости;
4. Как синхронизировать время;
5. Про широковещательные оповещения;
7. О так называемой Eventual Consistency;
8. Двухфазовых коммитах и многом другом.

https://www.youtube.com/playlist?list=PLeKd45zvjcDFUEv_ohr_HdUFe97RItdiB
#advanced #video

Интервью с Мэтью Брауном, автором статического анализатора Psalm.

http://phptownhall.com/episode-81-the-book-of-psalm/
#advanced

Command Bus, или Message Bus, или Event Bus – как только ни называют шину сообщений. Удобный инструмент, который позволяет иметь единую точку входа для сообщений/команд/событий и абстрагироваться от выбора обработчика и их количества. Также некоторые продвинутые шины сообщений позволяют подключать очереди для асинхронной обработки сообщений. На данный момент для php доступны неколько реализаций:

1. https://github.com/SimpleBus/message-bus – шина от Матьяса Нобака. Достаточно скромная реализация, которая тем не менее послужила вдохновением для symfony/messenger.

2. https://github.com/onliner/command-bus – молодой command bus от onliner, очень перспективный проект с хорошим кодом и возможностью использовать брокеры очередей.

3. https://github.com/thephpleague/tactician – command bus от ребят из phpleague, из коробки не умеет откладывать сообщения, но можно подключить bernard, как советуют в документации https://tactician.thephpleague.com/plugins/bernard/.

https://github.com/symfony/messenger - мессенджер Symfony в представлении не нуждается, однако вызывает смешанные чувства. За сложностью реализации скрываются недочеты, некоторые неудобства, а в экспериментальной версии были баги. В целом, инструмент взрослый, можно попробовать.