2016/10/24

雲端服務捉妖錄──REST DataSnap (上)

許多人在體驗 REST DataSnap 開發過程時,應該沒有遇過自己的 DataSnap Client 連不上自己的 Server 這種情況。

當然……
















偏偏就讓我遇上了………(眼神死)

而且居然還是在【自家環境】下發生,翻白眼都翻到太平洋去啦!


完全不明白為何連線失敗的當下,連要怎麼 Google 都不知道,再加上產品上線時間已經到了無法回頭的期限,情況十分危急。事關產品存亡的關鍵,一定要救!


還好,DataSnap 的彈性真不是蓋的,立馬調整連線方法。連線就能夠通了!

只是,這個作法只是暫時性的,效能並不好,而且必須跨部門協作──這對於一向孤傲的 Delphi 工程師實在是有損龍尊 (慶幸的是我已經替您走過這一遭)


畢竟這還是在自家環境下發生的,就必須先了解自家網路環境到底和別人家有何異同。

開始訪查之旅
(坐飛機 - 從松山飛桃園國際機場)
U1 = User1, U2 = User2, 以此類推。

U1:「我可以上網,但你的App不行」
大匠:「不可能,你一定安裝了什麼違反網管政策的軟體,才會造成我的App被擋掉的問題。」
U2:「我的也是同樣狀況,一定是你的App太爛
大匠:「(理智線瞬間熔斷) 全部給我重灌!」

在網管花了幾分鐘還原環境後,當下測試……
大匠:「你看!一切正常!還敢在那邊裝無辜!」
U1:「拽屁,那就用吧!」
大匠:「沒有人可以質疑 Delphier 的,一個都不行!」(仰天長笑貌)

就在準備去機場的時,來了個晴天霹靂的訊息。

U2:「站住!我的還是不行,你的App還是有問題!」
大匠:「(看著坐在電腦前的網管) 你~到底~動了什麼手腳!」
網管:「就還原而已。」
大匠:「你最後到底做了什麼設定?」
網管:「什麼設定?就還原,還原還需要我解釋嗎!」
大匠:「..................................................................................」

網管表示:
狠角色,問題就在你身上啊... 圖片來源


好!
查!都查!我通通查!


身為一個勤奮的程式設計師,可能還是需要這麼一點覺悟… 圖片來源


好了,故事看到這裡,我們已經得出兩個狀況:

  1. 使用者可以上網
  2. 使用者連不上REST DataSnap

果然環境千奇百怪,代誌不是憨人所想的【防火牆】這麼簡單,但答案也不難猜到。

(往下看答案)





























Proxy……居然是【Proxy】啊啊啊啊啊啊!


Proxy 小知識:節省頻寬的工具之一
可以把使用者看過的網頁存在它裡面,下一個使用者在看同一頁時就不用重複下載了!


雖然知道是 Proxy,但問題依舊存在


Proxy 可以關嗎?不行。


公司不會因為一個小小的服務而改變現有的網路架構。更不要說被老闆視為衣食父母的【客戶】了!


萬幸,DataSnap 彈性夠!

這是一個彈簧鞋的概念 圖片來源


在 DataSnap Service 修正之後,果然,服務順利上了軌道,內部測試一切正常。接下來便是正式公測啦!


































但是,身為一個勤奮的程式設計師,可能還是需要這麼一點覺悟…



後來,在這個事件結束好一陣子,某一天,公司來了幾位可能幾輩子壓根都不會想打交道的大人物──

























調查局檢查官參上!


而我必須搭機回松山了。卻知詳情,我們下回見!

(未完待續)

2 則留言:

  1. 快出下一章啊!
    等不及了,我怕啊!
    我怕我也有遇上這種情況啊呀

    回覆刪除