راکت

مشکل ران شدن schedule در هاست اشتراکی

10 پاسخ

سلام به همه دوستان خوبم

در هاست اشتراکی سعی دارم صف خودمو با استفاده از schedule اجرا میکنم ولی هی میگه schedule برای ران وجود ندارد

         $schedule->command('queue:work')->everyMinute()->withoutOverlapping();
/usr/local/php-7.4/bin/php /home/****/domains/****/artisan schedule:run 

اگر کسی میدونه ممنون میشم راهنمایی کنه

ثبت پرسش جدید

پاسخ‌ها

10
moha li
moha li
@mohaligateway

تخصص: توسعه دهنده لاراول و Vue

سلام دوست عزیز.
احتمالا هاست شما cron job را پشتیبانی نمی کند.
@mamado

ممدو
ممدو
@mamado

تخصص: در حال یادگیری ...

@mohaligateway
مرسی از پاسخ دادنتون
پشتیبانی میکنه، ولی میزنه هیچ schedule برای اجرا وجود ندارد، ولی دستورات make و اینا رو براحتی میسازه، الان یه مشکل دیگ ای که داره کلا بخش queue کار نمیکنه و اصلا هیچی تو صف نمیره و مستقیم اجرا میشن /:
بردن پروژه روی هاست واقعا این دردسرا هم داره

شاید پاسخ شما همین‌جا باشد

moha li
moha li
@mohaligateway

تخصص: توسعه دهنده لاراول و Vue

خواهش می کنم
ببینید با راه حل زیر مشکل برطرف میشه.
1- درایور queue را database کنید. ممکنه بعضی از قسمت ها با مشکل روبرو بشن پس لطفا تست کنید.
2- اگر دسترسی به command دارید از طریق کد زیر cron job رو نصب کنید.

php /path/to/application/artisan queue:work --queue=high,default

@mamado

Alimotreb
Alimotreb
@Alimotreb

تخصص: کانفیگ سرور و برنامه نویس

سلام
@mamado

هاستتون دایرکت ادمین هست
سوییچ کنید روی سی پنل
این موارد براتون راحت تر خواهد بود
اگر هم خواستید اینو فیکس کنید به کسی که دسترسی روت داره بگید براتون کرون ست کنن

ممدو
ممدو
@mamado

تخصص: در حال یادگیری ...

@mohaligateway مشکل حل نشد هنوز پابرجاست
یه سوالی که داشتم ، چرا میگه schedule برای ران وجود نداره، من کامند را ساختم و حالا فقط اون کامند queue:send رو به فایل کرنل اضافه کردم و دستور schedule:run را اجرا کردم ، واقعا واسم عجیبه

@Alimotreb مرسی از پاسخ دادنتون
ولی من مشکلی با اجرای کرون جاب ندارم مشکل اینجاس میگه کرونی برای اجرا وجود نداره در صورتی که هس

فایل کرنل

         $schedule->command('queue:send')->everyMinute()->withoutOverlapping();

فایل کامند مد نظر

<?php

namespace App\Console\Commands;

use Illuminate\Console\Command;
use Illuminate\Support\Facades\Artisan;

class QueueWork extends Command
{
    /**
     * The name and signature of the console command.
     *
     * @var string
     */
    protected $signature = 'queue:send';

    /**
     * The console command description.
     *
     * @var string
     */
    protected $description = 'Command description';

    /**
     * Create a new command instance.
     *
     * @return void
     */
    public function __construct()
    {
        parent::__construct();
    }

    /**
     * Execute the console command.
     *
     * @return int
     */
    public function handle()
    {
        Artisan::call('queue:work');    
    }
}
moha li
moha li
@mohaligateway

تخصص: توسعه دهنده لاراول و Vue

سلام
راسیت مشکلی توی کار نمی بینم! این پروژه رو روی localhost هم دارید. اونجا تست کردید ؟ مشکل نداشته اونجا ؟
@mamado

ممدو
ممدو
@mamado

تخصص: در حال یادگیری ...

@mohaligateway تو لوکال به درستی انجام میشه
الان کلی ایمیل تو صف هست که موندم چیکار کنم
میتونم مستقیم خود صف رو اجرا کنم ولی به خود سرورا هاست فشار میاد سایت داون میشه
به پشتیبانی هم گفتم میگه کرون به درستی اجرا میشه مشکل از سمت شماس /:

moha li
moha li
@mohaligateway

تخصص: توسعه دهنده لاراول و Vue

ببینید این لینک رو کارتون رو راه می اندازه
https://laracasts.com/discuss/channels/laravel/free-queue-solution-for-shared-hosting
@mamado

ممدو
ممدو
@mamado

تخصص: در حال یادگیری ...

@mohaligateway نه متاسفانه :( واقعا درکش نمیکنم :|
دمت گرم که وقت میزاری و به مشکل من رسیدگی میکنی
@hesammousavi
استاد موسوی عزیز خوشحال میشم راهنماییا شما رو هم بشنوم

حسین بهرامی
حسین بهرامی
@hosseindid

تخصص: برنامه نویس

چون داخل هاست اشتراکی تابع PROC_OPEN در php بسته شده و اگر این تابع بسته باشه schedule کلا کار نمیکنه- شما باید مستقیما queue:work اجرا کنید داخل کران جاب که اونم پیشنهاد نمیشه و در کل به منابع سرور فشار میاره . در هاست های اشتراکی مشکل صف ها رایجه و خلی مواقع سرور ریسیت میشه یا دان میشه و جاب های شما از بین میره یا ران نمیشه.

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام