I was excited too, never thought that tornado runs on Windows, where no 
epoll/kqueue is available. 
However, I'm ok with having a "normal" webserver (performance-wise, I 
expect to be at least fast as rocket/cherrypy) on Windows but a speedup 
under Linux,  then I bumped into this

https://github.com/rpedroso/motor/blob/master/motor.py#L596

No Windows support for fork! Additionally, has the "tornado team" adopted 
fully the idea of supporting tornado under Windows ?

Il giorno mercoledì 3 ottobre 2012 06:56:24 UTC+2, Massimo Di Pierro ha 
scritto:
>
> Please open a ticket your your proposal and the link. This is a serious 
> possibility!
> Can the monolitic build be automated?
>
> On Tuesday, 2 October 2012 20:12:41 UTC-5, Ricardo Pedroso wrote:
>>
>> On Mon, Oct 1, 2012 at 11:28 PM, Massimo Di Pierro 
>> <massimo....@gmail.com> wrote: 
>> > Does it support ssl? 
>>
>> Yes. 
>>
>> > We need to benchmark it for non-linux environments. Also I am not sure 
>> about 
>> > the PycURL dependence for python2.5. 
>>
>> PycURL is only need for the http client part, to act as a server, 
>> there is no need. 
>>
>>
>> > Can you send us instructions to build a single-file tornado server? 
>>
>> As I said, once I did a single-file build of tornado 1.2.1. 
>> It wasn't an automatic build with some script magic, but instead, 
>> was made by hand and was surprisingly easy to join the essential parts. 
>>
>>
>> Today I look at tornado and they are in version 2.4. So I spend some 
>> time rebuild 
>> the single-file tornado. It was easier and smaller with version 1.2, 
>> but it is still easy. 
>>
>> I put it on github (https://github.com/rpedroso/motor) with some 
>> instrutions. 
>>
>>
>> It was tested only in Linux, so may work (I hope) or not for others 
>> systems. 
>>
>> I put the results of two ab benchmarks in the README 
>> (rocket vs monolithic tornado) of web2py trunk 
>>
>>
>> Ricardo 
>>
>>
>> > On Monday, 1 October 2012 16:27:11 UTC-5, Ricardo Pedroso wrote: 
>> >> 
>> >> On Sun, Sep 30, 2012 at 6:43 PM, Massimo Di Pierro 
>> >> <massimo....@gmail.com> wrote: 
>> >> > We can only package pure python web servers. Tornado does not meet 
>> this 
>> >> > requirement. 
>> >> 
>> >> 
>> >> Tornado is pure Python and very fast - and even much faster with PyPy. 
>> >> 
>> >> It only has an optional C module for those who want to use epoll on 
>> >> Linux/Python2.5, 
>> >> if this module is not available it will use select, this is the logic 
>> >> in tornado at the end of ioloop.py: 
>> >> 
>> >> # Choose a poll implementation. Use epoll if it is available, fall 
>> back to 
>> >> # select() for non-Linux platforms 
>> >> if hasattr(select, "epoll"): 
>> >>     # Python 2.6+ on Linux 
>> >>     _poll = select.epoll 
>> >> elif hasattr(select, "kqueue"): 
>> >>     # Python 2.6+ on BSD or Mac 
>> >>     _poll = _KQueue 
>> >> else: 
>> >>     try: 
>> >>         # Linux systems with our C module installed 
>> >>         import epoll 
>> >>         _poll = _EPoll 
>> >>     except Exception: 
>> >>         # All other systems 
>> >>         import sys 
>> >>         if "linux" in sys.platform: 
>> >>             logging.warning("epoll module not found; using select()") 
>> >>         _poll = _Select 
>> >> 
>> >> It can be put in a single py module. I once did it with tornado 
>> >> version 1.2.1 and if I recall the size 
>> >> was around 40/50k of code 
>> >> 
>> >> The big difference with rocket is that it's not a threaded server. The 
>> >> recommended way is running 
>> >> one instance per CPU - this can be handled automatically by tornado. 
>> >> 
>> >> Ricardo 
>> > 
>> > -- 
>> > 
>> > 
>> > 
>>
>

-- 



Reply via email to