လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> PHP မှအကောင်အထည်ဖော်သည့်အီးမေးလ်ခြွင်းချက်ကိုင်တွယ်ခြင်း - ထိရောက်သောတန်းစီအခြေပြုဖြေရှင်းချက်

PHP မှအကောင်အထည်ဖော်သည့်အီးမေးလ်ခြွင်းချက်ကိုင်တွယ်ခြင်း - ထိရောက်သောတန်းစီအခြေပြုဖြေရှင်းချက်

M66 2025-08-07

PHP ခြွင်းချက်များကိုကိုင်တွယ်ရန် PHP ague အတွက်လက်တွေ့ကျတဲ့ဖြေရှင်းနည်း

အမှန်တကယ်ဖွံ့ဖြိုးတိုးတက်မှုတွင်အီးမေးလ်များကိုပို့ရန်ပျက်ကွက်ခြင်းသည်ယာယီဆာဗာပျက်ကွက်ခြင်း, ကွန်ယက်ပြတ်တောက်ခြင်း, SMTP တုံ့ပြန်မှုနှောင့်နှေးခြင်းစသည်တို့ဖြစ်သည်။

Beanstalkd Queue System ကို install လုပ်ပြီး configure လုပ်ပါ

PHP အီးမေးလ် Queue ကိုမည်သို့တည်ဆောက်ရမည်ကိုရှင်းပြရန် Beanstalkd ကိုဥပမာတစ်ခုအဖြစ်ဤဆောင်းပါးသည် BeanstalkaD ကိုယူပါ။

Beanstalkd ကိုပထမဆုံးထည့်သွင်းပါ။

 sudo apt-get install beanstalkd install

ဝန်ဆောင်မှုကိုစတင်ပါ။

 sudo systemctll beanstalkd စတင်ခဲ့သည်

PHP Beanstalkd extension ကို install လုပ်ပါ။

 PECL BEANSTARKD ကို Install လုပ်ပါ

PHPP.ini တွင် extension configuration ကိုထည့်ပါ။

 extension = beanstalkd.so

PHP 0 န်ဆောင်မှုကိုပြန်လည်စတင်ပါ။

 Sudo SystemTl PHPM-FPM ကို Restart

Php Mail Queue Processer Class ကိုရေးပါ

မေးလ်ပို့ခြင်းနှင့် Queue များကိုနားထောင်ရန်စာသင်ခန်းတစ်ခုဖန်တီးပါ။

Class Mailqueue
{
    $ beanstalk ကာကွယ်ထား;

    Public Function __Construction ()
    {
        $ THE-> BEANYSTARK = PHEANSENSTALKPALKEMENSTALK အသစ် ('127.0.0.1.1),
    }

    Public function sendemail ($ အီးမေးလ်, $ အကြောင်းအရာ, $ မက်ဆေ့ခ်ျ)
    {
        // မေးလ်အလုပ်များကို QUARK $ သို့ထည့်ပါ။ ဤ-> Beanstalk-> Usetube ('Mail_queue') -> ထည့်ပါ (JSONS_CENDEDED (json_entode)
            'Email' => $ အီးမေးလ်,
            'ဘာသာရပ်' => $ ဘာသာရပ်,
            'Message' => $ မက်ဆေ့ခ်ျ,
        ))))))
    }

    အများပြည်သူလုပ်ဆောင်ချက်လက်ကိုင် ()
    {
        // Queues များကိုနားထောင်ပြီးမေးလ်မေးလ်ကိုစာပို့ခြင်း
            $ Job = $ -> Beanstalk-> ReservefromTube ('Mail_queue');
            $ ဒေတာ = JSONS_Decode ($ အလုပ် -> GetData (), စစ်မှန်သော);

            // email ကိုယုတ္တိဗေဒပေးပို့ပါ။ $ Data Data ['Email'], $ ဒေတာ ['TheMeal'], $ ဒေတာ ['Message']);

            // task ကို $:> Beanstalk-> Delete ($ အလုပ်) ကိုဖျက်ပါ။
        }
    }
}

မေးလ်တန်းစီကိုအသုံးပြုပြီးမေးလ်ပို့ပါ

အီးမေးလ်ကိုတန်းစီရန်အတန်းရှိခေါ်ဆိုမှုနည်းလမ်းများ -

$ mailqueue = mailqueue အသစ် ();
$ mailqueue-> SendEmail ('မေးလ်အကြောင်းအရာ', 'Mail Tepart',

Queue လုပ်ငန်းများကိုစတင်ရန်ကြီးကြပ်ရေးမှူးကိုပြင်ဆင်ပါ

ကြီးကြပ်ရေးမှူးသည်တန်းစီစာရင်းကျမ်းပိုဒ်များကိုဆက်လက်လည်ပတ်ရန်ဆက်လက်လည်ပတ်ရန်သေချာစေရန်အတွက်အသုံးပြုသော Process Daemon Tool ကိုအသုံးပြုလေ့ရှိသည်။

[Program: Mail_queue_WATEWER]
command = php /path/pato/mail_queue_worker.php
directory = / / လမ်းကြောင်း / / စီမံကိန်း
အသုံးပြုသူ = www-data
Numprocs = 1
Autostart = စစ်မှန်တဲ့
Autorestart = စစ်မှန်တဲ့
PaulT_NAME =% (Program_name) s _% (program_num) 02d
redirect_stderR = စစ်မှန်တဲ့

နောက်ခံရှိအီးမေးလ်များကိုဆက်လက်နားထောင်ရန်နှင့်လုပ်ငန်းစဉ်ဆက်လုပ်ရန်ဖြစ်စဉ်ကိုသေချာစေရန်သင်၏ကိုယ်ပိုင်လုပ်ဆောင်မှုလမ်းကြောင်းကိုသင်၏ကိုယ်ပိုင်လုပ်ဆောင်မှုလမ်းကြောင်းဖြင့်အစားထိုးပါ

အကျဉ်းချုပ်

PHP မှတစ်ဆင့် Queue ယန္တရားနှင့်ပေါင်းစပ်ထားသော PHP မှတစ်ဆင့်အီးမေးလ်ပို့ခြင်းလုပ်ငန်းစဉ်တွင်ပုံမှန်မဟုတ်သောပြ problems နာများကိုထိရောက်စွာရှောင်ရှားနိုင်ပြီး system decoupling, ဤဆောင်းပါးသည် BeanstalkD ကိုဥပမာတစ်ခုအဖြစ်ယူပြီး installation configuration မှအပြည့်အစုံကိုမိတ်ဆက်ပေးပြီး PHP Mails အများစုကိုပို့ခြင်းအတွက်သင့်တော်သည်။

မကြာသေးမီ ဆောင်းပါးများ