You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I'm working on a website with multiple editors, aiming for high scalability. We're using Statamic along with this package to generate the static site and serve it via S3. It works beautifully, is highly secure, and scalable. However, there's a caveat: the developers have to run the command php please ssg:generate to publish changes, which cannot be executed by a site editor.
So, I'm in the process of creating a utility to allow site editors to initiate the static site generation. Since the generation process takes approximately 15 seconds, I'd like to trigger a queued job when a site editor clicks a button.
However, when handling the job with Horizon or using the database as the queue driver, the generation process takes over 45 minutes. When the queue driver is set to sync, it only takes around 15 seconds again.
I've attempted to debug the issue, and it seems like the delay is occurring at Page.php:58. However, I'm unsure where to proceed from here.
The job:
<?phpnamespaceApp\Jobs;
useIlluminate\Bus\Queueable;
useIlluminate\Contracts\Queue\ShouldBeUnique;
useIlluminate\Contracts\Queue\ShouldQueue;
useIlluminate\Foundation\Bus\Dispatchable;
useIlluminate\Queue\InteractsWithQueue;
useStatamic\StaticSite\Generator;
classStaticSiteGenerateimplementsShouldQueue
{
useDispatchable, InteractsWithQueue, Queueable;
/** * The number of seconds the job can run before timing out. * * @var int */public$timeout = 300;
/** * @var Generator */protected$generator;
/** * @var int */protected$workers = 2;
publicfunctionhandle(Generator$generator): void
{
$generator
->workers($this->workers)
->generate('*');
}
}
Any ideas?
The text was updated successfully, but these errors were encountered:
Hi all,
I'm working on a website with multiple editors, aiming for high scalability. We're using Statamic along with this package to generate the static site and serve it via S3. It works beautifully, is highly secure, and scalable. However, there's a caveat: the developers have to run the command
php please ssg:generate
to publish changes, which cannot be executed by a site editor.So, I'm in the process of creating a utility to allow site editors to initiate the static site generation. Since the generation process takes approximately 15 seconds, I'd like to trigger a queued job when a site editor clicks a button.
However, when handling the job with Horizon or using the database as the queue driver, the generation process takes over 45 minutes. When the queue driver is set to sync, it only takes around 15 seconds again.
I've attempted to debug the issue, and it seems like the delay is occurring at Page.php:58. However, I'm unsure where to proceed from here.
The job:
Any ideas?
The text was updated successfully, but these errors were encountered: