How we used Node.js to build real-time award flight search
blog.milewise.com
How we used Node.js to build real-time award flight search
1–10 of 39 posts
Re: How we used Node.js to build real-time award flight search
#2Re: How we used Node.js to build real-time award flight search
#3Re: How we used Node.js to build real-time award flight search
#4Re: How we used Node.js to build real-time award flight search
#5Great use case for Node.js.
Re: How we used Node.js to build real-time award flight search
#6Re: How we used Node.js to build real-time award flight search
#7hey nmeyer im interested in building some similar stuff could you email me at danecjensen@gmail.com so we can talk more. Thanks.
Re: How we used Node.js to build real-time award flight search
#8and as a former ITA Software employee, i can scoff and say they aren't actually doing anything resembling flight search. they're just scraping websites and APIs. node.js might be fine for that, but so is anything else. at that level it's more a matter of preference than capability.
Re: How we used Node.js to build real-time award flight search
#9Re: How we used Node.js to build real-time award flight search
#10Could you describe the difficulties you encountered with Tornado and asynchronous Python code?
It's more just an annoyance of the language. Specifically, anonymous functions are must easier in JavaScript, so it was just easier to write read and write maintainable code.
In Python, you are limited to only passing in simple lambda functions (although deferreds do get around this issue somewhat). It's not a show stopper but when combined with all the other advantages of Node.js, it just made the decision to switch a lot easier.
We also ran into a lot of issues related to poor garbage collection in Python and were using up a lot of memory. This was not related to dangling references but rather Python's permanent allocation of Integer and Float objects.
Finally, we just saw better performance out of V8 than Python (although we never tried anything else besides vanilla Python 2.6).
For our specific problem, Node.js worked well. It's not always the right solution. We will write a more detailed blog post soon with specifics of how we used Node.