1、本身的含义不同:客户端(client,或称为用户端)是响应服务器向客户提供本地服务的程序。而服务器端(server),从广义上讲,服务器是指网络中能对其它机器提供某些服务的计算机系统(例如一个PC对服务器端外提供ftp服务,那么也可以被叫为服务器)。
2、执行的功能不同:客户端应该理解为C/S,即通过向客户机上写一些程序,保证即使服务器端出现故障或者维护时候,客户端依然可以在保证工作的前提下、实现脱机工作。服务器主要应用于数据库和Web服务,而PC主要应用于桌面计算和网络终端,设计根本出发点的差异决定了服务器应该具备比PC更可靠的持续运行能力、更强大的存储能力和网络通信能力,同时,对数据相当敏感的应用还要求服务器提供数据备份功能。
3、脚本语言的不同:客户端脚本语言中,有些是作为客户端脚本语言来运行的,它们由客户端的解释器来解释,如VBScript、Javascrip、JScript等都可以作为客户端脚本语言,当它们嵌入到HTML文件中时,即可以按照顺序被执行或者响应某个事件而对事件做出应答。而另外一些作为服务端脚本语言来运行的,如PHP、CGI、JSP等,它们由服务端的解释器来解释,当作为服务端脚本语言来运行时,它们主要生成HTML内容,也可以生成客户端脚本,当被传到客户端的浏览器时,这些客户端脚本代码也可以被解释实现特定的功能。1、定义不同:客户端或称为用户端,是指向客户提供本地服务的程序,而不是服务器。
2、储存方式不同:客户端不占用储存空间。
3、构成不同:浏览器就是客户端。
4、使用方法不同:客户端程序不需要我们编写,可以使用IE或火狐等浏览器。通常来讲,客户端是不需要绑定端口号的,而服务器端是需要绑定监听的端口号。其他的其实区别不是很大了,呵呵,从socket通信的角度来看,UDP通信属于帧传输,TCP则是流传输,在帧传输过程中对于消息的次序和到达情况没有需求,所以UDP属于不可靠传输,不需要确认和排序。这样在客户端和服务器端的实现上就没有太大的差别了。
但是客户端其实也可以用bind来绑定端口的,你在Linux下写一个简单的测试程序就知道了,嘿嘿。客户端按照我的理解可以这么认为:个人使用的,可以处理一般情况下的运算,上网浏览,游戏,看听音乐,各种电子表格,3d制作之类的。也可以是一种软件定义下的客户端,比如你玩的网络游戏,你的机器就可以算作是客户端,因为相对运算较少。也可以是一种管理模式,相当于网吧的客户端和服务器,你上机之后前台给你了开机玩游戏的权利,所以这种情况下,你玩的机器就是客户端,前台就是服务器,服务器并不比客户端强大,相反因为成本原因甚至服务器比客户端还要慢。再有比如你自己下载了一个游戏的服务器端,配置好之后你可以自己玩自己的网络游戏,不需要上网了,这种情况下你的机器既是客户端也是服务器端,这也是一种软件上的定义。服务器一般来说对运算的要求比较高,只要求其运算能力和存储能力,所以CPU的运算相当强大,存储空间几乎可以无限制增加,但是一般应用却并不出众,甚至有的服务器并不配置显卡和显示器。网络服务器还有相当大的网络吞吐能力,提供给客户端进行数据传输。有的情况下甚至有的客户端都不要求有多高的运算能力,只是提供给人们 *** 作的空间,运算都由服务器来提供了。当然了,现在的计算机技术日新月异,普通的PC机比以前的服务器专用机器还要强大很多,服务器和客户机的概念也逐渐模糊,更多的体现在厂商对利益的追求上,个人能够买到得服务器系统并不比一台强大的普通PC强多少,更多的是一种安全和稳定上的体现,更强大的系统容错和稳定是服务器的最高追求。minecraft只有服务端和客户端,没有你说的服主端,服主能输入指令是因为他开了服务器,可以直接在服务器中输入指令,他是在服务端中输入的指令,如果你是OP,你在客户端中输入的命令也被视为在服务端中输入的命令,同样可以实现功能
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)