您當(dāng)前位置: 主頁(yè) > IT服務(wù) > 服務(wù)器服務(wù) >
IT服務(wù)器運(yùn)維:開(kāi)發(fā)云服務(wù)器的簡(jiǎn)單過(guò)程介紹
云服務(wù)器服務(wù)是云計(jì)算服務(wù)的重要服務(wù)之一,目前常見(jiàn)的用途非常廣泛,主要有把云服務(wù)器當(dāng)虛擬主機(jī)使用;對(duì)網(wǎng)絡(luò)品質(zhì)有要求的電子商務(wù)等平臺(tái);數(shù)據(jù)共享平臺(tái);軟件應(yīng)用平臺(tái)等。
一、云服務(wù)器接收采集數(shù)據(jù)
建立好云服務(wù)器之后,接下來(lái)即是如何把采集的數(shù)據(jù)傳輸給云服務(wù)器。這包含兩項(xiàng)工作。
第一項(xiàng)是在云服務(wù)器上建立一個(gè)接收處理程序,這個(gè)接收處理程序有多種形式,只要能夠提供接收數(shù)據(jù)的連接即可。通常我們可以使用以下方式:
l TCP服務(wù):創(chuàng)建socket -》 綁定端口 -》 listen監(jiān)聽(tīng) -》 accept tcp 連接 -》 處理數(shù)據(jù) -》 關(guān)閉連接。
l UDP服務(wù):創(chuàng)建socket -》 綁定端口-》 接收數(shù)據(jù) -》 處理數(shù)據(jù)
l HTTP服務(wù):創(chuàng)建IIS或apache站點(diǎn),指定站點(diǎn)端口,在站點(diǎn)中建立數(shù)據(jù)接收處理代碼文件,形成“http://云服務(wù)器ip:端口/處理程序”的URL,接收get或post數(shù)據(jù)。
第二項(xiàng)工作是將采集的數(shù)據(jù)連接到云服務(wù)器提供的接收處理程序,完成數(shù)據(jù)的上傳。數(shù)據(jù)的上傳途徑也可使用多種方式:
l 使用GPRS,采集結(jié)點(diǎn)增加GPRS處理模塊,將采集的數(shù)據(jù)通過(guò)GPRS傳輸給云服務(wù)器,數(shù)據(jù)傳輸?shù)膮f(xié)議視云服務(wù)器接收處理程序定,TCP、UDP或是HTTP。
l 將采集數(shù)據(jù)通過(guò)串口傳輸至PC機(jī),再由PC建立數(shù)據(jù)傳輸程序,通過(guò)TCP、UDP或是HTTP傳輸給云服務(wù)器
l 采集數(shù)據(jù)通過(guò)網(wǎng)口或串口轉(zhuǎn)網(wǎng)口等設(shè)備,使用TCP、UDP或是HTTP連接至云服務(wù)器進(jìn)行傳輸。
二、 云服務(wù)器上存儲(chǔ)采集數(shù)據(jù)
當(dāng)云服務(wù)器的接收處理程序接收到數(shù)據(jù)后,可以根據(jù)需要進(jìn)行存儲(chǔ),存儲(chǔ)的方式根據(jù)需要可以有多種形式:
l 以文本形式存儲(chǔ),即如寫(xiě)入記事本,數(shù)據(jù)的方式可以是一行一行的簡(jiǎn)單文本,也可以是xml形式,均可,只要便于后續(xù)讀取即可。
l 以數(shù)據(jù)庫(kù)形式存儲(chǔ),可以將數(shù)據(jù)存儲(chǔ)到數(shù)據(jù)庫(kù)表中,數(shù)據(jù)庫(kù)可以是Access,SQL Server,Oracle,MySql,PortgreSQL等,均可。
由于采集的數(shù)據(jù)與具體業(yè)務(wù)相關(guān),對(duì)數(shù)據(jù)本身如果有協(xié)議約定,可以按協(xié)議約定進(jìn)行解析。如接收到“10,25”,可能約定是“設(shè)備標(biāo)識(shí),溫度”,則可以在數(shù)據(jù)庫(kù)中存儲(chǔ)為一個(gè)擁有這兩個(gè)字段的表,每個(gè)字段存儲(chǔ)相應(yīng)的值。
三、 終端上顯示采集數(shù)據(jù)
數(shù)據(jù)一旦存儲(chǔ)在文本文件或數(shù)據(jù)庫(kù)中,即隨時(shí)可以讀取最新的采集數(shù)據(jù)和歷史數(shù)據(jù),并以豐富的形式展現(xiàn)出來(lái)。
通過(guò),我們會(huì)采用web的方式展現(xiàn),即創(chuàng)建IIS或apache站點(diǎn),在站點(diǎn)中建立用于顯示的頁(yè)面,讀取數(shù)據(jù)庫(kù)中的內(nèi)容形成html返回給瀏覽器,訪問(wèn)方式為瀏覽器打開(kāi)“http://云服務(wù)器ip/顯示頁(yè)”的URL。以上述接收到的數(shù)據(jù)為例,即接收到“10,25”,原樣存儲(chǔ)在文本文件 data.txt ,剛可以制作如下顯示
頁(yè)。
《!doctypehtml》
《html》
《head》《TItle》動(dòng)態(tài)數(shù)據(jù)《/TItle》《/head》
《body》
設(shè)備號(hào):《% =File.ReadText().Split(‘,’)[0] %》《br /》
溫度值:《% =File.ReadText().Split(‘,’)[1] + “度” %》
《body》
《/html》
顯示頁(yè)制作之后,我們即可訪問(wèn)多種終端訪問(wèn)“http://云服務(wù)器ip/顯示頁(yè)”,可以是PC瀏覽器,手機(jī)瀏覽器,也可是微信公眾號(hào)內(nèi)部訪問(wèn)。
四、 銳米云服務(wù)器開(kāi)發(fā)實(shí)例
使用銳米通信的網(wǎng)關(guān)產(chǎn)品,它集成了向云服務(wù)器傳輸?shù)目蛻舳斯δ埽灰渲檬褂肨CP、UDP或http地址即可在接收到數(shù)據(jù)時(shí)自動(dòng)按指定的方式上傳數(shù)據(jù)。下邊是用于演示的云服務(wù)器端示例代碼,使用的是HTTP方式,HTTP方式有其優(yōu)點(diǎn),可以把接收和顯示功能做在一個(gè)站點(diǎn)里,使用不同的處理頁(yè)即可。
【數(shù)據(jù)接收】
publicparTIal class test_R : System.Web.UI.Page
{
protected void Page_Load(object sender,EventArgs e)
{
string data =Request[“data”]; // 取得接收的數(shù)據(jù)
// 存儲(chǔ)在全局變量中,同為顯示頁(yè)為同一站點(diǎn),
// 因此顯示頁(yè)可訪問(wèn)到此變量。存儲(chǔ)至文件也是可以的
ApplicaTIon[“data”] = data;
}
}
【數(shù)據(jù)顯示】
顯示頁(yè)解析接收保存在全局變量(或文件)中的數(shù)據(jù)
private string GetContent() {
string s =Application[“data”] as string;
if (!String.IsNullOrEmpty(s)) {
string[] items = s.Split(‘,’);
string date =Regex.Replace(items[0],@“(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})”, “$1-$2-$3$4:$5:$6”);
s = String.Format(“原始數(shù)據(jù):{3} 《br》 解析結(jié)果 - 數(shù)據(jù)日期: {0} 用戶標(biāo)識(shí):{1} 數(shù)據(jù)內(nèi)容: {2}”, date, items[1],items[2].Replace(‘:’, ‘ ’), s);
}
return s;
}
示例運(yùn)行環(huán)境,windows系統(tǒng) IIS7 .net 4.0,
相關(guān)文章