chaker Posted November 23, 2013 Share Posted November 23, 2013 Уважаемые специалисты! Столкнулся с проблемой долгой отправки сообщений на форум. Методом проб определил, что виновник «торжества» — отправка почты. Почта отправляется посредством SMTP сервера, который физически находится на соседнем сервере. Определил это отправив сообщение в раздел без подписчиков. Там сообщение ушло куда быстрее. В связи с вышеизложенными мыслями пришла идея отправлять письма раз в 5-10 минут с помощью cron задачи. Т.е. методика следующая:1. При отправке сообщений в базу при необходимости заносится запись где есть нужная информация.2. Раз в 5-10 минут запускается скрипт(можно совершенно отдельный от форумного движка), который получает из базы еще не отправленные письма и отправляет их. В случаи удачи помечает как отправленные. Перейду собственно к самому вопросу:В какую сторону копать чтоб реализовать этот замысел? Есть ли модификации движка уже реализующие эту задачу? Заранее спасибо за помощь! Link to comment Share on other sites More sharing options...
Zero108 Posted November 23, 2013 Share Posted November 23, 2013 Я не сильно в этом разбираюсь, но мне техподдержка как-то советывала, что если я не удовлетворен работой системного планировщика IPB по обработке отправки массовой корреспонденции, то я могу настроить обработку скрипта отправки с помощью серверного crona. Думаю, что обладая навыками в этом, нетрудно это организовать. Экспорт этой задачи системного планировщика IPB дает такой результат:task.xml Link to comment Share on other sites More sharing options...
Dmitriy427 Posted November 23, 2013 Share Posted November 23, 2013 Отправка почты, теоритически, должна происходить каждую минуту, но на слабопосещаемых форумах встроенный планировщик неэффективен. Гайд по подключению системного планировщика есть в АЦ -> Система -> Планировщик задач, кнопка "Использовать Cron". Задача, на котрую требуется настроить cron, называется "Отправка рассылки", найдёте её во вкладке планировщика "Пользователи". P.S. Ещё вот это почитайте - http://habrahabr.ru/post/137337/Что то такое должно в итоге получиться в crontab:10 * * * * /usr/bin/php -q /путь_к_директории_форума/interface/task.php 0d7a7af1ca4c90c4f18b77b0a09c9784 < /dev/null > /путь_к_директории_логов/myBulkmail.log & 2 Link to comment Share on other sites More sharing options...
chaker Posted November 23, 2013 Author Share Posted November 23, 2013 Вы меня скорее всего не правильно поняли. Имелась ввиду отправка мейлов подписчикам на тему/форум или при отправке ЛС. Link to comment Share on other sites More sharing options...
Dmitriy427 Posted November 23, 2013 Share Posted November 23, 2013 А для уведомлений есть две задачи во вкладке "Форум", ежедневные и еженедельные. Если выбрана опция "Немедленно", то отправка производится сразу после добавления темы/сообщения и планировщик не используется. Уведомления о ЛС тоже сразу отправляются, если в настройках уведомлений соответствующий чекбокс отмечен. 1 Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now