之前看了一个教程,介绍什么是C/S,什么是B/S,总觉得很奇怪。里面说到只要是app的,都是client-server,而网页端,如h5网站,web网站,小程序等都是brower-server架构。然后给出了一个对比表单:
我翻开历史一查,这历史没有年代,歪歪斜斜的每叶上都写着“味道不对”几个字。 我横竖睡不着,仔细看了半夜,才从字缝里看出字来,满本都写着两个字是“照本宣科”
先说结论: B/S架构是C/S架构的一种具体实现形式,其客户端程序是浏览器。
如果谁再问区别,就回答客户端与浏览器的区别就可以了。
一、二元对立来源
百度百科 baike.baidu.com/item/B/S%E7…
论文1:wenku.baidu.com/view/3b9673…
论文2:www.docin.com/p-120858496…
主要看第一篇论文。论文的第一部分介绍“单机程序”,发现几乎跟第二部分"c/s架构“的优缺点是一致的,感觉第一部分之所以简短是因为作者也解释不清楚”单机程序“与”c/s架构“的区别。我们通过对号入座的方式带入我们平时接触到的联网应用,似乎都更接近于B/S, 即便是app应用,都符合B/S的特征,除了“用户接口”这一条。
除了这两篇论文是最早分析B/S,C/S框架的,其他的并没有搜索到。然后百度or谷歌相关关键字,基本上都是复用以上论文总结的逻辑。
二、什么是C/S架构
在互联网还没有开发以前,计算机主要是“单机”类的软硬件系统,用户所有的应用、数据、操作只能通过单台计算机来计算,给出结果;但是,出现网络以后,一切变得不同了,以前单台计算机可以通过网络组合成能力更强的计算机,而且,物理上也可以分布在不同的区域,或者机房;随着广域互联网的发展,现在的计算机可以链接世界上任意的计算机来请求对应的服务。这个时候,服务的提供者,就是所谓的“server”,服务的使用者就是“client”。
(互联网发展史:zhuanlan.zhihu.com/p/150417958)
在当前社会实践中,我们终端客户被称为“客户端”,服务提供者被称为“服务器”(当然,在分布式服务器上,服务器也扮演着客户端的角色,你中有我,我中有你),直观的感受就是服务器是用来存储数据相关的内容,并且处理一些关联的业务逻辑,客户端则负责给用户提供交互体验。
此时,我们称之为”C/S“架构,也就是说客户端关注于交互,服务器关注于数据,两者都是互联网(或者局域网)上面的一个节点。
定义:
Client-server model is adistributed applicationstructure that partitions tasks or workloads between the providers of a resource or service, called servers , and service requesters, called clients
三、后话
之所以应该是最开始论文作者没有在写的时候,存粹是为了凑字数,还有自己闭门造车的理解,生生的将B/S剥离了出来。以至于后面以讹传讹,大家都这样公式化的记忆。
参考:
client/server and browser/server
stackoverflow.com/questions/5…
Client–server model
en.wikipedia.ahnu.cf/wiki/Client…
Difference Between Web Server and Application Server
www.differencebetween.net/technology/…
What is Client Server Architecture?
what-is-client-server-architecture
client/server and browser/server
stackoverflow.com/questions/5…
Client/Server Architecture
www.techopedia.com/definition/…
An Ontology for Classifying Advanced Visualization Infrastructures
www.researchgate.net/publication…
New way of doing business set to emerge - new 'browser-server' architecture -Internet/Web/Online Service Information
www.georgeschussel.com/wp-content/…
www.georgeschussel.com/portfolio/t…
Difference Between Client Server Application and Web Application
Read more: Difference Between Client Server Application and Web Application | Difference Between www.differencebetween.net/technology/…
history-of-the-client-server-architecture-information-technology-essay.php#citethis
The client/server model