Linux, or Linux in a container. Windows does not provide a good experience if 
need to do multi process Python applications.

> On 26 Jul 2019, at 9:18 pm, *Ali... <[email protected]> wrote:
> 
> Hello Graham,
> 
> So what would be the better solution for this, 
> should I go for another server instead Apache or should I use Mac laptop 
> instead?
> 
> Could you please suggest?
> 
> Thank you so much once again for you help.
> Mohammad Nasim Ali.
> 
> On Fri, Jul 26, 2019, 3:43 AM Graham Dumpleton <[email protected] 
> <mailto:[email protected]>> wrote:
> On Windows, Apache relies on multithreading, because it can't use multiple 
> processes. The only solution would be to bump the Apache configuration down 
> to single thread, but then because it is only a single process, the result is 
> impractical, as you can only handle one request at a time. I'd suggest using 
> rpy2 with mod_wsgi on Windows as a result probably isn't going to work very 
> well.
> 
> That said, but it would be hard to setup, you could run a background thread 
> to do the rpy2 processing, and have request handlers use a queue between 
> threads to deliver the task to the rpy2 specific thread and then wait for a 
> response.
> 
> This isn't that simple though, as you need to ensure that only the code run 
> by that special thread imports rpy2. Further, any data structures going back 
> and forth in the queues can't be rpy2 data structures, you would need to 
> translate everything to and from rpy2 data structures to native Python data 
> structures, in the rpy2 thread. Lastly being a single processing thread, it 
> could itself still become a bottle neck.
> 
>> On 25 Jul 2019, at 8:13 pm, Nasim Ali <[email protected] 
>> <mailto:[email protected]>> wrote:
>> 
>> Hello All,
>> 
>> I've been struggling for a month now to fix this issue and needed your help.
>> 
>> Apache Lounge(2.4) + mod_wsgi(4.6.6) + python 3.6.5 configuration is working 
>> pretty nice on my windows machine. Thanks to 'Graham Dumpleton blogs/posts' 
>> for that.
>> I'm facing one strange issue which is related to rpy2 package.
>> 
>> Just to give you the context that till now what I have done are as follows:
>> 
>> 1. After setting up all the required environment I ran command -> 
>> mod_wsgi-express module-config
>> which gives the following scripts:
>> 
>> LoadFile "c:/worksetup/anaconda3/python36.dll"
>> LoadModule wsgi_module 
>> "c:/worksetup/anaconda3/lib/site-packages/mod_wsgi/server/mod_wsgi.cp36-win_amd64.pyd"
>> WSGIPythonHome "c:/worksetup/anaconda3"
>> 
>> Added above scripts as it is in httpd.conf  file without any changes as 
>> suggested by Graham Dumpleton himself.
>> 
>> 
>> 2. After that I've created a virtual host to run my wsgi application on 
>> 'localhost:58188/wsgi'
>> 
>> httpd-vhosts.conf :
>> 
>>  <VirtualHost *:58188>
>>     ServerName localhost
>>     LogLevel info
>> 
>>      #WSGIProcessGroup test_optimization_group
>>     #WSGIDaemonProcess test_optimization_group user=apache group=apache 
>> processes=1 threads=5 request-timeout=200
>>      # Might stop multithreading
>>     WSGIApplicationGroup %{GLOBAL}
>>     WSGIScriptAlias /wsgi 
>> "C:/Users/mysuser/PycharmProjects/test_optimization/test.wsgi"
>>     DocumentRoot "C:/Users/myuser/PycharmProjects/test_optimization"
>> </VirtualHost>
>> 
>> 3. It is working as expected. Everything is fine till now.
>> 
>> 4. Now the problem comes here when I add these two below imports from rp2 
>> package:
>> 
>>      import rpy2.robjects as robjects
>>      from rpy2.robjects import panda2sri
>> 
>> The moment I add these above imports in my test.wsgi script Apache server 
>> stops responding rather it hangs without any error.
>> However the same piece of code (the two rpy2 package imports) is working as 
>> expected in terminal.
>> 
>> I'm clueless at this point to how to fix this. I needed help on this ??
>> 
>> 5. However I did some googling and found this url : 
>> https://bitbucket.org/rpy2/rpy2/issues/136/robjectsr-function-hangs-with-mod_wsgi
>>  
>> <https://bitbucket.org/rpy2/rpy2/issues/136/robjectsr-function-hangs-with-mod_wsgi>
>>     which is pretty close to what I have been looking for, on windows 
>> machine:
>>     In here the last three comments where Laurent Gautier is saying that 'R 
>> cannot do multithreading and using web servers on the Python side that use 
>> are not going to work well'
>> 
>>     To try this fix, I tried adding WSGIProcessGroup & WSGIDaemonProcess to 
>> bring down the processes to 1 and etc.
>> 
>>    WSGIProcessGroup test_optimization_group
>>    WSGIDaemonProcess test_optimization_group user=apache group=apache 
>> processes=1 threads=5 request-timeout=200
>> 
>>    But irony of the situation is WSGIDaemonProcess is not supported on 
>> windows.
>>    As given here in this link : 
>>    
>> https://modwsgi.readthedocs.io/en/develop/configuration-directives/WSGIDaemonProcess.html
>>  
>> <https://modwsgi.readthedocs.io/en/develop/configuration-directives/WSGIDaemonProcess.html>
>> 
>>     Note that the WSGIDaemonProcess directive and corresponding features are 
>> not available on Windows.(from the official website)
>> 
>> 6. I'm not sure whether fixing point 5 (above mentioned) would fix my issue 
>> or is there any fix is required for this.
>> 
>>    Please let me know if I have missed anything. Any help on this is most 
>> welcome. 
>>    Thanks for your help in advance.
>> 
>> 
>> 
>> 
>> 
>> 
>> 
>> 
>> 
>> 
>> 
>> 
>> 
>> 
>> 
>> 
>> 
>> -- 
>> You received this message because you are subscribed to the Google Groups 
>> "modwsgi" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to [email protected] 
>> <mailto:[email protected]>.
>> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/modwsgi/913cb743-0461-4ba3-9e0a-b235d7ffff47%40googlegroups.com
>>  
>> <https://groups.google.com/d/msgid/modwsgi/913cb743-0461-4ba3-9e0a-b235d7ffff47%40googlegroups.com?utm_medium=email&utm_source=footer>.
> 
> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "modwsgi" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to [email protected] 
> <mailto:[email protected]>.
> To view this discussion on the web visit 
> https://groups.google.com/d/msgid/modwsgi/3B882014-5EA8-4129-BFA4-9B8D3510A7B3%40gmail.com
>  
> <https://groups.google.com/d/msgid/modwsgi/3B882014-5EA8-4129-BFA4-9B8D3510A7B3%40gmail.com?utm_medium=email&utm_source=footer>.
> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "modwsgi" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to [email protected] 
> <mailto:[email protected]>.
> To view this discussion on the web visit 
> https://groups.google.com/d/msgid/modwsgi/CAMfUNFLDRfbjP4TWe0NB2%3DkOWGZkOUeiWprEupGE5knZmnzAqQ%40mail.gmail.com
>  
> <https://groups.google.com/d/msgid/modwsgi/CAMfUNFLDRfbjP4TWe0NB2%3DkOWGZkOUeiWprEupGE5knZmnzAqQ%40mail.gmail.com?utm_medium=email&utm_source=footer>.

-- 
You received this message because you are subscribed to the Google Groups 
"modwsgi" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/modwsgi/A5AF835E-82AD-47D4-AB82-27997AFCD0DA%40gmail.com.

Reply via email to