Есть проект, в котором используются фоновые обработчики очередей задач, например отправка писем. Эти фоновые обработчики работают в виде демоном. Каждый демон настроен в upstart'е, для того что бы в случае падения, система автоматически его запускала. Но есть небольшое неудобство, заключается оно в том, что для каждого демона нужно создавать отдельный конфиг апстарта вручную. ОС: Ubuntu.
Вопрос: есть ли для PHP какая либо утилита, которая позволяла бы в проекте создать конфиг файл, по которому бы демоны автоматически экспортировались в апстарт. Или что бы эта утилита сама отслеживала работу демонов и перезапускала их в случае падения.
Знаю что есть подобные утилиты в других ЯП например в руби это фореман, в ноде это например pm2. Но хотелоcь бы найти что то более "родное" именно для PHP.
Чего хотелось бы от этой утилиты:
- можно указывать кол-во инстансов демона
- авто-перезапуск через определенные промежутки времени (как по крону)
- авто-запуск при падении демона
- авто-запуск при старте ОС
- веб-интерфейс отображающий текущее потребление памяти и strout и strerr
Запускаю на виртуалке встроенный PHP сервер:
$ php -S 0.0.0.0:1144
PHP 5.5.29-1+deb.sury.org~trusty+3 Development Server started at Thu Dec 24 10:47:34 2015
Listening on http://0[dot]0[dot]0[dot]0:1144
Document root is /home/vagrant
Press Ctrl-C to quit.
Пытаюсь открыть на хост машине (т.е. основная ОС которая стоит на компе, не виртуалка) адрес: 127.0.0.1:1234
или
192.168.56.101:1234
Не открывается, скорее всего напутал с IP или портами, пока не понял в чем именно.
Эта команда как раз стучится на 80-й порт и показывает через какие промежуточные сервера проходит запрос.
Сделал баш скрипт, который переодически выполняет эту команду и логирует результаты. Запустил его на несколько часов, после чего проанализировал логи и выяснилось что запросы все таки сбрасывает API сервер к которому я обращаюсь. Т.к. через все промежуточные сервера зарос проходит стабильно, а при обрыве если посмотреть по логу он всегда происходил именно на конечном сервере. Так что команда помогла выяснить где именно обрывается запрос.
Всем привет. У меня есть сайт (ubuntu server, php, nginx). Он связан с другим сайтом и отправляет много POST запросов на API этого другого сайта. В день уходит примерно 10000 запросов. Из них 2000 не успешных. Отправляю запросы с помощью CURl:
При не успешных запросах в переменную $error ложится строка: Recv failure: Connection reset by peer
Я хочу выяснить из-за чего такая не стабильная связь. Скорее всего не стабильный интернет канал между моим сервером и сервером API.
В идеале было бы сделать скрипт, который бы отправил 10000 тестовых запросов с моего сервера на сервер API, и при этом подробно бы залогировал через какие промежуточные сервера шел запрос, и на каком оборвался в случае не успешного выполнения. Т.е. что бы лог был примерно в таком виде:
Всем привет, столкнулся с такой проблемой. На моем сайте настроены различные платежные системы, в том числе и WM. В основном платежи проходят успешно, но иногда при оплате выдается вот такое сообщение:
Платеж xxx.xx WM с кошелька Rxxxxxxxxxxxx на кошелек Rxxxxxxxxxxxx через merchant.webmoney.ru выполнен, но оповестить продавца не удалось. Ошибка:The server returned an invalid or unrecognized response; Пожалуйста обратитесь к продавцу!
Подскажите из-за чего такое может быть? Т.к. все остальные платежные системы работают хорошо - платежи проходят. А вот с WM иногда бывает такая проблема. Может кто-то с таким сталкивался... Писал в саппорт WebMoney и на форум, ответа не дают.