On 05.09.23 14:40, John at Decent wrote:
Gustav, I think my confusion is as to how this works. As it's not documented, one needs to figure it out from the source.

the man page https://naviserver.sourceforge.io/n/nsproxy/files/ns_proxy.html is not a perfect documentation, but this is what we have now, ... and this is certainly more than reading the source. Improvements are always welcome!

I can't really tell what each ns_proxy::exec does if the executed process doesn't exit.

a worker process is potentially started by "ns_proxy get ..." but is influenced by the definition of the proxy pool (e.g. "maxworkers", ...).

Does it reuse it for the next request? It seems so, but I'm not clear.

by "request" you probably mean the next invocation of "nsproxy eval". It is reused, but as before, the reuse is controlled by the pool definition (e.g. "idletimeout", "maxruns", ...)

If it does reuse the still-running process, how does it tell it’s the same executable?

the name of the executable (per default /usr/local/ns/bin/nsproxy-helper) is defined via config file or via  "nsproxy configure ... -exec XXX". The running instances are managed via the handles. If you want to have different executables, define different nsproxy pools.

-g

_______________________________________________
naviserver-devel mailing list
naviserver-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/naviserver-devel

Reply via email to