Bottle
現在時代不同,講求的是敏捷開發,一個人,當多個用,產生多個 thread 在不同專案,共用同一個大腦,開發人員進步的很快,工具也相當的進步,對函式庫的了解熟悉後,進行拆解
依照專案類型的不同,合併成最佳的組合,感覺,現在寫軟體,花一大堆的時間,看別人的函式庫,或是原始碼,要越高的彈性,及效能,就必須由越底層來切入
想想懶惰真是進步的原動力,這些工具,都是為了解決新問題與挑戰,想想身處在這個時代還蠻幸福的,有這麼多的東西可以玩
真不敢想,再過 10 年以後,軟體開發的進步,不知道可以到達什麼樣的境界,現在不管是 WEB 或是 Mobile 的應用都有長足的進步,想想10 年前的手機,在看看現在手裡的 iPhone 或是 Andriod 手機的運算能力,不可同日而語
自己比較熟的 Web 應用開發
CSS 工具有 SAAS 不過我喜歡 LESS
microjs 的一大堆 javascript 工具,還是自己來包 javascript 的工具
ender.js,還是用 coffee script 當成 Ruby 和 Python 合體來快速開發,我自己是只能算是 javascript 的幼幼班學生,所以只能用些基礎的
常用的 Web Framework,順便附一下,benchmark ,我知道,這一點都不科學,也不切實際,算是一個紀錄
硬體,都是同一台機器 Intel(R) Celeron(R) CPU E3400 @ 2.60GHz (真可憐用 Celeron), JVM 有暖身了
Node v0.6.1 (我知道他不是 framework,只是可以解決一樣的問題)
# Hello World benchmark
# all python framework under nginx 1.1.8 uwsgi 0.9.9.3, python2.6.7
# playframework under production mode java -version Java HotSpot(TM) 64-Bit Server VM (build 20.1-b02, mixed mode)
# node -version v0.6.1
# ab -c 100 -n 1000 TO_TEST_URL
# bottle 0.11.dev
uwsgi --socket 127.0.0.1:3030 --module terry --processes 4
# ~1550 Requests/second
# flask 0.8
uwsgi --socket 127.0.0.1:3030 --module fsk --callable app --processes 4
# OR
uwsgi --socket 127.0.0.1:3030 --module fsk:app --processes 4
# ~1100 Requests/second
# django 1.3.1
# return HttpResponse("Hello World")
uwsgi --socket 127.0.0.1:3030 --pp .. --env DJANGO_SETTINGS_MODULE=hello.settings -w "django.core.handlers.wsgi:WSGIHandler()" --processes 4
# ~910 Requests/second
# playframework 1.2.4
# renderText("Hello World")
# ~1700 Requests/second
# node 0.6.1
#var http = require('http');
#http.createServer(function (req, res) {
# res.writeHead(200, {'Content-Type': 'text/plain'});
# res.end('Hello World');
#}).listen(1337, "127.0.0.1");
#console.log('Server running at http://127.0.0.1:1337/');
#
# ~2500 Requests/second
#
連結(順序無關喜好,不同的地方,不同的規劃,自己看著辦,Hello World 只是起點,大家的終點不一樣)
Bottle
Flask
Django
PlayFramework
Node.js
PS: 最重要是,由衷的感謝這麼多 Open Source 的前輩,可以這樣無私的和大家分享,不求回報,讓想法可以自由的世界的每一個角落激盪出更多的火花,讓我也可以撿拾前輩的一點點牙慧,增加一點點自己的力量,讓日子過得更美好,由衷的感恩
沒有留言:
張貼留言