2010-03-27 50 views
0

嗯,我試圖問這個問題作爲this問題的評論,但我想也許沒有人會注意到它,所以我決定問它作爲一個單獨的。什麼是最好的服務器端解決方案的實時GPS跟蹤系統

問題是關於如何做GPS實時跟蹤系統的事情;如果我們有以下情況:

  1. 而不是將GPS接收器連接到PC,用戶將有一個集成GPS接收器的移動設備。

  2. 位置數據將通過移動網絡使用GPRS數據連接發送到服務器端。

  3. 數據將被處理,KML路徑文件將按時間間隔創建並更新,並用於使用Google地球跟蹤用戶。

問題是:什麼是最好的方法來完成這種情況下的服務器端;它是一個Web服務,一個Web應用程序,一個Windows服務,一個Windows應用程序或什麼?考慮到系統將同時爲多個用戶提供服務,並且更多的用戶將來可能會使用該系統(可擴展性問題)。

預先感謝您,我非常感謝所有幫助:)

回答

0

你準確使用什麼樣的設備,如this或更復雜/可配置的設備?如果我們假設該設備通過TCP發送其數據,我會考慮用單獨的輸入/輸出處理下面的辦法:

  • 輸入:一個進程監聽特定的TCP端口和存儲傳入座標數據庫設備ID 。優選地,您的聽力循環必須能夠處理simultaneous connections,而不會彼此阻塞。

  • 輸出:web應用程序從給定設備ID的數據庫讀取座標並通過Google Earth API顯示它們。

使用您熟悉的任何編程語言。

+0

感謝您提供非常有幫助的答案! 關於您將要使用的設備問題,正如我在問題描述中所說的那樣,它將是Windows Mobile 6支持的設備,我知道使用像您注意到的那樣的專用設備要好得多,但是我不想讓客戶承擔更多的開支,我認爲使用內置GPS接收器的移動設備的唯一問題是電池消耗問題,可以通過將設備連接到汽車充電器來解決。 – Ayman 2010-03-27 14:34:28

+0

關於你所描述的建議方法,是不是存儲到數據庫,然後通過Web應用程序讀取存儲的數據並在Google Earth上顯示它的過程會以某種方式緩慢並且破壞實時系統的本質? – Ayman 2010-03-27 15:18:24

+0

取決於您的「實時」解決方案(1,20,60秒?),但一般來說,我認爲數據庫不會是瓶頸。爲了儘量減少Web應用程序的延遲,請不要使用輪詢,而應使用HTTP推送(Comet)。不熟悉Windows/Microsoft技術,無法幫助您更具體地瞭解這一點。 – jholster 2010-03-27 16:54:47

0

對我來說是一個技術上的限制/風險在這裏 - >移動設備,它的連通性。

1)您有什麼要求?你需要支持各種移動設備,還是隻關注一個平臺?

2)更重要的是,您必須瞭解GPRS數據連接與連接到Internet的PC不同。不同的移動運營商施加不同的連接限制。

如果我要設計這樣的系統以最大限度地降低這些風險,我將使用在端口80上運行的Web服務器,移動設備通過POST(甚至GET)簡單地上傳他們的Long/Lat。

編輯:關於可擴展性,未來將使用經過測試的負載平衡技術嘗試&來擴展它。編輯2:無論您決定使用哪種技術,我都會強烈建議您做的第一件事是模擬原型。這些連接限制可能是show-stoppers。理想情況下,您需要在進行任何嚴肅投資之前對其進行探索。

+0

謝謝你的回答。關於你問的兩個問題: 1)目前我的目標是針對windows mobile 6 powered設備,因爲我應該爲客戶提供設備,所以它不是商業用途。 2)據我所知,有一個差異,事實上我嘗試使用谷歌地圖在HTC Touch Diamond GPS設備上使用谷歌地圖進行持續45分鐘的旅行,這很棒,我說的是使用GPS的谷歌地圖的實時追蹤功能不是基於單元格的,所以我不知道你說的連接限制是什麼,你能更清楚嗎? – Ayman 2010-03-27 13:37:04

+0

另外,我不得不說,我正在製作一個原型或演示,以向客戶展示它,當然,我沒有做出任何嚴肅的事情:D – Ayman 2010-03-27 13:39:17

相關問題