Nginx-Clojure Module Release 0.1.0--Let Nginx embrace Clojure & Java
Roberto De Ioris
roberto at unbit.it
Wed Jan 15 05:46:11 UTC 2014
> With the default setting pipe is not used.
>
> Pipe is only used for enable jvm thread pool mode only when jvm_workers >
> 0
> (jvm_workers default = 0).
>
> Further more pipe is never used to transfer the while request or response
> message.
> When under jvm thread pool mode, pipe is only used to transfer a event
> flag
> (only one pointer size)。
>
> ONLY IF you cann't resolve your performance problems by increasing
> worker_processes or reducing single request-response time, you can
> consider
> the way of setting jvm_workers > 0 which is not encouraged.
>
> Thread switch cost means Thread context switch cost.
>
Sorry, but are you saying that your suggested usage for concurrency is
multiprocessing ?
Multiprocessing is completely alien in the jvm (the vm is not even
fork-friendly) and that would mean the nginx worker completly give control
to the jvm and this is something bad as the jvm is a blocking vm.
The jvm world is thread-centric (and trust me, i needed to deal with
dozens of different threading implementations for uWSGI and the jvm is the
best one) so i am quite doubtful saying "multiprocess by default" would be
a successfull approach (well the amount of memory per-app will be huge)
--
Roberto De Ioris
http://unbit.it
More information about the nginx
mailing list