On 10/29/2015 04:46 PM, Pierre-Yves Chibon wrote:
On Thu, Oct 29, 2015 at 04:21:41PM +0100, Richard Marko wrote:
On 10/29/2015 03:53 PM, Pierre-Yves Chibon wrote:
On Tue, Oct 27, 2015 at 04:00:56PM +0100, Pierre-Yves Chibon wrote:
Good Morning everyone,
Over the last few days I have been working on a small app: mdapi. It is aimed at serving the metadata from our repos simply and *fast*, offering information from koji, rawhide, all our active branches and epel (you'll have to specify which you want) and for each it will return you the first hit it finds in the testing, updates or release repo (it says which in the json returned).
I deployed it for testing in our cloud, at: http://209.132.184.236/
[...]
The second point I would like to raise is how we deploy this application. This isn't a standard wsgi application (since it's async) and it cannot run with apache (afaiu). So far the other async application we have (in pagure) have been deployed simply as a systemd service. I wonder if we want to use the same approach here or if we should investigate things like gunicorn/nginx or so. Does someone have experience in this field? Any advice/feedback?
And regarding this point, anyone has experience with these services?
Yes, this setup works well with django/flask when you need maximum performance or you don't want to run apache.
You mean using nginx as a replacement for apache, correct?
Correct. Apache is often replaced with nginx/lighttpd when you don't need features like kerberos, WebDAV, ...
Deployment is easy. It required supervisord but that is no longer the case as now we have systemd that can take care of running gunicron.
So the application is written in aiohttp, I'm pretty sure I can make it run as a systemd service but I have no experience of gunicorn. Would you advice for it? Does it bring us much?
Depends on how much load do you expect on mdapi. I haven't done any testing performance wise so I can't tell if it's actually worth. I would say try it as there's not much difference in effort required for running an app with apache/wsgi compared to nginx/gunicorn. nginx/gunicorn configuration is quite easy, I would say even easier now (no supervisord required) than apache/wsgi.