導航:首頁 > IDC知識 > 推送伺服器搭建

推送伺服器搭建

發布時間:2021-02-12 18:20:26

1、使用第三方推送服務相比自己搭建推送伺服器有哪些優點和缺點?

看自己推送的服務有哪些,

如果你要推送的服務為價格A+1

你自己搭建推送服務為A+2

相對比自己搭建不發算 如果是長期需要推送服務 就可以選擇自己搭建

自己和第三方推送的優勢:

第一第三方比自己早一步建立的人脈和推送渠道
自己剛搭建沒有這些的所以要浪費很多時間和金錢去建立渠道和人脈

第二 第三方推送伺服器相對比自己搭建的推送服務要成熟
對自己剛搭建有很多不懂

2、如何實現伺服器給android客戶端主動推送消息

一、消息推送基礎
消息推送,就是在互聯網上通過定期傳送用戶需要的信息來減少信息過載的一項新技術。推送技術通過自動傳送信息給用戶,來減少用於網路上搜索的時間。它根據用戶的興趣來搜索、過濾信息,並將其定期推給用戶,幫助用戶高效率地發掘有價值的信息
當我們開發需要和伺服器交互的移動應用時,基本上都需要和伺服器進行交互,包括上傳數據到伺服器,同時從伺服器上獲取數據。
一般情況下,客戶端與伺服器之間通訊客戶端是主動的,但這就存在一個問題就是一旦伺服器數據有更新或者伺服器要下發通知給客戶端只能等客戶端連接的時候才能實現。這種方式使消息失去了實時性。
如何使客戶端能夠實時的收到伺服器的消息和通知,總體來說有兩種方式,第一種是客戶端使用Pull(拉)的方式,就是隔一段時間就去伺服器上獲取一下信息,看是否有更新的信息出現。第二種就是 伺服器使用Push(推送)的方式,當伺服器端有新信息了,則把最新的信息Push到客戶端上。這樣,客戶端就能自動的接收到消息。 
雖然Pull和Push兩種方式都能實現獲取伺服器端更新信息的功能,但是明顯來說Push方式比Pull方式更優越。因為Pull方式更費客戶端的網路流量,更主要的是費電量,還需要我們的程序不停地去監測服務端的變化。  
二、幾種常見的解決方案實現原理
1)輪詢(Pull)方式:客戶端定時向伺服器發送詢問消息,一旦伺服器有變化則立即同步消息。
2)SMS(Push)方式:通過攔截SMS消息並且解析消息內容來了解伺服器的命令,但這種方式一般用戶在經濟上很難承受。
3)持久連接(Push)方式:客戶端和伺服器之間建立長久連接,這樣就可以實現消息的及時行和實時性。
三、消息推送解決方案概述
A、C2DM雲端推送方案
在Android手機平台上,Google提供了C2DM(Cloudto Device Messaging)服務。Android Cloud to Device Messaging (C2DM)是一個用來幫助開發者從伺服器向Android應用程序發送數據的服務。該服務提供了一個簡單的、輕量級的機制,允許伺服器可以通知移動應用程序直接與伺服器進行通信,以便於從伺服器獲取應用程序更新和用戶數據。
該方案存在的主要問題是C2DM需要依賴於Google官方提供的C2DM伺服器,由於國內的網路環境,這個服務經常不可用。
B、MQTT協議實現Android推送
採用MQTT協議實現Android推送功能也是一種解決方案。MQTT是一個輕量級的消息發布/訂閱協議,它是實現基於手機客戶端的消息推送伺服器的理想解決方案。
wmqtt.jar 是IBM提供的MQTT協議的實現。我們可以從這里(https://github.com/toku/AndroidPushNotificationsDemo)下載該項目的實例代碼,並且可以找到一個採用PHP書寫的伺服器端實現(https://github.com/toku/PhpMQTTClient)。
C、RSMB實現推送功能
Really Small Message Broker (RSMB) ,是一個簡單的MQTT代理,同樣由IBM提供,其查看地址是:http://www.alphaworks.ibm.com/tech/rsmb。預設打開1883埠,應用程序當中,它負責接收來自伺服器的消息並將其轉發給指定的移動設備。SAM是一個針對MQTT寫的PHP庫。我們可以從這個http://pecl.php.net/package/sam/download/0.2.0地址下載它.
D、XMPP協議實現Android推送
Google官方的C2DM伺服器底層也是採用XMPP協議進行的封裝。XMPP(可擴展通訊和表示協議)是基於可擴展標記語言(XML)的協議,它用於即時消息(IM)以及在線探測。這個協議可能最終允許網際網路用戶向網際網路上的其他任何人發送即時消息。
androidpn是一個基於XMPP協議的java開源Android push notification實現。它包含了完整的客戶端和伺服器端。但也存在一些不足之處:
1) 比如時間過長時,就再也收不到推送的信息了。
2)性能上也不夠穩定。
3)如果將消息從伺服器上推送出去,就不再管理了,不管消息是否成功到達客戶端手機上。
如果我們要使用androidpn,則還需要做大量的工作,需要理解XMPP協議、理解Androidpn的實現機制,需要調試內部存在的BUG。
E、使用第三方平台
目前國內、國外有一些推送平台可供使用,但是涉及到收費問題、保密問題、服務質量問題、擴展問題等等,又不得不是我們望而卻步。
四、消息推送完美方案
綜合以上論述,在建立Android消息推送方面可謂方案多多,但每一款方案都有其優缺點。但無論如何,還是自己搭建一個推送平台是上策。因為你有、他有不如自己有。
舉個例子,在搭建自有推送平台上建議使用《某某Android消息推送組件》。該組不僅可以拿來即用,並且還可以提供源碼以便擴展,實現自己的特殊需求。
A、推送原理
Android消息推送組件基於XMPP協議實現Android推送。XMPP(可擴展通訊和表示協議)是基於可擴展標記語言(XML)的協議,它用於即時消息(IM)以及在線探測。這個協議可能最終允許網際網路用戶向網際網路上的其他任何人發送即時消息。

3、ios 推送是建立在 蘋果推送伺服器嗎

方法/步驟

在developer.apple.com的member center設置AppId屬性,
enable push.

在developer.apple.com的member center創建APN證書,
Development -> Apple Push Notification service SSL (Sandbox) 用於沙盒app
Proction -> Apple Push Notification service SSL 用於AppStore app
創建完畢後,可以第一步AppId的屬性列表中查看到證書名稱

基於第1步修改的AppID重新生成provision file,
在iOS Project中載入此provision file,
這樣編譯出的app才可以獲取到device token(推送唯一標識符)

以下為針對服務端的推送設置步驟--------
在keychain中找到第1步創建的APN證書,
展開此證書,分別導出證書和密鑰,
名稱設為cer.p12和key.p12

打開控制台程序,
使用openssl 將cer.p12及key.p12轉成cer.pem和key.pem
命令如下:
$ openssl pkcs12 -clcerts -nokeys -out cer.pem -in cer.p12
$ openssl pkcs12 -nocerts -out key.pem -in key.p12
測試生成的cer.pem及key.pem是否可用
$ openssl s_client -connect gateway.push.apple.com:2195 -cert cer.pem -key key.pem
註:gateway.push.apple.com:2195用於appStore app;
gateway.sandbox.push.apple.com:2195用於沙盒app;
以上命令執行後會列印一大羅信息,最後處於可輸入狀態,打幾個字元回車後自動斷開連接即為正常。
合並cer.pem及key.pem
$ cat cer.pem key.pem > ck.pem
上傳ck.pem到推送伺服器的推送程序的目錄。
Tip:-----------------------
find / -name "*.php"
查詢推送伺服器php文件目錄用。
scp ~/Desktop/ck.pem [email protected]:/var/www/html
用於上傳本地文件到Linux伺服器用。
9
伺服器php代碼載入ck.pem向蘋果伺服器推送消息:略
客戶端oc代碼獲取token,接收推送消息:略

4、如何自己搭建一個xmpp,實現推送消息

Android推送方案分析(MQTT/XMPP/GCM)
蝸牛TT 發布於 4個月前,共有 11 條評論
本文主旨在於,對目前平台上最主流的幾種消息推送方案進行分析和對比,比較客觀地反映出這些推送方案的優缺點,幫助大家選擇最合適的實施方案。
方案1、使用GCM服務(Google Cloud Messaging)
簡介:Google推出的雲消息服務,即第二代的G2DM。
優點:Google提供的服務、原生、簡單,無需實現和部署服務端。
缺點:Android版本限制(必須大於2.2版本),該服務在國內不夠穩定、需要用戶綁定Google帳號,受限於Google。

方案2、使用XMPP協議(Openfire + Spark + Smack)
簡介:基於XML協議的通訊協議,前身是Jabber,目前已由IETF國際標准化組織完成了標准化工作。
優點:協議成熟、強大、可擴展性強、目前主要應用於許多聊天系統中,且已有開源的Java版的開發實例androidpn。
缺點:協議較復雜、冗餘(基於XML)、費流量、費電,部署硬體成本高。

方案3、使用MQTT協議(更多信息見:http://mqtt.org/)
簡介:輕量級的、基於代理的「發布/訂閱」模式的消息傳輸協議。
優點:協議簡潔、小巧、可擴展性強、省流量、省電,目前已經應用到企業領域(參考:http://mqtt.org/software),且已有C++版的服務端組件rsmb。
缺點:不夠成熟、實現較復雜、服務端組件rsmb不開源,部署硬體成本較高。

方案4、使用HTTP輪循方式
簡介:定時向HTTP服務端介面(Web Service API)獲取最新消息。
優點:實現簡單、可控性強,部署硬體成本低。
缺點:實時性差。

對各個方案的優缺點的研究和對比,推薦使用MQTT協議的方案進行實現,主要原因是:MQTT最快速,也最省流量(固定頭長度僅為2位元組),且極易擴展,適合二次開發。接下來,我們就來分析使用MQTT方案進行Android消息的原理和方法,並架設自己的推送服務。

如果還不明白的 話,要看分析的話,給你個網址:http://m.oschina.net/blog/82059
自己看看。

5、如何搭建android推送mptt伺服器

近研究了一下Android推送,在網上搜到了很多種方式,覺得IBM的MQTT協議這種方式還是挺不錯的。
下面介紹一下搭建過程:
需要准備的工具如下:
(1)、下載Mosquitto(MQTT的代理,也可以用IBM的ISMB)
http://mosquitto.org/download/
我下載的是mosquitto-1.1.2-install-win32.exe,根據自己的需要下載,不安裝這個推送不了消息。
(2)、下載AndroidPushNotificationsDemo
https://github.com/toku/Androi ... /archive/master.zip

(3)、下載PhpMQTTClient
https://github.com/toku/PhpMQTTClient/archive/master.zip
將PHPMQTTClient部署到PHP伺服器上,運行,打開mosquitto安裝目錄的mosquitto.exe

6、是否可以從伺服器端給客戶機推送,實現遠程系統安裝?

瘦客戶機終端伺服器的系統的選擇首先要考慮用戶使用環境及整體網路環境,伺服器所匹配的瘦客戶機的數量也是有關系的,如果是伺服器安裝XP、WIN7系統那區域網內所帶的瘦終端的數量只限在十台以內,如果是伺服器安...

7、怎麼實現伺服器給android客戶端主動推送消息

採用MQTT協議實現Android推送功能是一種解決方案。MQTT是一個輕量級的消息發布/訂閱協議,是實現基於手機客戶端的消息推送伺服器的理想解決方案。 

常見的解決方案實現原理:

1、輪詢(Pull)方式:客戶端定時向伺服器發送詢問消息,一旦伺服器有變化則立即同步消息。

2、SMS(Push)方式:通過攔截SMS消息並且解析消息內容來了解伺服器的命令,但這種方式一般用戶在經濟上很難承受。

3、持久連接(Push)方式:客戶端和伺服器之間建立長久連接,這樣就可以實現消息的及時行和實時性。

(7)推送伺服器搭建擴展資料:

推送消息注意事項:

1、支持第三方推送內容,是要客戶端和伺服器都支持的,客戶端和伺服器都導入推送SDK。

2、伺服器推送內容,可以精確指定推送時間,推送的具體接收人,用戶群,位置。

3、即推送的維度可以使時間,位置,人群。

4、極光使用了兩種不同的通知方式,一種是推送通知,一種是推送消息。

5、如果要使用androidpn,則還需要做大量的工作,需要理解XMPP協議、理解Androidpn的實現機制,需要調試內部存在的BUG。

參考資料來源:網路-伺服器

參考資料來源:網路-Android客戶端

參考資料來源:網路-信息推送

8、伺服器推送安裝操作系統 怎麼操作

伺服器推送安裝操作系統? 你是有多台PC要安裝系統,然後想一起裝是嗎?
這個叫網刻,內首先你在網上容下載網刻軟體,然後安裝在你裝好系統的那台PC,充當服務端,其他未裝系統的PC保證跟服務端在一個區域網內,然後全部進BIOS調成網卡啟動,也就是PXE啟動。其他操作就看網刻軟體了,很簡單的

與推送伺服器搭建相關的知識