php
.zoneНыряем в кроличью нору: йинещбоос кодяроп меуритнараг
Давайте честно, проектировать надежные событийно-ориентированные системы сложно. Во-первых, ни один брокер сообщений не гарантирует вам exactly-once доставку сообщения, и вам придется добиваться этого собственными силами. Во-вторых, без хорошего понимания работы вашего брокера – а RabbitMQ – сложный брокер – вы не сможете настроить надежную обработку сообщений. Кроме того, есть еще одно важное свойство, проявляемое в событийно-ориентированных системах, которое не надо игнорировать, – это порядок сообщений. События всегда происходят в определенном порядке и должны в том же порядке быть обработаны консьюмерами, иначе ваша система может начать вести себя неожиданно.
Ныряем в кроличью нору
RabbitMQ является чуть ли не самым популярным решением для реализации очередей на сегодняшний день. И в то же время одним из самых сложных с точки зрения разработки и эксплуатации. Если вы поищите статьи по теме, с большой доли вероятности найдете материалы, в которых не погружаются дальше декларации простой очереди и публикации и получения сообщений из нее. И как только вы столкнетесь с проблемами, связанными с гарантиями доставки, реализацией отложенных сообщений, переполнения очередей, получения сообщений батчами, вам придется погрузиться в документацию или книги в поисках ответов на эти вопросы. Данная статья целиком основана на моем опыте работы с кроликом и содержит ответы на большинство популярных задач, решаемых этим брокером очередей. Во всех примерах будет использоваться PHP, однако то же самое почти с теми же терминами и определениями можно сделать на любом другом языке программирования.
Мой долгий путь до PHP-разработчика
Всем привет, меня зовут Владимир я хотел бы рассказать как именно я стал PHP-разработчиком, и в данный момент уже работаю около года. Так же хочу рассказать насколько сильно мне помог курс на данном сайте, если что извиняюсь за орфографию.
Как я устроился на работу PHP-разработчиком
Всем привет! Хотелось бы поделиться своей историей трудоустройства.
Статический анализ в PHP
Все мы привыкли к определению, что PHP – это язык со слабой динамической типизацией. В этом одновременно его преимущество и недостаток. Преимущества заключаются в том, что вы имеете больше возможностей по работе с динамическими данными: вызывать функции или объекты из строки, передавать и возвращать mixed типы и многое другое. В конце концов, только в PHP вы можете одновременно увидеть ужасные реализации паттерна ActiceRecord с динамическими свойствами (которые физически не определены в классе) и элегантные контейнеры внедрения зависимостей, которые дают значительно больше возможностей, чем аналогичные контейнеры в языках с сильной статической типизацией. Если говорить о недостатках, то это, разумеется, баги, связанные как раз с тем, что мы точно не знаем, что нам может вернуть, например, та же анонимная функция, каких типов параметры она принимает, какие ключи есть в массиве и так далее. По этой причине вам приходится обогащать свой код проверками в духе isset($data['key']) и тому подобное.
Как я устроился на работу после прохождения курса по PHP
Я искал и изучал много материала в интернете. Проходил много платных курсов.
Я всегда хотел быть web разработчиком, работать с PHP, MySQL, JS, HTML, CSS. В 2017 году Я купил курсы от geekbrains. Курсы неплохие, но, к сожалению, особого результата мне не дали. Помогли закончить университет, но не найти работу. Найти работу программиста - вот что мне нужно было от курсов и обучения, платного и бесплатного в интернете.
Я смотрел много бесплатных уроков на Ютубе, скачивал их с торрента, проходил курсы в html академии. 3-4 раза бросал, причем так, что как будто навсегда. Наконец я решил сменить направления с фронтенд разработки на бэкенд. Именно на фронтенд поначалу делал упор. На очередном собеседовании мне сказали что для фронта ты знаешь мало, а прошел я очень многое уже и фреймворки даже знал, сказали, посмотри в сторону backend.
Пробуем KPHP: реально ли его использовать в своих проектах
ВК - крупнейшая социальная сеть в России. Её код изначально был написан на PHP - языке, позволяющим быстро реализовывать функционал веб-сайтов. Однако, PHP является интерпретируемым языком, что само собой не есть хорошо для высоких нагрузок.
Как я применял курс ООП в PHP в реальной практике. Результат, выводы, сравнения
Вообще не люблю писать отзывы, ни хорошие, ни тем более плохие. Но вам не могу не написать.
Наконец-то пройден ООП в PHP! Я давно задумал проект для внутренних нужд своей компании. Не мог написать даже полурабочий прототип, все чего-то не понимал, не хватало знаний. Проект получался сложный, все время там что-то ломалось и т.д.
Как запускать долгоживущие скрипты на удаленном сервере
Зачастую приходится на удаленном сервере запускать скрипты вручную. К примеру, для миграции данных из одного хранилища в другое. Как обычно это происходит: заходим на сервак по ssh, запускаем скрипт, он там нам выводит какой-то прогресс (например, обработанные ID), после чего завершается. Однако, часто бывает так, что нужно запустить долгоживущий скрипт. Мне приходилось запускать скрипты, выполняющиеся несколько дней подряд. При этом, нельзя гарантировать что ssh-соединение не разорвётся из-за нестабильного интернета. И вот тут начинаются проблемы - мы можем не узнать, что скрипт корректно завершил свою работу. Не можем узнать, на каком ID он остановился, если произошла какая-то ошибка. О том, как эту проблему решить, мы и поговорим в этой статье.
Как сделать уведомления в телеграм на PHP
Привет! Сегодня поговорим о том, как можно отправить себе сообщение в телеграмме с помощью PHP. Это удобно использовать, когда нужно получить уведомление о каком-то событии, произошедшем на бэкенде. Например, я таким образом получаю уведомления о новых комментариях к урокам.