我們開發了一個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 |