擺脫技術思惟,轉向產品思惟——尋找「萬能」IDC的苦惱

背景:最近在新產品的開發任務完成後一直在爲尋找好的IDC和優質的託管服務忙碌。需求源自於咱們重點要解決以前老版產品面臨的國內外用戶訪問速度慢甚至鏈接不上的問題。除去架構技術上使用高性能、可擴展的方案,針對目前的併發量和數據量而言只要能保證網絡質量的優質就能夠達到較好的用戶體驗。服務器


      首先咱們的產品平臺數據須要較強的一致性、高可用性,並且不少是動態數據。根據CAP理論,咱們首先否決了分佈式部署的方案,一是本身和團隊對分佈式技術的拿捏還欠缺,二是從開發週期上來講不容許咱們有太複雜的研究和設計。因此就將目標轉向對有強一致性要求的數據和服務採用集中式部署的方案,因而面對國內網絡的互聯互通問題,甚至面對國際網絡的互通問題咱們就得依賴第三方服務——好的IDC和託管服務。在經歷了傳統解決方案中的多線機房,BGP機房(一直懷疑不是真正的BGP機房)的測試驗證,也經歷了某國內著名廠商的CDN加速技術的測試驗證後,一是昂貴,二是他們的技術針對TCP這層還不成熟,因此暫且放棄。網絡

      惆悵中仔細研究了下各類託管服務的指標,聽取了一些專業人士的回答建議,本身又動手計算估計了下網絡質量,想了想公司對託管服務這塊開支的容忍度(要知道BGP機房好貴的,CDN加速服務的價格更嚇人)。先說下BGP機房,從接觸到的BGP機房來看都是對國內線路的優化支持,即便咱們能把服務部署到國與國的骨幹節點上,咱們國家的出口帶寬還有可怕的大牆說不許也會影響到網絡質量,再加上3萬多千米的海底光纜傳播(好比到美國),各個節點的轉發,理想狀況下怎麼着延遲也獲得幾百毫秒吧,何況還不敢保證國外終端用戶的網絡質量和服務,不免又會出現國外用戶鏈接速度慢或者鏈接不上的讓用戶恨、讓領導氣的糟糕狀況。至於CDN加速服務,據他們的技術人員說對TCP這一層的加速得定製,因此前期也不敢十分保障。架構

      在進一步惆悵之中我在想一個問題:難道咱們不能把產品作成國內版和國際版,把這兩部分數據和服務分開,就近部署服務器不就能夠先解決這個問題嘛。我想你們見過很多相似的產品設計,好比evernote和印象筆記、網遊的不一樣區服......。接着我趕忙向曾經的產品人員瞭解了一下以前產品的使用背景,原來他們以前擔憂作成這樣後會遇到這樣的狀況:好比一個美國人在在美國用國際版可以有很好的體驗,好比登陸快,獲取各類信息快(固然,服務器就在他們美國的優質機房裏);結果這美國人有一天來了中國,由於產品的登錄慢或者鏈接不上就會對咱們的產品形成惡劣影響(其實我想來中國的美國人都知道有×××這個東西吧)。對這個產品理念我是不大能認同的,不能把產品設計成爲一種能知足各類極端狀況的完美產品,你們想一想咱本身訪問國外服務器上的東西慢不慢就知道了,你能夠理解這種狀況嗎?後期若是這種狀況不少不少了,說明咱們的用戶量也上來了,也有錢了咱再想別的辦法。另外,對於產品的設計來講我以爲也值得分爲國內版和國際版,咱們如今的設計是全球人民都用一樣的功能一樣的客戶端(固然不一樣語言),有句話是這樣說的「產品沒有國界,但用戶卻有國界」,如今咱們的產品設計並無對用戶有一個詳細的定位,每每是想到增長一個功能全部用戶都得升級,國內用戶還好說,仍是和咱們不一樣生活背景,文化背景的國外用戶呢?併發

後話:如今咱們還在進行着「萬能」託管服務的測試,我也已經把個人想法轉達給了相關人員,獲得了部分的確定可是也有部分不認同,總之我認爲在開發中若是能靠產品設計和業務調整避免一些複雜的技術狀況是值得的分佈式

相關文章
相關標籤/搜索