Markdownserver

    Where is the port number depending on which server you'rerunning.

    1. Python (Flask) 2103.06 [#/sec] (mean)
    2. Python (Tornado) 1834.48 [#/sec] (mean)
    3. Node (Express) 4406.17 [#/sec] (mean)
    4. Go 19539.61 [#/sec] (mean)

    To run the Go version, first set your then:

    1. $ go get github.com/russross/blackfriday
    2. $ go run main.go
    3. $ curl http://localhost:8080/markdown?body=THis+%2Ais%2A+a+string

    To run the Flask version:

    1. $ virtualenv venv
    2. $ pip install Flask mistune markdown
    3. $ python flask_.py
    4. $ curl http://localhost:5000/markdown?body=THis+%2Ais%2A+a+string
    1. $ npm install # picks up from package.json
    2. $ curl http://localhost:3000/markdown?body=THis+%2Ais%2A+a+string
    1. try:
    2. import mistune as markdown
    3. import markdown # py implementation
    4.  
    5. from flask import Flask, request
    6. app = Flask(__name__)
    7.  
    8. import logging
    9. log = logging.getLogger('werkzeug')
    10. log.setLevel(logging.ERROR)
    11.  
    12.  
    13. @app.route("/markdown")
    14. def markdown_view():
    15. return markdown.markdown(request.args['body'])
    16.  
    17. if __name__ == "__main__":
    18. app.run()
    1. import tornado
    2. try:
    3. import mistune as markdown
    4. import markdown # py implementation
    5.  
    6. import tornado.ioloop
    7. import tornado.web
    8.  
    9.  
    10. class MarkdownHandler(tornado.web.RequestHandler):
    11. def get(self):
    12. body = self.get_argument('body')
    13. self.write(markdown.markdown(body))
    14.  
    15.  
    16. application = tornado.web.Application([
    17. (r"/markdown", MarkdownHandler),
    18. ])
    19.  
    20. if __name__ == "__main__":
    21. application.listen(8888)
    22. tornado.ioloop.IOLoop.instance().start()

    Go