Many thanks, Dan. I am sorry I did not read the docs thoroughly enough.

BTW, I wonder how the others do to synchronize secrets(or whatever data) 
between workers. My current code still leave a small time window for 
workers to be out of sync when they refresh the secrets. I use the secrets 
for JWT sign/encrypt stuff, for security they are refreshed every n hours 
by a housekeeper script... and I don't want to get the secrets from Redis 
cache every time I use them.

Any hints will be much appreciated.
 
Rgds,
Michael


On Friday, February 23, 2018 at 4:18:32 PM UTC+8, Dan Book wrote:
>
> The startup method is run in the manager process before any forking. If 
> you want something to occur in each worker, you can run it in a 
> Mojo::IOLoop->next_tick callback. However note that this will also run in 
> each worker that is started later, to replace workers that reach their 
> max_accepts or stop responding.
> -Dan
>
> On Fri, Feb 23, 2018 at 2:48 AM, Michael Fung <hkuse...@gmail.com 
> <javascript:>> wrote:
>
>> Hi All,
>>
>> I run my app like:
>>
>> ./script/web_api prefork -w 4 -c 100 -l "http://[::]:8808";
>>
>> In the startup section, I run a recurring timer and log an entry to the 
>> log file. However, the '*web api started*' log entry does not repeat 4 
>> times.
>>
>>
>>     $log->info('web api started');
>>
>>     Mojo::IOLoop->recurring(60 => sub {
>>         $log->info($$.' - do refresh_secrets');
>>         $refresh_secrets->();
>>     });
>>
>>
>> Log excerpt:
>>
>> [Fri Feb 23 15:19:22 2018] [info] web api started
>> [Fri Feb 23 15:20:22 2018] [info] 9471 - do refresh_secrets
>> [Fri Feb 23 15:20:22 2018] [info] 9468 - do refresh_secrets
>> [Fri Feb 23 15:20:22 2018] [info] 9469 - do refresh_secrets
>> [Fri Feb 23 15:20:22 2018] [info] 9470 - do refresh_secrets
>>
>>
>> Am I doing something wrong? 
>>
>>
>> -- 
>> You received this message because you are subscribed to the Google Groups 
>> "Mojolicious" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to mojolicious...@googlegroups.com <javascript:>.
>> To post to this group, send email to mojol...@googlegroups.com 
>> <javascript:>.
>> Visit this group at https://groups.google.com/group/mojolicious.
>> For more options, visit https://groups.google.com/d/optout.
>>
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Mojolicious" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mojolicious+unsubscr...@googlegroups.com.
To post to this group, send email to mojolicious@googlegroups.com.
Visit this group at https://groups.google.com/group/mojolicious.
For more options, visit https://groups.google.com/d/optout.

Reply via email to