我想部署MaxMind geoIP數據庫作爲部署在Google AppEngine中的Java應用程序的一部分。東西效果不錯,當我們使用的是免費版本,但在升級到付費(較大)數據庫,嘗試部署給出了錯誤:Maxmind數據庫文件對於AppEngine應用程序太大
File /tmp/appcfg4412552511405829763.tmp/WEB-INF/GeoIPCity.dat is too large (limit 32000000 bytes)
至於我可以告訴大家,我有罐子分裂啓用,但這並沒有幫助,因爲這不是一個jar(重命名爲.jar不會奇蹟般地修復它)。有沒有辦法讓這個大型文件(約48MB)作爲AppEngine應用程序的一部分進行部署?
我的備用計劃是將文件推入雲端存儲並從那裏抓取。不幸的是,Maxmind的Java代碼真的想要一個文件 - 不是流,不是讀取器,不是字節[],而是文件 - 這在AppEngine中很難實現。在結束重寫一堆東西之前,我想我會看看是否有人已經設法解決這個問題。
這就是我最終做的,儘管我仍然需要重寫Maxmind的代碼來支持這個。從雲存儲中提取整個文件過於緩慢。 –
我們將文件拆分成兩個zip文件,然後我們設法將它們上傳到我們讀取這兩個文件的代碼中,並將它們結合在一起,使用 java.util.zip.ZipInputStream – montss