【unity游戏开发——网络】计算机网络中的三种数据管理模型(分散式、集中式、分布式)和三大通信模型(C/S、B/S、P2P)
注意
:考虑到热更新的内容比较多,我将热更新的内容分开,并全部整合放在【unity游戏开发——网络】专栏里,感兴趣的小伙伴可以前往逐一查看学习。
文章目录
- 一、数据管理模型
- 1、分散式 (Decentralized - 各管各的)
- 2、集中式 (Centralized - 一个大脑管所有)
- 3、分布式 (Distributed - 大家分工合作)
- 二、通信模型
- 1、客户端-服务器模型 (C/S, Client-Server)
- 2、浏览器-服务器模型 (B/S, Browser-Server)
- 3、点对点模型 (P2P, Peer-to-Peer)
- 专栏推荐
- 完结
一、数据管理模型
在早期的计算机网络中,为了有效的利用计算机,一般将数据通信模型分为分散式(Decentralized)、集中式(Centralized)、分布式(Distributed)
这三种方式决定了数据在网络环境中的管理方式。
1、分散式 (Decentralized - 各管各的)
- 比喻: 就像老早以前,每个办公室或家里都有一台独立的电脑,上面存着自己的文件(数据)。电脑之间不联网。
- 特点:
- 数据只存在自己电脑上。
- 别人看不到你的数据,你也看不到别人的。
- 同一个文件,不同部门可能各自存了一份(冗余)。
- 如果A部门改了文件,B部门的旧文件还是老样子(不一致)。
- 维护成本高(每台电脑都得管)。
- 缺点: 数据重复、容易不一致、管理麻烦、成本高。现在基本不用了。
2、集中式 (Centralized - 一个大脑管所有)
- 比喻: 公司买了一个超级大的中央服务器(就像总部的一个巨型保险柜)。所有人的数据都存在这个服务器里。大家的电脑(终端)只是用来连接和操作服务器上的数据。
- 特点:
- 所有数据存在一个地方(服务器)。
- 大家共享同一个数据源,看到的都是一致的。
- 消除了数据重复(冗余)。
- 优点: 数据一致、方便共享、管理相对集中。
- 致命缺点: 服务器(那个“大脑”或“巨型保险柜”)要是坏了或者网络断了,所有人都没法工作了! 风险太高。
3、分布式 (Distributed - 大家分工合作)
- 比喻: 结合了上面两种的优点。公司有总部(集中控制核心数据),但各地也有自己的小仓库(服务器),存放和处理本地常用的数据。小仓库之间、小仓库和总部之间都能联网协作。
- 特点:
- 数据既不是全分散,也不是全集中。核心数据可能集中管理(比如总部的数据库),其他数据和处理任务分散在不同地方的服务器上。
- 服务器之间可以互相通信、交换数据、分担工作。
- 优点: 既有集中式的好处(数据一致性、共享方便),又提高了容错性(一个地方坏了,其他地方还能工作一部分)和扩展性(加服务器就能处理更多任务)。现代互联网和企业系统的主流方式。
二、通信模型
1、客户端-服务器模型 (C/S, Client-Server)
- 工作流程:
- 比喻: 你去餐厅吃饭。你(客户端 Client)点菜 -> 服务员(服务端 Server)接收订单 -> 厨房处理 -> 服务员端菜给你。有明确的服务请求者和提供者。
- 特点: 最常见的网络通信方式。比如微信App(客户端)连接微信服务器(服务端),网游客户端连接游戏服务器。需要开发专门的客户端程序。
2、浏览器-服务器模型 (B/S, Browser-Server)
-
工作流程:
-
比喻: C/S 模型的特例。客户端不是专门开发的App,而是通用浏览器(Chrome, Edge, Safari等)。你打开浏览器访问淘宝(服务端),浏览器负责“点菜”和“端菜”。
-
特点:
- 客户端就是浏览器,不用为每个网站单独开发一个App。
- 使用 HTTP/HTTPS 协议(网页协议)。
- 服务端(网站)可以随意更换或升级,只要浏览器能访问就行。
-
优点: 客户端通用、部署方便(用户只要有浏览器就行)、服务端灵活。访问网页、Web邮箱、在线文档都是B/S。
3、点对点模型 (P2P, Peer-to-Peer)
-
工作流程:
-
比喻: 在一个集市上,每个人既是买家也是卖家。小明(Peer 1)想下载一首歌,他可能从隔壁的小红(Peer 2)那里下载一部分,又从远处的小刚(Peer 3)那里下载另一部分。同时,小明自己电脑上已有的部分也可能被其他人下载。每个人既请求服务也提供服务。
-
特点: 没有固定的中心服务器。参与者(节点)地位平等,互相直接交换资源(文件、计算能力等)。
-
优点: 充分利用每个用户的资源(带宽、存储),成本低,扩展性好(人越多资源越多)。
-
缺点: 管理困难(谁在线?谁有资源?)、可靠性不如C/S(某个用户随时可能关机下线)、安全性挑战(文件来源可信吗?)。
专栏推荐
地址 |
---|
【unity游戏开发入门到精通——C#篇】 |
【unity游戏开发入门到精通——unity通用篇】 |
【unity游戏开发入门到精通——unity3D篇】 |
【unity游戏开发入门到精通——unity2D篇】 |
【unity实战】 |
【制作100个Unity游戏】 |
【推荐100个unity插件】 |
【实现100个unity特效】 |
【unity框架/工具集开发】 |
【unity游戏开发——模型篇】 |
【unity游戏开发——InputSystem】 |
【unity游戏开发——Animator动画】 |
【unity游戏开发——UGUI】 |
【unity游戏开发——联网篇】 |
【unity游戏开发——优化篇】 |
【unity游戏开发——shader篇】 |
【unity游戏开发——编辑器扩展】 |
【unity游戏开发——热更新】 |
【unity游戏开发——网络】 |
完结
好了,我是向宇
,博客地址:https://xiangyu.blog.csdn.net,如果学习过程中遇到任何问题,也欢迎你评论私信找我。
赠人玫瑰,手有余香!如果文章内容对你有所帮助,请不要吝啬你的点赞评论和关注
,你的每一次支持
都是我不断创作的最大动力。当然如果你发现了文章中存在错误
或者有更好的解决方法
,也欢迎评论私信告诉我哦!