服务器与客户端概念| 学习笔记

简介: 快速学习服务器与客户端概念。

开发者学堂课程【Ajax 前端开发入门与实战服务器与客户端概念】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/595/detail/8507


服务器与客户端概念

 

内容介绍:

一、基础常识铺垫

二、服务器与客户端

三、小结

 

一、基础常识铺垫

在这部分内容当中,将会跟大家介绍几个非常常见的常识概念。第一个服务器客户端,第二个网络相关的一些概念,第三个是和通讯协议相关的一些理解,但这一部分的知识主要都是一些概念性的知识,让大家以理解为主,千万不要死记硬背。

 

二、服务器与客户端

什么是服务器,什么是客户端?他们之间存在什么差异?

其实不管是服务器还是客户端,总得来讲都是一台电脑,只不过在某些层面上有所差异而已。

image.png

先来看一个场景,在这幅图当中如果用户 a 想发条信息给用户 b,用户 a 和用户 b都是两台电脑。如果他们想发条信息给对方的情况下,可以直接发送吗?

应该是不行的。想想经常用的微信,想给某一个好友发信息的时候能直接发过去吗?它的内部是直接发送的吗?

他们内部必然是需要经过腾讯服务器的一个工作,也就是用户 a 如果想发条信息给用户 b,是先把这条信息发送给腾讯的服务器,由腾讯的服务器再将这条信息发送给用户 b。

image.png

1、概念层面上的差异

1) 服务器:能够提供某种服务的电脑

2) 客户端:想使用服务器所提供服务的电脑

2、硬件层面上的差异

1) 服务器:由于要给千千万万个客户端提供服务,因此一般来说,服务器的硬件配置要高一些

2) 客户端:个人电脑、手机、平板等都可以称作为客户端,对硬件配置并没有太高的要求。

下图2-1就是一个非常典型的服务器机房,在服务器机房里,电脑一般都不是经常所见的台式机或者笔记本电脑,都是称为一种叫做卡片机或者叫刀片机的形式存在。

这种形式的存在其实也是电脑,里面依然有内存、硬盘、CPU 存在。只不过这种方式的服务器、电脑,它的一些配置会高一些。

image.png

下图 2-2 中展示的就是经常常见的笔记本、台式机,需要注意一点的是服务器、客户端在硬件层面上其实是没有明显的一个划分。配置很差很差的个人电脑,也是可以把它当做服务器来进行使用,只不过这台服务器速度稍微慢一点而已。

 image.png

对于腾讯的这台服务器,它的硬件配置非常的高,并且可能还不仅仅是一台服务器,可能是有几百几千台服务器。为什么它会有这么多福气?因为他的客户量太大,每天有几亿个人在使用微信或者使用 QQ,所以它的服务器的性能一定是要非常非常高的。

注意:服务器与客户端在硬件层面上并没有明显的划分,配置很差的个人电脑依然可以当做服务器使用,只不过这台服务器的速度慢一些而已。

3、服务器能提供什么服务?

服务器提供的服务在生活当中经常使用,比如说通过浏览器来访问www.baidu.com,使用的就是百度服务器给的网页服务。在之前这幅图当中,用户a 发信息给用户 b 使用的是腾讯服务器提供的聊天服务,用户 a 想发封邮件给用户 b ,就需要使用到服务器所提供的邮箱服务。服务器提供各种各样的服务,经常常见的网页服务、邮箱服务、文件上传下载也就是通常所说的 ftp 服务或者聊天服务等等等等......

4、服务器软件

既然服务器也是一台电脑,那这台电脑就必须要安装操作系统,否则就是一台裸机,什么事情都做不了,更不用说提供服务了。但对于服务器来说,它的操作系统并不是大家通常所熟知的 Windows 操作系统。更多会选择 Linux 操作系统而作为它的操作系统进行使用,而个人电脑往往会使用安装 Windows 操作系统。

但既然在服务器上安装了一个操作系统,这个服务器能提供哪一些服务?比如说网页服务、聊天服务、邮箱服务是依赖于这台服务器的操作系统上安装的哪一些软件?

它是由这些软件对外提供服务的,就仅仅是一个操作系统其实很多事情也做不了,所以服务器是由操作系统加上软件结合起来对外提供服务的。

HTTP 网页服务: Apache 、 Tomcat 、 IIS 等

文件上传下载: VsFtp 等

邮箱服务: SendMail 等

数据存储服务: MySql 、 Oracle 等

这一块内容进行一个小结,所谓的服务器其实就是提供服务的啊,非常非常的简单,他就是来提供服务的。他说提供的服务是由这台服务器所安装的操作系统中所安装的一些软件来进行提供的,客户端就是使用服务器所提供的。

 

三、小结

服务器就是提供服务的,它所提供的服务是由这台服务器所安装的操作系统中所安装的一些软件来进行提供的,客户端就是使用服务器所提供的服务。

相关文章
|
1月前
|
存储 弹性计算 数据可视化
ECS实例概念
ECS实例是云上的虚拟计算服务器
23 2
|
2月前
|
消息中间件 运维 网络协议
客户端和服务器之间的通信
客户端和服务器之间的通信
32 0
|
2月前
|
监控 关系型数据库 Linux
|
3月前
|
Linux
CentOS7.9服务器一键脚本部署FRP内网穿透服务端与客户端
CentOS7.9服务器一键脚本部署FRP内网穿透服务端与客户端
226 0
|
19天前
|
网络协议 Python
pythonTCP客户端编程连接服务器
【4月更文挑战第6天】本教程介绍了TCP客户端如何连接服务器,包括指定服务器IP和端口、发送连接请求、处理异常、进行数据传输及关闭连接。在Python中,使用`socket`模块创建Socket对象,然后通过`connect()`方法尝试连接服务器 `(server_ip, server_port)`。成功连接后,利用`send()`和`recv()`进行数据交互,记得在通信完成后调用`close()`关闭连接,确保资源释放和程序稳定性。
|
1月前
|
开发框架 Java .NET
JavaWeb概念、应用、服务器
静态网站是指在服务器上预先准备好的网页内容,用户访问时服务器直接将这些静态页面发送给用户浏览器,没有经过额外的处理或数据库查询。
12 0
|
1月前
|
存储 弹性计算 固态存储
ecs基本概念
ecs基本概念
22 1
|
2月前
|
网络协议 Java API
【JavaEE初阶】 TCP服务器与客户端的搭建
【JavaEE初阶】 TCP服务器与客户端的搭建
|
2月前
|
自然语言处理 Java 编译器
【JavaEE初阶】 UDP服务器与客户端的搭建
【JavaEE初阶】 UDP服务器与客户端的搭建
|
2月前
|
安全 Shell 网络安全
Git学习---Git快速入门、Git基础使用、Git进阶使用、Git服务器使用(IDEA集成GitHub、Gitee、GitLab)、GitHub Desktop客户端
Git学习---Git快速入门、Git基础使用、Git进阶使用、Git服务器使用(IDEA集成GitHub、Gitee、GitLab)、GitHub Desktop客户端
131 0