在这一节中,我将介绍一下Minecraft大体上是怎么运作的,以及一个非常重要的概念:「端」.
Minecraft大体上属于「C/S架构(客户端/服务端架构)」.那什么是「服务端」,什么又是「客户端」呢?

「端」

从名字上其实就能看出大概的意思,
「服务端」是用来提供服务的,「客户端」是用户直接使用的.
那么这两个端在Minecraft中是怎么体现的呢?


Minecraft中的"端"

在Minecraft中两个端的职责区分如下:

  • 服务端
  • 负责游戏的逻辑,数据的读写。
  • 客户端
  • 接受用户的输入输出,根据来自服务端的数据来渲染游戏画面。


    值得注意的是,这里客户端和服务端的区分仅是逻辑上的区分.
    实际上如果你处于单人模式,
    那么你的电脑上会同时存在服务端和客户端,而且他们处于不同的线程.
    但是当你连接某个服务器时,
    你的电脑上只存在客户端,
    服务端被转移到了远程的一台服务器上.