I setup szybkie Mojolicious serwer tak:Perl Mojolicious - Jak sprawić, by obsługiwał wiele połączeń naraz?
use Mojolicious::Lite;
get '/' => sub {
my $self = shift;
sleep 5; #sleep here, I'm testing multiple connections at once
$self->render_text('Hello World!');
};
app->start;
I wtedy zaczynają go z: perl Mojolicious.pl daemon --listen=https://127.0.0.1:3000
Problem jest, jeśli uruchomię tę komendę dwutorowo:
time curl https://127.0.0.1:3000/ -k
Wydaje używać tylko jednego wątku dla żądań, ponieważ jeśli wykonam wiele żądań naraz, mogą one trwać znacznie dłużej niż 5 sekund. To tak, jakby wszyscy byli w kolejce.
Czy tu czegoś brakuje? Chcę używać Mojolicous, ale tylko wtedy, gdy może obsłużyć więcej niż jednego klienta naraz.
Więc jeśli ustawię to, aby uruchomić na przykład w Apache. W ogóle nie miałby problemu? Właśnie zauważyłem, że wywołałem wywołanie 'fork', jednak działa ono pod demonem. – jonathanpeppers
Dodatkowe pytanie, czy to jest ustawienie dla FastCGI, czy uruchomi nowy proces dla każdego żądania? – jonathanpeppers