我們開發了一個APP,後端伺服器放在了美國亞馬遜的AWS EC2上。可是在國內訪問速度很慢。有可能是什麼原因造成的?

歷經了幾個月的時間一直找不到問題的節點,也升級了EC2也用上了CDN但是在國內訪問效果極差。用聯通3G網路訪問有時根本就不能訪問。


自問自答:

提出這個問題的同時在今天我們解決了。問題出現在1個多月前。當時的後端工程師建議在國內部署一個服務然後與美國的EC2服務進行同步。

為什麼選在美國亞馬遜的EC2主要是基於目標用戶的區域和經濟成本,但是我們發現僅限於標準型號的EC2產品,稍微升級後,賬單的金額就會不斷攀升。國內做APP應用的開發者最好還是選擇在國內的雲端伺服器。AWS雖然提供很好的服務,但是需要研究的東西還是很多。我們發現國外應用PATH把後端放在了AWS的北加州,我們覺得這款應用的訪問速度還不錯,也選擇放在了美國的北加州EC2和S3上。但是效果卻非常的差。

好了!問題的重點是出現在了DNS的解析上。我們的域名服務商是Godaddy,當我們了解到DNSPod後嘗試了進行一次解析,發現用3G網路使用時速度明顯被優化了。沒有做更多的優化和調整,整體速度得到了提升。用戶在上傳和下載的體驗已經達到了預期值。想對大家有點幫助。


關於為什麼使用CDN加速後,反而效果適得其反,變成了減速度:

1.首先理論上CDN的加速效果是毋庸置疑的,科學上這種現象非常規

2.假設出現原因也可以理解:以下面例子為例

比如,你在香港或者美國使用的VPS,那麼在這種情況下你申請一些大廠商提供的CDN加速服務,如果你備案了,那麼可以享受國內不同地區的節點提供的服務。
如果沒有備案,那麼廠商還是只能給你提供境外的節點來進行中繼,這樣的話很有可能把你香港VPS的內容分發到美國節點,反而導致你網站訪問變慢,就算同樣是美國節點也未必有你VPS的綜合性能更好,因此也可能導致網頁打開速度更慢。

但是,如果你已經備案了那麼你可以直接選擇國內的VPS之類,或許一次就解決問題了,很有可能你不太須要使用CDN服務了。除非你有特別的原因。

然而如果沒有備案的話,比較科學的做法應該是比如你用的是美國的VPS然後用香港的CDN節點來提供訪問。(當然這是理論上的,不絕對,因為香港的線路也分國際線路和「直連」內地的線路。)

3.實際上是否使用CDN服務,還要具體問題具體去看待,不能一概而論,要結合場景來議。

否則,很有可能導致吃力不討好,加速淪為減速帶

總之,工具用對場景才是工具,不然只會多餘和累贅!!!


這主要是由於出口帶寬的限制造成的,如果你的地點在華東或者北京附近,建議將伺服器架設在Tokyo。 由於國內router路線不穩定,啟用AWS免費的EC2 micro instance 做測試是最好的方法。


現在基本恢復了,也就過年那陣牆了一下,估計也不是針對AWS。


提供個解決問題的思路

終端上,Android root後,tcpdump抓包,wireshark分析下,能找到耗時最長的環節。

iOS越獄後,也是抓包。

之前的項目也遇到了在上海地區APP wifi下訪問非常慢,在深圳地區卻一切正常的情況。最後也是抓包後分析到上海電信主DNS解析3s失敗超時,然後自動切到了備選DNS一切正常。通知對方後,問題解決。


你還可以在EC2上選擇東京或是新加坡的伺服器,國內訪問會比美國伺服器快。當然由於出口帶寬的限制,與國內的Host比,速度上還是有差距的。


國內訪問海外雲平台緩慢可以了解一下SD-WAN解決方案,可以專門解決訪問海外第三方雲平台緩慢問題。也可以聯繫我做個溝通了解18817834438


出口帶寬的問題吧,如果是針對國外用戶的沒事,如果針對國內,要不用用我們阿里雲,免費測試下?


現在訪問東京的伺服器還是很慢


現在tokyo的實例在國內根本連接不上去,另外國內訪問amazon都非常慢,所以現在不建議使用aws,如果前期想節省成本,還是考慮國內的吧,例如阿里雲或者盛大雲,阿里雲費用會略高。


可以訪問。我的EC2和S3放在東京,在國內訪問都沒問題。


現在似乎AWS的tokyo伺服器IP被牆了?所有在tokyo建立的Instance和申請的IP都無法連通。。。@Ryan Huang


用新加坡region+cloudfront


美國針對亞洲出口帶寬小,而且美國到國內路程又遠,固然國內訪問就會慢。如果你市場用戶群集中在國內,當然是放國內機房最好。但如果你是考慮到APP伺服器內容方面受國內製度限制和海外也需要訪問,那放香港機房是最佳選擇,因為香港不需要備案,另外出口帶寬充足,不但國內訪問快,亞洲地區訪問也快。


推薦閱讀:

如何加快互相網路傳輸文件的速度?
網站頻繁間歇性宕機幾分鐘是怎麼回事?
實現一個http伺服器需要怎樣進行?需要哪些知識呢?
實驗室里想搭建生物信息學平台,請問是買塔式伺服器好還是刀片式的好?
雲伺服器都能用來做什麼?

TAG:亞馬遜Amazoncom | 互聯網 | 後端技術 | 伺服器 | AmazonEC2 |