Golang 編寫的瓦片地圖服務
-
用
Go
編寫的瓦片地圖爬取工具(Go
的goroutine
與Python3
的asyncio
效能對比); -
瓦片存入
MongoDB
,為後期構建分散式檔案儲存準備; -
Go
構建地圖服務,並加入Redis
快取層。
Go goroutine
VSPython3 asyncio
爬取程式:go run Crawk.go
- 基準
系統 | CPU | RAM |
---|---|---|
Ubuntu 18.04.1 LTS | Intel(R) Xeon(R) CPU E5-2643 v4 @ 3.40GHz | 64GB |
- 爬取引數
爬取地址:http://webrd01.is.autonavi.com/appmaptile?lang=zh_cn&size=1&scale=1&style=8&x={x}&y={y}&z={z}
區域範圍:109.227°E ~ 117.182°E
20.196°N ~ 25.5°N
瓦片等級:12
瓦片數量:6164
-
用時(單位
s
)
次數 |
goroutine
|
asyncio
|
---|---|---|
1 | 17.28094745 | 4.405204006 |
2 | 16.46757889 | 3.871793148 |
3 | 15.89158821 | 4.080148845 |
4 | 15.57217884 | 4.166357563 |
5 | 16.35038185 | 4.520677129 |
平均 | 16.31253505 | 4.208836138 |