<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 基于嵌入式的開(kāi)發(fā)云和后端技術(shù)的討論研究

基于嵌入式的開(kāi)發(fā)云和后端技術(shù)的討論研究

作者: 時(shí)間:2018-07-25 來(lái)源:網(wǎng)絡(luò ) 收藏

本文從大的宏觀(guān)網(wǎng)絡(luò )架構一步一步深入到微觀(guān)的微信后臺接入,業(yè)務(wù)引擎是應用系統的核心,M是模型,是對數據庫應用接口的封裝,根據數據處理的結果而整合的頁(yè)面,實(shí)現引擎業(yè)務(wù)。

本文引用地址:http://dyxdggzs.com/article/201807/383795.htm

云與后端相關(guān)的技術(shù)似乎并不屬于和物聯(lián)智能硬件開(kāi)發(fā)工程師的范疇,但是開(kāi)發(fā)工程師有必要認識成熟的網(wǎng)絡(luò )架構和相關(guān)的云技術(shù),以拓展自己在系統架構方面的視野。大數據分析是物聯(lián)網(wǎng)背后的核心價(jià)值,物聯(lián)智能硬件是物聯(lián)大系統的終端,開(kāi)發(fā)工程師不僅要深入精通物聯(lián)技術(shù),也應該去理解大系統,甚至整個(gè)生態(tài)領(lǐng)域的相關(guān)技術(shù)。

作為開(kāi)發(fā)工程師,也許并不需要熟悉云和后端的技術(shù)開(kāi)發(fā),但至少要對其中用到的技術(shù)和接口有一定的認識。

一、網(wǎng)絡(luò )架構

常見(jiàn)的網(wǎng)絡(luò )架構分為C/S和B/S兩種模式。

1. C/S是客戶(hù)端/服務(wù)器模式,典型應用如QQ客戶(hù)端、百度云管家等;B/S則是瀏覽器/服務(wù)器模式,典型的應用就是門(mén)戶(hù)網(wǎng)站、銀行業(yè)務(wù)系統等。兩種模式的優(yōu)點(diǎn)和缺點(diǎn)都顯而易見(jiàn)。

2. C/S交互性強、網(wǎng)絡(luò )通信量低、響應速度快,很多處理都集中在本地客戶(hù)端完成,是胖客戶(hù)端/瘦服務(wù)器。但是其是針對性開(kāi)發(fā),不利于變更和擴展。C/S通信編程基于TCP/IP層的socket編程,或者基于對socket的封裝類(lèi)。

3. B/S方式分布性強、升級維護方便、開(kāi)發(fā)簡(jiǎn)單、總體成本低,本地只需要安裝一個(gè)通用的瀏覽器即可,是瘦客戶(hù)端/胖服務(wù)器。但其有數據安全性問(wèn)題、對服務(wù)器要求過(guò)高、數據傳輸速度慢。B/S的通信是基于HTTP協(xié)議。隨著(zhù)網(wǎng)頁(yè)腳本技術(shù)的提高,B/S也逐漸增強本地瀏覽器端的處理能力,以減輕服務(wù)器的負荷。

4.以上分析都是基于對PC端網(wǎng)絡(luò )架構的思考,但是在移動(dòng)互聯(lián)網(wǎng)上卻有截然不同的體驗。以門(mén)戶(hù)新聞網(wǎng)站而言,在PC領(lǐng)域是以B/S方式來(lái)呈現的,但是如果將其直接移植到手機和平板端,會(huì )因為屏幕尺寸的差異使得用戶(hù)體驗變差,盡管在服務(wù)器端可以通過(guò)獲取終端的個(gè)性化參數來(lái)進(jìn)行適配,但總體體驗是遠不上APP客戶(hù)端來(lái)展現的,所以我們在手機看到的是新浪新聞、網(wǎng)易新聞等等客戶(hù)端。在移動(dòng)互聯(lián)網(wǎng)領(lǐng)域,應該考慮的是更多的垂直服務(wù),而不是大而全的產(chǎn)品。

二、服務(wù)器架構

接下來(lái)以B/S架構為例來(lái)分析服務(wù)器端的架構。示意圖如下:


1.用戶(hù)瀏覽器來(lái)訪(fǎng)問(wèn)業(yè)務(wù)系統,如銀行業(yè)務(wù),瀏覽器是直接跟WEB頁(yè)面服務(wù)器交互的。WEB服務(wù)器一般會(huì )部署apache(或者tomcat),而業(yè)務(wù)系統的網(wǎng)頁(yè)(如html,php)則通過(guò)apache服務(wù)轉為HTTP協(xié)議通信給用戶(hù)。

2.業(yè)務(wù)系統不同的業(yè)務(wù)頁(yè)面由業(yè)務(wù)引擎來(lái)進(jìn)行控制和處理,業(yè)務(wù)引擎還會(huì )訪(fǎng)問(wèn)數據庫,另外還需要將處理結果的頁(yè)面視圖通過(guò)WEB向用戶(hù)展示。

3.如果數據訪(fǎng)問(wèn)量不大,我們一般可以認為WEB是一臺服務(wù)器,業(yè)務(wù)引擎是一臺服務(wù)器,數據庫和服務(wù)是一臺服務(wù)器。如果數據量大,那WEB前面可能還有負載均衡服務(wù)器,業(yè)務(wù)引擎和數據庫可能是服務(wù)器集群。如果是超大型數據,如大數據,那傳統的oracle根本就不管用,要用到分布式文件系統,如Hadoop里面的HDFS。當然,如果數據量很小,一臺服務(wù)器裝下三者也可以。

三、后端軟件架構

以上分析是基于部署視圖對整個(gè)系統的理解。在一般的軟件業(yè)務(wù)系統中,web服務(wù)使用apache(開(kāi)源),數據庫服務(wù)用Mysql(開(kāi)源)等,都是成熟的軟件產(chǎn)品,或者我們可以認為它們是一種軟件工具。在實(shí)現業(yè)務(wù)系統中,我們能做的是去高效利用apache和mysql,而業(yè)務(wù)實(shí)現的核心是業(yè)務(wù)引擎的實(shí)現。

業(yè)務(wù)引擎是應用系統的核心,應用系統上成熟的模型是MVC模型。M是模型,是對數據庫應用接口的封裝,業(yè)務(wù)引擎即通過(guò)M模型的接口來(lái)訪(fǎng)問(wèn)數據庫的業(yè)務(wù)數據;V是視圖,是應用根據數據處理的結果而整合的頁(yè)面,最終會(huì )通過(guò)WEB推向用戶(hù)的瀏覽器;而C則是控制,即業(yè)務(wù)引擎的核心,其根據用戶(hù)的交互來(lái)進(jìn)行有針對的數據處理。

用戶(hù)的交互最終都會(huì )通過(guò)HTTP協(xié)議來(lái)傳送,而HTTP有兩種方式,類(lèi)似編程中的函數的參數傳遞,一種是GET的方式,即在網(wǎng)頁(yè)的訪(fǎng)問(wèn)地址后面加上參數來(lái)傳遞;另一種是POST方式,不出現在訪(fǎng)問(wèn)地址后面,而是出現在消息體中。MVC的控制器會(huì )根據參數的不同來(lái)區分不同的子業(yè)務(wù)請求,并將它們交給對應的數據處理引擎來(lái)處理。

業(yè)務(wù)引擎的開(kāi)發(fā)一般都是用解釋性語(yǔ)言來(lái)開(kāi)發(fā),如php,JSP,asp等等。中小型系統常用apache+php+Mysql這種組合,另外就是tomcat+jsp+mysql.

四、云平臺

云平臺并不是什么神秘的技術(shù),對于應用者而言,云技術(shù)能給我們帶來(lái)極大的便利和成本優(yōu)勢。我們來(lái)想象一下,一個(gè)公司如果只在廣州辦公,它開(kāi)發(fā)的產(chǎn)品系統是服務(wù)全國,如果它只是在自己的公司架設服務(wù)器,但全國各地用戶(hù)訪(fǎng)問(wèn)的IP包都要在網(wǎng)絡(luò )上跋山涉水來(lái)到廣州,北方的用戶(hù)的體驗肯定很差。假設淘寶的服務(wù)器都在杭州,那11.11的搶購,我們在廣州怎么搶得過(guò)杭州的。因為租賃云平臺來(lái)假設分布式的服務(wù)平臺是大型系統的不二選擇,有人可能會(huì )想,這些公司可以在全國各地租機房買(mǎi)服務(wù)器放著(zhù)啊,成本呢?而且用戶(hù)的訪(fǎng)問(wèn)也有峰值和周期性,360的搶票雖然牛掰,但如果不是過(guò)年,也沒(méi)多少人用吧。平時(shí)買(mǎi)那么多服務(wù)器就為了過(guò)年搶一搶多浪費,肯定比不上過(guò)年有針對性地租用云資源來(lái)得便宜。

簡(jiǎn)單地說(shuō),對于一般用戶(hù)來(lái)說(shuō),云平臺就是提供在看不見(jiàn)的地方提供虛擬服務(wù)器主機(CPU、內存、硬盤(pán))和數據庫、WEB服務(wù)(apache)等資源。對于云平臺的提供商,那才是虛擬集群技術(shù)人才的聚居地,咱們不去討論了。

目前,國內有阿里云、新浪云和百度云等知名云平臺。新浪云對于體驗用戶(hù)是免費的(php免費,java是收費的)。對于初學(xué)者,可以考慮申請新浪云來(lái)進(jìn)行技術(shù)開(kāi)發(fā)。

各種云的申請和創(chuàng )建云應用的過(guò)程都比較簡(jiǎn)單。以新浪云為例簡(jiǎn)單說(shuō)明一下,詳細的例程可以百度得到。

1.注冊新浪微博賬號,兩者是綁定的。

2.以新浪賬號登陸新浪云計算中心。

3.在新浪SAE上創(chuàng )建新應用,如圖:



上一頁(yè) 1 2 下一頁(yè)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>