如何加快構建物聯網的應用云
文章來源:admin
發布時間:2016-05-05 09:29:25
瀏覽:0 次
在JavaOne大會上,Pivotal公司首席技術專家馬克•克勒解釋了物聯網(IOT)應用在云計算中快速發展起來的一些最佳實踐。他的方法使它更容易地嘗試不同的用例,可一旦這些情況的商業價值已被證實,就可以提煉并實踐。
作為一個例子,克勒解釋了如何建立一個可再生能源的監測和控制應用程序的基本框架。他在圣路易斯建造了這一原則,但同樣的原則可以采用多種多樣的物聯網應用中,可以快速部署到云中。
關鍵是要創建一個軟件開發工具鏈,為物聯網設備和后端的云計算生成盡可能多的代碼。Spring的啟動使得它容易帶來各種各樣的服務,用于通信,監控,數據庫和應用程序邏輯。這個起始模板可以傳遞到Cloud Foundry自動生成在云中運行不同的服務器平臺的代碼。
保持簡單的物聯網物理側
物聯網的物理硬件方面是很重要的,雖然它只構成創造物聯網應用約20%的工作。工程師和建筑師需要密切關注物聯網的后臺軟件,克勒表示,物聯網是大部分的價值來自后臺軟件。
在物理方面,克勒建議物理基礎設施應該是快速且易于配置。一個最小的物理和邏輯的足跡應該支持可靠性,良好的溝通方案和標準。例如,克勒的能源監控應用程序的物理基礎設施使用了一個Arduino板,可以支持無線網絡連接和通信的Web Sockets協議的Raspberry Pi公司網關。
克勒表示考慮要使用設備充分的性能,而不是最佳的性能,因為端點需要更好的性能,而往往更多的處理能力和復雜性是很重要的。這一戰略意味著大部分繁重處理的需求都在云中實施??死照f,Arduino平臺用于測試概念證明,這一個不錯的選擇,但它缺乏低成本的溝通能力。他建議采用Raspberry Pi為節點集中器,因為它支持Linux和java,其通信選項具有較好的低成本。
專注于標準
克勒說,人們應該采用盡可能地支持標準的、現有的基礎設施和工具建立云計算物聯網應用。克勒展示了他是如何能夠快速使用Cloud Foundry云應用程序環境建立發展基于云計算的能源監控門戶網站的,節點集中器和獨立的物聯網設備之間的所有交互可通過REST和Web Sockets進行溝通。
克勒用這種方法在短時間內來開發他的可再生能源監控系統。其應用程序通過各種傳感器來監測和控制冷卻、加熱和通風孔等指標。
盡可能地配置
克勒表示,通過一套豐富的軟件工具,所以用戶可以更容易使用不同的方法,找出最好的一個軟件工具開發和部署應用程序架構。他有針對性列舉了GlassFish,WebLogic和WildFly服務器與Cloud Foundry平臺。克勒說,這是一個更好的做法,針對利用現有的工具來手動自定義代碼編程,而不是針對這些服務器跨平臺移植現有生成代碼的應用程序。
使用Cloud Foundry作為擴展的后端,使它更容易使用相同的方法,在本地或云環境進行局部處理和部署。這可以幫助減少開發概念驗證的努力,然后遷移到最佳生產環境。
另一種很好的做法是使用SpringBoot,提供自動配置和外部的結合能力,使其更容易產生Cloud Foundry的起始代碼。這使得在應用程序中更快更容易選擇組件,這可以被部署到不同的目標環境中運行。從本質上說,Spring Boot可以很容易地設置傳遞到CloudFoundry,通過對云計算的核心框架的設置,從而產生Glass Fish,WebLogic服務器或Wildfly的代碼。這使得開發人員可以把重點放在調整具體的物聯網使用情況下的應用程序背后的邏輯上。
選擇合適的組件
克勒還建議使用Spring Boot驅動器,它提供了監控和管理能力,包括SpringBoot的配置過程中使用應用程序的能力。這使得它很容易檢查環境和路徑,以及使用內存,這在開發和測試過程中非常有用。
超文本應用程序的語言,使它更容易探索和應用程序相關的應用程序。在網絡中斷的情況中,在應用程序中包含一個數據庫或數據存儲區是很重要的。
一旦這些Spring Boot元件被選中,開發人員可以快速生成一個使用SpringBoot代碼生成工具的功能齊全的應用程序。這可以快速導入到一個Java IDE進行定制,對于給定的用例,其最終的結果是很容易通過生成工具生成一個Gradle或Maven項目。
使用REST和WebSockets應用程序
REST和JSON是構建Web應用程序,但他們將在物聯網應用中帶來相當大的開銷。REST消息可以添加幾百字節的頭信息,而物聯網應用程序通常只發送幾個相關的測量或控制消息??死胀扑]使用Web Sockets來代替。當需要時,所需的開銷更小,其通信也可以是雙向的。
用戶仍然需要創建一個Web Socket的類來處理數據,這些數據可以通過擴展的Web Socket處理器來完成??死照f,他仍然可以通過REST訪問云系統的一個參數,但他說,“它是如此沉重,我不使用它。”
利用Spring Boot,Cloud Foundry和構建工具這一基本框架,可以很容易地在短期內開發物聯網設備的云應用程序。克勒說,他已經重新采用相同的框架開發各種企業相關應用。
他建議企業專注于利用現有的工具來制定出物聯網應用的基本邏輯。它可以是具有挑戰性的,以確定最終用途的情況下,推動物聯網應用。從組件開始可以更容易確定業務的情況下,然后可以在適當的架構進行了優化。