這幾天在偷偷做另外一個小東西時,用到 GAE 的 memcache API, 看資料發現 memcache API 是利用 memcached 模組修改而來。接下來就搜尋找到一系列文章提到 memcached 的應用,像是「{|ihower.tw| blog } | 如何使用 memcached 做快取」這篇除了提到應用外,還有提到 key 命名的問題。
不過我是想把快取的機制用在 goristock 中,goristock 在取股票資料的時候都必須連到證交所,有的時候不會只查詢一次,重複抓取沒有效率。另外 timeser.py 有一個 overall(),是跑整個上市股票的資料來分析買賣點的功能,可是這功能每次都要跑很久,每一檔股票都要再下載一次盤後交易資料,所以變得非常冗長又沒有效率。因此新開一個 branch 來實作這個功能,另外這 branch 是為離線版本來開發。
在 timeser.py 加入 preoverall() 來預載資料。
之後來跑 timeser.overall() 就飛快,抽換不同的分析條件就不用在重抓一次資料。
開發離線版本除了目前加入 memcache 外,還有一個方向就是把資料儲存下來,不過這方面還在參考其他高手處理的方式,再慢慢實作加入。不過現在還是努力寫一下論文好了,老闆在追趕了!
不過我是想把快取的機制用在 goristock 中,goristock 在取股票資料的時候都必須連到證交所,有的時候不會只查詢一次,重複抓取沒有效率。另外 timeser.py 有一個 overall(),是跑整個上市股票的資料來分析買賣點的功能,可是這功能每次都要跑很久,每一檔股票都要再下載一次盤後交易資料,所以變得非常冗長又沒有效率。因此新開一個 branch 來實作這個功能,另外這 branch 是為離線版本來開發。
- 首先先安裝 memcached
sudo apt-get install memcached - 之後安裝 python-memcache
sudo apt-get install python-memcache
在 timeser.py 加入 preoverall() 來預載資料。
之後來跑 timeser.overall() 就飛快,抽換不同的分析條件就不用在重抓一次資料。
開發離線版本除了目前加入 memcache 外,還有一個方向就是把資料儲存下來,不過這方面還在參考其他高手處理的方式,再慢慢實作加入。不過現在還是努力寫一下論文好了,老闆在追趕了!
留言
張貼留言