我正在開發嵌入式Linux設備,需要與在Windows桌面環境中運行的系統交換數據。我的團隊正在開發嵌入式設備上的軟件並設計API以與設備交換數據。我想就數據交換架構提出一些想法。我希望架構遵循SOA原則。哪種體系結構可用於在嵌入式Linux設備和桌面Windows之間交換數據?
這裏是重要的規格:
- 數據庫:該設備將在本地運行一個SQL數據庫服務器。
- 網絡:設備和桌面系統將通過WLAN 或LAN連接。如果 是一個令人信服的理由,那麼在設備上運行Web服務器也是可能的。
- 數據將在兩個方向交換。文本客戶信息和jpeg圖像文件(每天大約1MB數據)。
我首先想到的是一種傳統方法:在Linux設備上運行一個進程,該進程通過TCP套接字與Windows進程進行通信。在這種情況下,我的團隊需要編寫一個Windows DLL(.NET庫或Win32)來實現API。我認爲這裏的數據格式應該是XML,不過,我不確定如何使用這種方法傳輸.jpg圖像文件。
我想更現代的方法是在Linux設備上運行Web服務器,並提供一組Web服務來處理與外部系統的交互。我在這方面沒有太多經驗,所以我不確定這是否適合我們的情況。
您對這些方法的想法非常感謝。我相信,這裏關於SO的集體智慧將幫助我做出明智的決定。謝謝你的幫助。
感謝您的好點子。 JSON-WSP方法看起來非常有趣 - 我必須閱讀這個。 – PIntag 2012-02-09 16:51:27