[心得] Twisted是好物!
Twisted真的很好用 XD
它那個reactor的架構用起來真的超順手
我東弄西弄了很多東西,發現該有的它裡面幾乎都有了= =
非同步的機制非常完善,一開始reactor和deferred等有些難懂
等了解了之後真的很好用,東西都是用串起來的感覺 而且也很穩固
用來寫伺服器還蠻爽快的,寫起來蠻輕鬆的
我之前就有一個伺服器用Twisted寫好,我試過了很多種framework之類的
apache、asio等等,都因為太麻煩或是架構彈性不夠甚至是文件太多= .=
看不完 囧
用Twisted寫簡單到有點不敢相信的感覺 XD
目前我正在寫網頁爬蟲程式,我之前都用標準的抓網頁函式庫之類的來寫
正我最近又要寫一個,才在腦子裡閃過,靠! 我之前寫過的那些東西
不都是Twisted裡面有的嗎= =||
在用Twisted之前,我的爬蟲程式除了抓網頁就算了,要抓的網頁太多
還得寫threadpool去分領任務來做,光是弄那些前置的鬼東西
就花了我很多時間,而這些對Twsited這怪物來說
根本就是小菜一盤,想要分到某個thread去工作 只要寫
threads.callInThread(foo, 'WTF')
就會自動被派到thread pool去做
而之前非同步的網頁抓取
也只是用沒什麼效率的select等方式抓網頁的
我自己弄了一套event interface去等回傳的資料
到頭來在thread裡處理卡住還是耗不少時間
但是為了減少複雜性,又不想把程式寫複雜
twisted用IOCP等OS支援有效率的非同步方式工作
超有效率,而且配合thread pool等
網頁一抓完我就把它丟給thread pool去處理,parse這種吃cpu的事
就能夠充份運用到多核心的好處
而且Twisted似乎是以穩固出名的,驚人地穩定
總之Twisted真是我的救星
Twsited讚 XD
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.170.137.201
推
07/06 23:45, , 1F
07/06 23:45, 1F
推
07/07 13:51, , 2F
07/07 13:51, 2F
→
07/07 14:12, , 3F
07/07 14:12, 3F
推
07/07 16:20, , 4F
07/07 16:20, 4F
→
07/07 16:20, , 5F
07/07 16:20, 5F
→
07/08 06:40, , 6F
07/08 06:40, 6F
討論串 (同標題文章)
Python 近期熱門文章
PTT數位生活區 即時熱門文章