服务端和客户端的区别及介绍
admin
2024-04-02 02:26:03
0

客户端和服务器通常是值互联网硬件所扮演的主要角色。客户端又称为用户端,与服务器相对应,与服务器端相互配合运行。

下面是两者的不同点:

1、定义不同

客户端:或称为用户端,是指与服务器相对应,为客户提供本地服务的程序。
服务器端:从广义上讲,服务器是指网络中能对其他机器提供某些服务的计算机系统。(如果一个PC对服务器端外提供ftp服务,也可以叫服务器)。

2、程序编写

客户端:客户端程序不需要我们编写,可以使用IE或者FireFox等浏览器。
服务器端:需要编写Server服务端程序。

3、组成不同

客户端:浏览器既是客户端。
服务器端:中央处理器、内存、芯片组、I和O总线、I和O设备、电源、机箱和相关软件。

4、储存方式不同

客户端:不需要存储。
服务器端:包括SAS和SATA、PCIe闪存卡、NVMe闪存和双列直插式内存插槽的实现在内有多种方式部署服务器端内存。

5、服务对象不同

客户端:使用客户服务。
服务器端:为客户端服务。

服务端

服务端是为客户端服务的,服务的内容诸如向客户端提供资源,保存客户端数据。是实现游戏特色化 的重要途径,也是最直接可以通过游戏表现出来的技术,比如你要修改某个NPC的参数,重加载后,在游戏内立刻体现出来。

服务端是一种有针对性的服务程序。它的主要表现形式以“windows窗口程序”与“控制台”为主。一般大型的服务器都是在linux环境下搭建。运行服务端的电脑称为:服务器。

服务端项目:
一、脚本技术
是实现游戏特色化的重要途径,也是最直接可以通过游戏表现出来的技术,比如你要修改某个NPC的参数,重加载后,在游戏内立刻体现出来。
二、引擎插件技术
是指实现脚本功能的程序,可以这么说,脚本是软件,引擎是硬件。当然相对于电脑来说都是软件。
三、创意设计
四、机器技术

一般理解
服务端是一种针对性的程序,所谓的针对性就是专门为某一客户端设立的程序。原则上来讲,服务端是不具备运算能力,因为服务端同时会与多个客户端建立连接,一旦服务端进行运算的话,就会占用大量的资源,从而影响到其他客户端的通信。所以服务端通常都只具备认证与传输数据功能。

复杂性
比如游戏服务端,游戏服务端就是为游戏客户端服务的,服务的内容包含为客户端提供登录,保护游戏玩家资料,提供玩家在线游戏,这也是和单机游戏的区别。游戏客户端的登陆,需要服务端的授权。举例:游戏服务端向玩家提供登陆器,而登陆器就是连接服务端的必须工具,登陆器也可以理解为服务器的授权文件。

内容
可以简单的理解为客户端服务的一些数据,装备数据,魔法技能数据,人物资料数据
这里要说明下如果客户端和服务端的内容不一样,那么客户端就显示不了服务端的内容。比如魔兽世界更新了,那么他肯定会给我俺家提供补丁,为什么要提供补丁呢,因为客户端需要这些补丁来显示服务端更新的内容,如果不更新这些补丁那么进游戏就显示不了。

安全相关
灰鸽子就是一种C/S远程控制软件。C代表Client,即客户的意思。S代表Server,服务的意思。简而言之,灰鸽子是一种提供客户服务关系的远程控制软件。而hacker们眼里的服务端,一般就是指这种C/S控制软件。
不要以为这里的C/S软件里,你是客户而hacker们是服务者,真正说来,中了远程木马的人才是提供服务者,hacker们眼里的服务端,或者说中了服务端木马的人,就是近乎可以随意操作的对象了。
这种类型的客户端,就是一种木马病毒,我们常见的这种病毒都是灰鸽子的病毒,一般来说,刚生成的病毒很容易就会被查杀,经验老道的hacker们一般会进行压缩加花或者绑定处理,以达到免杀的效果,所以我们在运行了未知名却查不到毒的文件后,应先立刻检查进程,看看是否多了一个不知名的危险项目,如果有,立刻结束掉(用户为SYSTEM的是不可能的),然后断网查毒。

编写方式
服务端可以采用VC++或者delphi进行编写,采用socket接口发送数据到服务器,服务器返回数据,如果OK的话就直接跳转到主界面。
服务端通讯模型
大部分都会采用IOCP完成端口进行通讯。在大量玩家同时上线的情况下,如果采用socket网络模型的话,会造成阻塞导致掉线。服务端安装在Linux系统下,充分的发挥了系统的硬件以及网络带宽。

客户端

客户端或称为用户端,是指与服务器相对应,为客户提供本地服务的程序。除了一些只在本地运行的应用程序之外,一般安装在普通的客户机上,需要与服务端互相配合运行。因特网发展以后较常用的用户端包括了如万维网使用的网页浏览器,收寄电子邮件时的电子邮件客户端,以及即时通讯的客户端软件等。对于这一类应用程序,需要网络中有相应的服务器和服务程序来提供相应的服务,如数据库服务,电子邮件服务等等,这样在客户机和服务器端,需要建立特定的通信连接,来保证应用程序 的正常运行。

简介
客户端也称为工作站,指连入网络的计算机,他接受网络服务器的控制和管理,能够共享网络上的各种资源。个人计算机接入因特网后,在获取因特网服务的同时,其本身就成为一台因特网上的工作站。网络工作站需要运行网络操作系统的客户端软件。
随着各类平板电脑、智能手机的出现,这些设备本质上是一个个小型化的手持计算机设备,具有相当强大的网络功能。他自然也就成了网络客户端中迅速扩大的主力队伍。

原理
客户端及伺服端的关系不见得一定建立在两台分开的机器上,同一台机器中也有这种主从关系的存在。提供服务的伺服端以及接受服务的客户端也有可能都在同一台机器上,例如我们在提供网页的服务器上执行浏览器浏览本机所提供的网页,这样在同一台机器上就同时扮演伺服端以及客户端。

发展
随着计算机网络的发展,连接形式逐渐发生变化。主流的两种网络连接模式为C/S和B/S模式,即客户端/服务器端和浏览器端/服务器端。因此,所说的客户端更应理解为c/s。即通过向客户机上写一些程序,保证即使服务器端出现故障或者维护时候,客户端依然可以在保证工作的前提下、实现脱机工作。

DNS客户端
当用户使用域名而不是IP地址访问网络资源时,系统会对需要访问的域名进行解析,即找到域名对应的IP地址。首先查询本地的域名信息缓存,如果查询成功,则返回相应的IP地址,否则向本地域名服务器发出DNS请求。

web客户端
web客户端主要指web浏览器(Browser)。其主要功能是将用户向服务器请求的web资源呈现出来,显示在浏览器窗口中。资源通常有html、pdf、image以及其他格式。主流的web页面浏览器有:微软的IE、火狐、Safari、chrome以及opera
浏览器的主要组件包括用户界面、浏览器引擎、渲染引擎、网络、UI后端、JS解释器、数据存储等。

游戏客户端
游戏客户端是将游戏中的很多资源储存起来的软件。玩家通过客户端输入指令,客户端翻译成数据发送给服务器,服务器处理完给出结果,然后再由客户端翻译成图形化表现出来告诉玩家。可以说,客户端是一个玩家和服务器之间中介。

移动客户端
移动客户端以手机为例,手机客户端就是可以在手机终端运行的软件。
无线互联网网络环境以及各种条件之下,手机客户端上网与手机WAP上网存在各自的优缺点。客户端软件需要在手机上安装才能使用;而利用手机WAP上网,第一次需要手动输入网址,将该网址保存为标签后便可以做到较为方便的访问。
在手机上完成输入网址或者众多保存的标签中查找需要的网站,确实是需要一定时间的。除了游戏类客户端,渐渐商务应用的客户端被大家熟悉和应用。

CS和BS 模式结合产品
例如手机QQ中,涉及到IM部分均为CS模式,而其他频道例如资讯、音乐、书城、股票等则通过BS方式实现。

客户端配置
客户端根据Myc1ienthttpbridge来使用队列化调用。Myclienthttpbridge可以与客户端一起托管在同一个进程、不同的进程或单独的服务器上。
Myclienthttpbridge服务使用WshttpBindIng去调用远程服务。客户端需要检索远程Internet服务的元数据(比如ImyContracthttpbridge的定义),并把它转换为一个队列契约(比如 IMyContract)。

客户端编程
若要调用服务的操作,则客户端首先要导入服务契约到客户端的本地描述(NativeRepresentation)中。如果客户端使用了WCF,调用操作的常见做法是使用代理。代理是一个CLR类,它公开了一个单独的CLR接口用于表示服务契约。注意,如果服务支持多个契约(至少是多个终结点),客户端则需要一个代理对应每个契约类型。代理不仅提供了与服务契约相同的操作,而且还包括管理代理对象生命周期及管理服务连接的方法。代理完全封装了服务的各个方面:服务的位置、实现技术、运行时平台,以及通信传输。

相关内容

热门资讯

【MySQL】锁 锁 文章目录锁全局锁表级锁表锁元数据锁(MDL)意向锁AUTO-INC锁...
【内网安全】 隧道搭建穿透上线... 文章目录内网穿透-Ngrok-入门-上线1、服务端配置:2、客户端连接服务端ÿ...
GCN的几种模型复现笔记 引言 本篇笔记紧接上文,主要是上一篇看写了快2w字,再去接入代码感觉有点...
数据分页展示逻辑 import java.util.Arrays;import java.util.List;impo...
Redis为什么选择单线程?R... 目录专栏导读一、Redis版本迭代二、Redis4.0之前为什么一直采用单线程?三、R...
【已解决】ERROR: Cou... 正确指令: pip install pyyaml
关于测试,我发现了哪些新大陆 关于测试 平常也只是听说过一些关于测试的术语,但并没有使用过测试工具。偶然看到编程老师...
Lock 接口解读 前置知识点Synchronized synchronized 是 Java 中的关键字,...
Win7 专业版安装中文包、汉... 参考资料:http://www.metsky.com/archives/350.htm...
3 ROS1通讯编程提高(1) 3 ROS1通讯编程提高3.1 使用VS Code编译ROS13.1.1 VS Code的安装和配置...
大模型未来趋势 大模型是人工智能领域的重要发展趋势之一,未来有着广阔的应用前景和发展空间。以下是大模型未来的趋势和展...
python实战应用讲解-【n... 目录 如何在Python中计算残余的平方和 方法1:使用其Base公式 方法2:使用statsmod...
学习u-boot 需要了解的m... 一、常用函数 1. origin 函数 origin 函数的返回值就是变量来源。使用格式如下...
常用python爬虫库介绍与简... 通用 urllib -网络库(stdlib)。 requests -网络库。 grab – 网络库&...
药品批准文号查询|药融云-中国... 药品批文是国家食品药品监督管理局(NMPA)对药品的审评和批准的证明文件...
【2023-03-22】SRS... 【2023-03-22】SRS推流搭配FFmpeg实现目标检测 说明: 外侧测试使用SRS播放器测...
有限元三角形单元的等效节点力 文章目录前言一、重新复习一下有限元三角形单元的理论1、三角形单元的形函数(Nÿ...
初级算法-哈希表 主要记录算法和数据结构学习笔记,新的一年更上一层楼! 初级算法-哈希表...
进程间通信【Linux】 1. 进程间通信 1.1 什么是进程间通信 在 Linux 系统中,进程间通信...
【Docker】P3 Dock... Docker数据卷、宿主机与挂载数据卷的概念及作用挂载宿主机配置数据卷挂载操作示例一个容器挂载多个目...