Like Share Discussion Bookmark Smile

J.J. Huang   2021-07-13   天堂私服 01.初出茅廬   瀏覽次數:次   DMCA.com Protection Status

天堂私服 | Server、Client 是什麼?

Server、Client 是什麼?

常常在論壇或是文章,甚至是人的聊天訊息中,常常聽到 -

  • 服務器
  • 伺服器
  • 模擬器
  • 客戶端

這些到底是什麼?他們的用途又是?

Server

首先「Server」,中文直譯就是「服務器」,當然其他也有人稱為「伺服器」;顧名思義他們的主要用途就是提供「服務」。

Server 分為兩個層面:

  • 硬體

    • 就是你摸的到看得到的設備,最簡單的就是一台家用電腦、筆電甚至到專用型伺服器。
  • 軟體

    • 就是直接提供了一些「功能」或是「不特定」的一些服務的軟體。這些軟體都是由各種程式語言撰寫出來的。

註:那還有一個「模擬器」?其實這是天堂私服啟動一個 Service,模擬了天堂的服務器,所以有人稱「模擬器」。

Client

再來「Client」,中文直譯就是「客戶」,我們通常會將其稱為「客戶端」,通常會稱某個人、事、物為客戶,一定是服務方對其的稱呼。

註:所謂的「客戶端」不一定都是人唷,只要被服務的那一方,都可以稱之為「客戶」,就像是在使用電腦在玩天堂的您,也是一個「客戶端」

擬人擬物化 舉例

至此對其兩個名詞應該有一個簡單的理解;舉個例子,讓其擬人化方便腦中想像:

  • 擬人擬物化 Server

便利商店」這個想像為一個「服務器」,裡面提供了各式各樣的服務,像是 -

  • 購買商品
  • 繳費
  • 領錢/儲值
  • 寄貨/領貨

以上這些都是耳熟能詳的服務。

註:當然他有提供的服務都可以盡情享用,反之沒有提供的服務當然無法在這個「服務器」上找到。


  • 擬人擬物化 Client

 「」就是一位標準的一個「客戶端」:

」走進「便利商店」對服務員說:
 您:「您好,我要領包裹」
 店:「請問手機末三碼?」
 您:「123」
 店:操作機台查詢,並說
  「請問是X先生/小姐嗎?」
 您:「是的」
 店:至貨物倉庫尋找貨物取出,並說
  「這是您的包裹,請您簽收一下」
 您:「好的,謝謝」

 此處的「」就是那位「客戶端」。

註:再次強調,客戶端不是都一定是「人」,一個簡單的例子「停車場」是一個服務端,停在裡面的「車子」就是一個客戶端。

Server、Client 之間的關係?

想必看完上面的部分,應該已經知道「Server」與「Client」之間的關係了;
至於他們這之間是透過什麼做溝通?

在現今的科技技術,通常以網路做為媒介,既可以通過「內部網路」對內提供服務,也可以通過「網際網路」對外提供服務。
那Server、Client通過網路是怎麼做到溝通的?

在此處就不提太多關於網路的相關基礎知識。
請看到上面的[擬人擬物化 Client]的部分;看到「您」與「店」之間交談的過程。

這之間的過程大概可以分為四類:

  1. 目標(目的, 位置)
  2. 請求
  3. 處理
  4. 響應

說明:

    1. 這就是「便利商店」的位置、地址。您總是要知道服務端的店家位置,您才有辦法過去請求並享受其服務麻。
    1. 對於「請求」,常常會聽到所謂的「Request」,這就是發出一個對服務端的請求。<似:「您好,我要領包裹」>
    1. 此處先提到「回應」,常常會聽到所謂的「Response」,這就是服務端在收到請求後進行處理後,做的回應。<似:「請問手機末三碼?」>
    1. 最後才提到「處理」,通常是在服務端收到「請求」後,後續要進行的處理。<似:操作機台查詢>

註:為什麼網路上的文章,通常都沒有提到「目標(目的, 位置)」和「處理」,此處要特別提出?因為Server與Client之間通常不會只有「請求」與「回應」。
您能想像你不知道便利商店位置,然後要您去買一瓶水?然後到達便利商店後,拿著水至櫃檯跟服務員說要結帳,他只回應你說25塊錢,但是不收錢也不操作機台?

至此應該會有疑問,所以ServerClient之間就是做這麼平常的事情?
沒錯!其實他不難,只是他太「抽象」,不容易去理解罷了!

如果到這您都可以吸收理解,其實一張圖就可以代表ServerClient之間的關係:

Client and Server Model - Fast Tech Skills

註:點選圖片可以看到由「Quick Tips」頻道所解說的「Client and Server Model」Youtube 影片。

額外延伸

  • 「服務端」:通常是一對多提供服務,服務的能量會受限制於硬體設備的好壞,軟體撰寫能效能…等等因素。
    • 最常見的就是遊戲Lag,訂票網站、疫苗預約連不進去、塞爆…等等。
  • 伺服器端的特徵:

    • 被動的角色(從)。
    • 等待來自使用者端的請求。
    • 處理請求並傳回結果。
  • 使用者端的特徵:

    • 主動的角色(主)。
    • 發送請求。
    • 等待直到收到回應。

結語

相信到這應該已經對所謂的 Server、Client 有一個初步的了解;當然還有一堆我想寫,但是覺得不適合在這提及的相關知識,避免一下太多無法吸收而產生更多問題。

如果還想要更深入其他相關的知識,不妨將心中的問題輸入搜尋引擎,想必也會找到一些不錯的文章供您閱讀。
最後建議回顧一下首章天堂私服 | 天堂私服架設教學,了解其章節目錄。

免責聲明

  • 本部落格文章中皆不提供任何所謂的遊戲「主程式」、「模擬器」、「登入器」…等等相關程式的下載點。
  • 本部落格文章中所見之遊戲主程式和服務器端程序均來自網路發佈,版本歸原作者所有
  • 本部落格文章為研究SQL資料庫與修改JAVA語法使用,非商業用途,亦無做營運事實等任何一切商業行為
  • 本部落格文章內容是為研究學習設計思想和原理為目的,絕沒有故意侵權或惡意抄襲、篡改其他遊戲內容

註:以上參考了
維基百科 - 伺服器
維基百科 - 主從式架構
Youtube Quick Tips Channel - Client and Server Model