#advanced
Библиотека для создания cron задач без модификации crontab.
https://github.com/jobbyphp/jobby
Библиотека для создания cron задач без модификации crontab.
https://github.com/jobbyphp/jobby
GitHub
GitHub - jobbyphp/jobby: Manage all your cron jobs without modifying crontab. Handles locking, logging, error emails, and more.
Manage all your cron jobs without modifying crontab. Handles locking, logging, error emails, and more. - jobbyphp/jobby
#advanced #nginx
Подробный справочник по nginx с примерами конфигураций и объяснением: что, зачем и когда использовать. Бросайте свой Apache и используйте современные инструменты.
https://www.freecodecamp.org/news/the-nginx-handbook/
Подробный справочник по nginx с примерами конфигураций и объяснением: что, зачем и когда использовать. Бросайте свой Apache и используйте современные инструменты.
https://www.freecodecamp.org/news/the-nginx-handbook/
freeCodeCamp.org
The NGINX Handbook – Learn NGINX for Beginners
A young Russian developer named Igor Sysoev was frustrated by older web servers' inability to handle more than 10 thousand concurrent requests. This is a problem referred to as the C10k problem. As an answer to this, he started working on a new web s...
#advanced #rabbitmq
О RabbitMQ в микросервисной архитектуре.
https://www.cloudamqp.com/blog/why-use-rabbitmq-in-a-microservice-architecture.html
О RabbitMQ в микросервисной архитектуре.
https://www.cloudamqp.com/blog/why-use-rabbitmq-in-a-microservice-architecture.html
CloudAMQP
Microservices - why use RabbitMQ? - CloudAMQP
Today’s monolithic systems are being replaced at a rapid pace by microservice architecture. To understand why this is the case requires a closer look into the core of message queuing and the benefits of using RabbitMQ as a message broker in a microservice…
#advanced #phpfpm
Подробный материал о том, что такое php-fpm, зачем он нужен и как оптимизировать его работу.
https://geekflare.com/php-fpm-optimization/
Подробный материал о том, что такое php-fpm, зачем он нужен и как оптимизировать его работу.
https://geekflare.com/php-fpm-optimization/
Geekflare
Optimizing PHP-FPM for High Performance
PHP is everywhere and is arguably the language most widely deployed on the Internet Web. However, it's not exactly known for its high-performance
#junior #rest
Исчерпывающая статья на тему того, что такое REST. Вы узнаете многое про клиент-серверное общение, заголовки, http и посмотрите примеры реализаций.
https://www.codecademy.com/articles/what-is-rest
Исчерпывающая статья на тему того, что такое REST. Вы узнаете многое про клиент-серверное общение, заголовки, http и посмотрите примеры реализаций.
https://www.codecademy.com/articles/what-is-rest
Codecademy
What is REST?
Learn about the REST (Representational State Transfer) paradigm and how rest architecture streamlines communication between web components.
#advanced #laravel
Большой туториал по laravel tinker.
https://beyondco.de/blog/the-ultimate-guide-to-php-artisan-tinker
Большой туториал по laravel tinker.
https://beyondco.de/blog/the-ultimate-guide-to-php-artisan-tinker
Tinkerwell
The ultimate guide to php artisan tinker
The tinker command is built into every Laravel application and you can use it to run code within the context of your application. Let's explore what this means.
#advanced
Как TDD меняет отношение к тестированию приложений и немного полезных графиков о том, как происходи процесс TDD.
https://proglib.io/w/28da9918
Как TDD меняет отношение к тестированию приложений и немного полезных графиков о том, как происходи процесс TDD.
https://proglib.io/w/28da9918
Medium
TDD changed my relationship with Software Testing
TDD has many benefits, but, for me, the best one is that you have to think how you are going to implement the code before doing it…
ReleaseIt!.pdf
8.4 MB
#advanced #book
Книга о том, как проектировать и правильно эксплуатировать ПО. В книге рассматриваются различные паттерны и антипаттерны, ситуации, при которых нужно действовать быстро, популярные решения многих проблем: отказы, интеграция с API, ретраи, медленные запросы и многое другое. Также в книге рассматриваются примеры плохих решений: слишком много JS, большие Cookie, плохой SQL код, кэширование и т.д.
Книга о том, как проектировать и правильно эксплуатировать ПО. В книге рассматриваются различные паттерны и антипаттерны, ситуации, при которых нужно действовать быстро, популярные решения многих проблем: отказы, интеграция с API, ретраи, медленные запросы и многое другое. Также в книге рассматриваются примеры плохих решений: слишком много JS, большие Cookie, плохой SQL код, кэширование и т.д.
#advanced
Статья для тех, кто часто вовлечен в процессы, связанные с оплатой. Автор рассматривает проблемы дублированных платежей и как их избежать.
https://medium.com/airbnb-engineering/avoiding-double-payments-in-a-distributed-payments-system-2981f6b070bb
Статья для тех, кто часто вовлечен в процессы, связанные с оплатой. Автор рассматривает проблемы дублированных платежей и как их избежать.
https://medium.com/airbnb-engineering/avoiding-double-payments-in-a-distributed-payments-system-2981f6b070bb
Medium
Avoiding Double Payments in a Distributed Payments System
How we built a generic idempotency framework to achieve eventual consistency and correctness across our payments micro-service…
#advanced
Список алгоритмов, используемых в стандартных функциях PHP.
https://stackoverflow.com/questions/2473989/list-of-big-o-for-php-functions/2484455#2484455
Список алгоритмов, используемых в стандартных функциях PHP.
https://stackoverflow.com/questions/2473989/list-of-big-o-for-php-functions/2484455#2484455
Stack Overflow
List of Big-O for PHP functions
After using PHP for a while now, I've noticed that not all built-in PHP functions are as fast as expected. Consider these two possible implementations of a function that finds if a number is prime ...
#advanced #testing
Очередная статья от Матьяса Нобака с вызывающим названием: «Не тестируйте конструкторы».
https://matthiasnoback.nl/2021/05/dont-test-constructors/
Очередная статья от Матьяса Нобака с вызывающим названием: «Не тестируйте конструкторы».
https://matthiasnoback.nl/2021/05/dont-test-constructors/
matthiasnoback.nl
Don't test constructors
Common constructor problems will be caught by your static analyzer | Exposing state breaks encapsulation | The test doesn't explain why you need the property assignments | Replace the constructor unit test with some higher-level test | What if I just want…
#advanced #laravel
Пагинация в Laravel с помощью курсора и офсета: за и против.
https://www.laravel-enlightn.com/blog/laravel-offset-vs-cursor-pagination/
Пагинация в Laravel с помощью курсора и офсета: за и против.
https://www.laravel-enlightn.com/blog/laravel-offset-vs-cursor-pagination/
Enlightn
Offset vs Cursor Pagination in Laravel [In-Depth Guide]
Curious to learn pagination strategies in Laravel? Here's an in-depth guide on offset and cursor pagination, and the pros and cons of each.
#advanced
Nginx vs. Apache: практические примеры отличий двух веб-серверов. А на чьей вы стороне?
https://www.digitalocean.com/community/tutorials/apache-vs-nginx-practical-considerations
Nginx vs. Apache: практические примеры отличий двух веб-серверов. А на чьей вы стороне?
https://www.digitalocean.com/community/tutorials/apache-vs-nginx-practical-considerations
Digitalocean
Apache vs Nginx: Practical Considerations | DigitalOcean
Apache and Nginx are the two most common open source web servers in the world. Together, they are responsible for serving over 50% of traffic on the internet…
#advanced #testing
Пишем тесты без использования фреймворков для создания моков.
https://blog.frankdejonge.nl/testing-without-mocking-frameworks/
Пишем тесты без использования фреймворков для создания моков.
https://blog.frankdejonge.nl/testing-without-mocking-frameworks/
Frank on Software
Testing without mocking frameworks.
By creating your own fakes, you can free yourself from using mocking frameworks. Find out how you can benefit from it.
#advanced
Статья об SSL-сертификатах, о том, как их установить, как получить бесплатный сертификат и зачем они вообще нужны. Кстати, внизу статьи есть ссылки на другие интересные публикации, связанные с безопасностью передаваемых данных: https, шифрование с помощью ключей, SSL рукопожатие и некоторые другие.
https://www.cloudflare.com/learning/ssl/what-is-an-ssl-certificate/
Статья об 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
Серия видео от Мартина Клепмана, автора книги "Высоконагруженные приложения", о распределенных системах, из которой вы узнаете:
1. Про RPC;
2. Об основных проблемах распределенных систем;
3. Как добиться отказоустойчивости;
4. Как синхронизировать время;
5. Про широковещательные оповещения;
7. О так называемой Eventual Consistency;
8. Двухфазовых коммитах и многом другом.
https://www.youtube.com/playlist?list=PLeKd45zvjcDFUEv_ohr_HdUFe97RItdiB
YouTube
Distributed Systems lecture series
Accompanying lecture notes: https://www.cl.cam.ac.uk/teaching/2122/ConcDisSys/dist-sys-notes.pdf These videos form an 8-lecture series on distributed systems...
#advanced #video
Интересное обсуждение на тему того, почему code review – это плохо.
https://www.youtube.com/watch?v=IDj3x__YZgE
Интересное обсуждение на тему того, почему code review – это плохо.
https://www.youtube.com/watch?v=IDj3x__YZgE
YouTube
CodeReview:долго, пл*хо, дорого /Ф. Дельгядо, В. Фабриченко, А. Агейченко, В. Дмитриев, В. Шароватов
Понравилось видео и хочешь узнать что-то еще про тимлидство? Забирай весь плейлист на https://is.gd/kChYnl или купи билет на следующий сезон конференции https://is.gd/auKynm
Подпишись на канал – каждую неделю мы выкладываем новые видео про то, как устроена…
Подпишись на канал – каждую неделю мы выкладываем новые видео про то, как устроена…
#advanced #video
Интервью с Мэтью Брауном, автором статического анализатора Psalm.
http://phptownhall.com/episode-81-the-book-of-psalm/
Интервью с Мэтью Брауном, автором статического анализатора Psalm.
http://phptownhall.com/episode-81-the-book-of-psalm/
#advanced #architecture
Домены, поддомены, ограниченные контексты и другие понятия из мира DDD в большой обзорной статье.
https://medium.com/nick-tune-tech-strategy-blog/domains-subdomain-problem-solution-space-in-ddd-clearly-defined-e0b49c7b586c
Домены, поддомены, ограниченные контексты и другие понятия из мира DDD в большой обзорной статье.
https://medium.com/nick-tune-tech-strategy-blog/domains-subdomain-problem-solution-space-in-ddd-clearly-defined-e0b49c7b586c
Medium
Domain, Subdomain, Bounded Context, Problem/Solution Space in DDD: Clearly Defined
Domain-Driven Design is an approach to designing systems, usually software, that emphasises creating a common language between domain…