首页 > 后端开发 > 正文

php分布式的框架 ASP、ASP.NET、PHP、JSP四种语言的特点及区别是什么?

2023-09-27 12:16:10 | 我爱编程网

大家平时对后端开发都十分关注,今天为大家整理了php分布式的框架 ASP、ASP.NET、PHP、JSP四种语言的特点及区别是什么?,下面就随我爱编程网小编一起来看一下吧。

php分布式的框架 ASP、ASP.NET、PHP、JSP四种语言的特点及区别是什么?

php分布式是什么


分布式计算是计算机科学中一个研究方向,它研究如何把一个需要非常巨大的计算能力才能解决的问题分成许多小的部分,然后把这些部分分配给多个计算机进行处理,最后把这些计算结果综合起来得到最终的结果。
分布式网络存储技术是将数据分散地存储于多台独立的机器设备上。分布式网络存储系统采用可扩展的系统结构,利用多台存储服务器分担存储负荷,利用位置服务器定位存储信息,不但解决了传统集中式存储系统中单存储服务器的瓶颈问题,还提高了系统的可靠性、可用性和扩展性。 (推荐学习:PHP视频教程)
php分布式是指多台服务器处理不同的工作,指的是业务上的一般,比如多台服务器有的处理日志分布到一些服务器,有的处理下单,分布到一些服务器。
框架作为协同开发规范和开发效率的保证,不得不被引入到日常开发中,可一旦加上了框架这层封装,势必影响php接口的整体性能。
基于php7+swoole的php代码的性能已经超过了静态编译的go语言。
当下流行的php框架laravel,确实解决了很多规范和开发效率问题;但是臃肿的架构和用php去实现的封装,让他的性能表现不佳。
针对这种情况,本架构选择c扩展框架phalcon作为开发框架,让框架带来的性能损耗,降到最小。
使用Web集群方式部署之后,首要调整的就是用户状态信息与附件信息。用户状态不能再保存到Session中,缓存也不能用本地Web服务器的文件缓存,以及附件,也不能保存在Web服务器上了。
因为要保证集群里面的各个Web服务器,状态完全一致。因此,需要将用户状态、缓存等保存到专用的缓存服务器,比如Memcache。附件需要保存到云存储中。
Web负载均衡
Web负载均衡(Load Balancing),简单地说就是给我们的服务器集群分配“工作任务”,而采用恰当的分配方式,对于保护处于后端的Web服务器来说,非常重要。

php分布式的框架 ASP、ASP.NET、PHP、JSP四种语言的特点及区别是什么?

php大型应用如何采用分布式架构?

大型分布式架构都是靠多种语言和工具共同分工合作实现的。

不是一两种工具或者语言能实现的,如果专指php那是没有意义的,因为php本身只是一个单进程的东东,更别说分布式。

大规模的web应用以及分布式架构主要在于服务器的整体架构:

1、web服务集群;

2、数据库集群;

3、分布式缓存;

php充其量只是实现其中一个节点的某个具体的web应用。

SD框架支持长连接协议TCP,WebSocket,短连接协议HTTP,以及UDP。

通过配置开放不同的端口开发者可以轻松管理不同的协议,并且可以共用一套业务代码,当然你可以通过智能路由进行代码的隔离。

长连接可以配置不同的数据传输协议,比如二进制协议文本协议等等,通过框架提供的封装器解包器接口可以自定义各种各种的协议封装,并且各种协议之间可以自动转换,比如你通过广播发送一个信息,该信息流向不同客户端,客户端间采用不同协议,那么框架会根据不同的端口自动转换不同的协议封装。

也可以通过Http给所有长连接客户端发送推送消息,类似这种混合协议协作的业务在SD框架上会异常简单。

扩展资料:

普通的Web开发,常用的模式就是用户登录之后,登录状态信息保存在Session中,用户一些常用的热数据保存在文件缓存中,用户上传的附件信息保存在Web服务器的某个目录上。这种方式对于一般的Web应用,使用很方便,完全能够胜任。但是对于高并发的企业级网站,就应付不了了。需要采用Web集群实现负载均衡。

使用Web集群方式部署之后,首要调整的就是用户状态信息与附件信息。用户状态不能再保存到Session中,缓存也不能用本地Web服务器的文件缓存,以及附件,也不能保存在Web服务器上了。因为要保证集群里面的各个Web服务器,状态完全一致。

因此,需要将用户状态、缓存等保存到专用的缓存服务器,比如Memcache。附件需要保存到云存储中,比如七牛云存储、阿里云存储、腾讯云存储等。

SD框架内大多数的对象都使用了对象池技术,对象池技术有利于系统内存的稳定,减少GC的次数,提高系统的运行效率,事实证明对象池对系统稳定做出了极大的贡献。

开发者也可以使用这一套对象池技术,增加对对象的复用,减少GC和NEW的频率,对系统毛刺现象和内存泄露方面都有很大的稳定性提升。

参考资料: 百度百科-php

php分布式的框架 ASP、ASP.NET、PHP、JSP四种语言的特点及区别是什么?

ASP、ASP.NET、PHP、JSP四种语言的特点及区别是什么?

ASP,全称为ActiveServerPages 我爱编程网

ASP是微软(Microsoft)所开发的一种后台脚本语言,它的语法和VisualBASIC类似,可以像SSI(ServerSideInclude)那样把后台脚本代码内嵌到HTML页面中。虽然ASP简单易用,但是它自身存在着许多缺陷,最重要的就是安全性问题。目前在微软的.net战略中新推出的ASP.net借鉴了Java技术的优点,使用CSharp(C#)语言作为ASP.net的推荐语言,同时改进了以前ASP的安全性差等缺点。但是,使用ASP/ASP.net仍有一定的局限性,因为从某种角度来说它们只能在微软的WindowsNT/2000/XP+IIS的服务器平台上良好运行(虽然像ChilliSoft提供了在UNIX/Linux上运行ASP的解决方案,但是目前ASP在UNIX/Linux上的应用可以说几乎为0)。所以平台的局限性和ASP自身的安全性限制了ASP的广泛应用。

ASP在执行的时候,是由IIS调用程序引擎,解释执行嵌在HTML中的ASP代码,最终将结果和原来的HTML一同送往客户端。

PHP,全称为PHP:HypertextPreprocessor

PHP的全名非常有趣,它是一个巢状的缩写名称——“PHP:HypertextPreprocessor”,打开缩写还是缩写。PHP是一种HTML内嵌式的语言(就像上面讲的ASP那样)。而PHP独特的语法混合了C,Java,Perl以及PHP式的新语法。它可以比CGI或者Perl更快速地执行动态网页。

PHP的源代码完全公开,在OpenSource意识抬头的今天,它更是这方面的中流砥柱。不断地有新的函数库加入,以及不停地更新,使得PHP无论在UNIX或是Win32的平台上都可以有更多新的功能。它提供丰富的函数,使得在程式设计方面有着更好的资源。目前PHP的最新版本为4.1.1,它可以在Win32以及UNIX/Linux等几乎所有的平台上良好工作。PHP在4.0版后使用了全新的Zend引擎,其在最佳化之后的效率,比较传统CGI或者ASP等技术有了更好的表现。

平台无关性是PHP的最大优点,但是在优点的背后,还是有一些小小的缺点的。如果在PHP中不使用ODBC,而用其自带的数据库函数(这样的效率要比使用ODBC高)来连接数据库的话,使用不同的数据库,PHP的函数名不能统一。这样,使得程序的移植变得有些麻烦。不过,作为目前应用最为广泛的一种后台语言,PHP的优点还是异常明显的。

JSP,全称为JavaServerPages/Servlet

JSP和Servlet要放在一起讲,是因为它们都是Sun公司的J2EE(Java2platformEnterpriseEdition)应用体系中的一部分。

Servlet的形式和前面讲的CGI差不多,它是HTML代码和后台程序分开的。它们的启动原理也差不多,都是服务器接到客户端的请求后,进行应答。不同的是,CGI对每个客户请求都打开一个进程(Process),而Servlet却在响应第一个请求的时候被载入,一旦Servlet被载入,便处于已执行状态。对于以后其他用户的请求,它并不打开进程,而是打开一个线程(Thread),将结果发送给客户。由于线程与线程之间可以通过生成自己的父线程(ParentThread)来实现资源共享,这样就减轻了服务器的负担,所以,JavaServlet可以用来做大规模的应用服务。

虽然在形式上JSP和ASP或PHP看上去很相似——都可以被内嵌在HTML代码中。但是,它的执行方式和ASP或PHP完全不同。在JSP被执行的时候,JSP文件被JSP解释器(JSPParser)转换成Servlet代码,然后Servlet代码被Java编译器编译成.class字节文件,这样就由生成的Servlet来对客户端应答。所以,JSP可以看做是Servlet的脚本语言(ScriptLanguage)版。

由于JSP/Servlet都是基于Java的,所以它们也有Java语言的最大优点——平台无关性,也就是所谓的“一次编写,随处运行(WORA_WriteOnce,RunAnywhere)”。除了这个优点,JSP/Servlet的效率以及安全性也是相当惊人的。因此,JSP/Servlet虽然在国内目前的应用并不广泛,但是其前途不可限量。

在调试JSP代码时,如果程序出错,JSP服务器会返回出错信息,并在浏览器中显示。这时,由于JSP是先被转换成Servlet后再运行的,所以,浏览器中所显示的代码出错的行数并不是JSP源代码的行数,而是指转换后的Servlet程序代码的行数。这给调试代码带来一定困难。所以,在排除错误时,可以采取分段排除的方法(在可能出错的代码前后输出一些字符串,用字符串是否被输出来确定代码段从哪里开始出错),逐步缩小出错代码段的范围,最终确定错误代码的位置。

JSP和ASP相比较:

运行速度、运行开销、运行平台、扩展性、安全性、函数支持、厂商支持、对XML的支持等等,ASP都不是JSP的对手。COM组件的复杂性实编程实现有一定的难度。而JAVABeans和JAVA的结合却是天衣无缝的。

JSP和ASP.NET相比较:

1.相对C#,JSP的脚本语言JAVA也是面向对象的、分布式的、解释的语言。

2.与C#相似JAVA同样去掉了难以理解的指针等概念,取而代之的是类和对象。

3.JSP有一项全新的技术——Servlet(服务器端程序)很好的节约了服务器资源。

4.JAVABeans是针对ASP.NET的ServerControl的技术。只要会JAVA,JavaBeans就很容易写出。

5.再有就是JAVA的JDBC数据库连接技术。

6.JSP对XML同样有十分广泛的支持。

1)面向对象性:

ASP+将C#作为一种面向对象语言,在很多方面来看,C#将成为微软的与Java相似的语言。

C#另一个有趣的地方是所有对象都自动变成为COM对象。如果C#能取得很大的市场份额,那么它将给ASP+带来类似于Java的功能,并且具备更快的性能,因为它可以和Windows环境紧密集成。

C#是ASP+开发中一个最重要的功能,微软会将C#发展成为Java的强劲对手。这也是他们.Net框架的一个重要组成部分。我认为C#是微软在编程市场上击败对手的主要工具。我期待着微软能在这个产品后面倾注全力,这样,C#可以成为许多程序员的又一种选择。C#产生的结果是将进一步加固微软和Sun产品的战线。这对用户是有利的,他们可以选择两者之一来开发新的应用。

2)数据库连接:

ASP另一个亮点是它使用ADO对象,ODBC,OLE-DB和事务处理管理器。因此ASPWeb数据库应用开发特别简单。ASP+发展了更多的功能,因为有了ADO+!ADO+带来了更强大更快速的功能。JSP和JDBC目前在易用性和性能上同ASP/ADO相比已有些落后,当新版本ASP+/ADO+出现后这样的差别会更明显。我个人希望SUN应尽快能花大力气来追赶ASP+/ADO+的组合。

3)大型站点应用:

ASP+将对大型站点(webfarms)有更好的支持。事实上,微软在这方面付出了巨大的努力。ASP+可以让你考虑到多服务器(multipleservers)的场合,当你需要更强大的功能时,仅仅只需要增加一台服务器。整个.Net框架已经充分地提供了这个方法。ASP+提供了外部会话状态(externalsessionstate)来提供内置式webfarm的支持。另外,由于请求的各组件相互间经过了充分的优化,所以速度很快。

于是ASP+现在可以在大型项目方面与JSP一样具有等同的能力。而ASP+还有价格方面的优势,因为所有的组件将是服务器操作系统的一部分。对于JSP,你需要购买昂贵的应用服务器群来达到同样的目的。

4)ASP+还提供更多的其它方面的新特性,例如:

*内置的对象缓存和页面结果缓存。

*内置的XML支持,可用于XML数据集的简单处理。

*服务器控制提供了更充分的交互式控制。

ASP+确实对ASP进行了较大的发展。

以上就是今天分享给大家的内容了,想要了解更多后端开发资讯,敬请关注我爱编程网!
与“php分布式的框架 ASP、ASP.NET、PHP、JSP四种语言的特点及区别是什么?”相关推荐
asp和php使用的框架 ASP、ASP.NET、PHP、JSP四种语言的特点及区别是什么?
asp和php使用的框架 ASP、ASP.NET、PHP、JSP四种语言的特点及区别是什么?

ASP、ASP.NET、PHP、JSP四种语言的特点及区别是什么?ASP,全称为ActiveServerPagesASP是微软(Microsoft)所开发的一种后台脚本语言,它的语法和VisualBASIC类似,可以像SSI(ServerSideInclude)那样把后台脚本代码内嵌到HTML页面中。虽然ASP简单易用,但是它自身存在着许多缺陷,最重要的就是安全性问题。目前在微软的.

2023-09-30 19:00:30
.net框架和php框架 ASP、ASP.NET、PHP、JSP四种语言的特点及区别是什么?
.net框架和php框架 ASP、ASP.NET、PHP、JSP四种语言的特点及区别是什么?

php和net的优势和区别都是什么?学习上:PHP和.NET的学习曲线相比,.NET的学习代价高一些,需要的知识也多一些,不过PHP流行一些学的人也多一些,社区远远多于ASP.NET,所以有难的问题好问些\x0d\x0a首先PHP是可以跨平台运行,但是ASP.NET也并不是只能运行在Windows上,很久以前.NET的跨平台版本Mono已经可以稳定的运行在Linux等其它操作系统上了,而且二

2023-09-05 20:35:10
分布式php框架 php分布式是什么
分布式php框架 php分布式是什么

php分布式是什么分布式计算是计算机科学中一个研究方向,它研究如何把一个需要非常巨大的计算能力才能解决的问题分成许多小的部分,然后把这些部分分配给多个计算机进行处理,最后把这些计算结果综合起来得到最终的结果。分布式网络存储技术是将数据分散地存储于多台独立的机器设备上。分布式网络存储系统采用可扩展的系统结构,利用多台存储服务器分担存储负荷,利用位置服务器定位存储信息,不但解决了传统集中式

2023-09-22 13:20:15
分布式框架php php分布式是什么
分布式框架php php分布式是什么

php分布式怎么部署基于ThinkPHP的分布式部署步骤ThinkPHP是支持绑定域名到一个模块的,比如绑定u.lingyun.net到Application下的User模块,绑定bbs.lingyun.net到Forum模块。利用这个特性我们可以实现分布式部署。下面是主要步骤:1、开启Session存储数据库在Common/Conf/config.php里添加如下几行:

2023-09-23 12:51:41
php分布式框架架构 php分布式是什么
php分布式框架架构 php分布式是什么

php分布式是什么分布式计算是计算机科学中一个研究方向,它研究如何把一个需要非常巨大的计算能力才能解决的问题分成许多小的部分,然后把这些部分分配给多个计算机进行处理,最后把这些计算结果综合起来得到最终的结果。分布式网络存储技术是将数据分散地存储于多台独立的机器设备上。分布式网络存储系统采用可扩展的系统结构,利用多台存储服务器分担存储负荷,利用位置服务器定位存储信息,不但解决了传统集中式

2023-09-27 14:22:20
asp和php是什么框架 PHP与ASP的区别是什么
asp和php是什么框架 PHP与ASP的区别是什么

PHP与ASP的区别是什么一、主体不同1、PHP:即“超文本预处理器”,是一种通用开源脚本语言。2、ASP:是ActiveServerPage的缩写,为“活动服务器网页”。二、特点不同1、PHP:是在服务器端执行的脚本语言,与C语言类似,是常用的网站编程语言。2、ASP:是微软公司开发的代替CGI脚本程序的一种应用,它可以与数据库和其它程序进行交互,是一种简单

2023-09-25 16:14:54
php分布式系统框架 php分布式是什么
php分布式系统框架 php分布式是什么

简述php的特点及作用PHP是一种服务器端、跨平台、html嵌入式的脚本语言。执行速度快:PHP是一种强大的CGI脚本语言,语法混合了C、Java、Perl和PHP式的新语法,执行网页比CGI、Perl和ASP更快,这是它的第一个突出的特点。扩展资料:PHP是目前最流行的编程语言,这毋庸置疑。它驱动全球超过2亿多个网站,有全球超过81.7%的公共网站在服务器端采

2023-09-28 03:20:21
php分布式部署框架 php分布式是什么
php分布式部署框架 php分布式是什么

php分布式怎么部署基于ThinkPHP的分布式部署步骤ThinkPHP是支持绑定域名到一个模块的,比如绑定u.lingyun.net到Application下的User模块,绑定bbs.lingyun.net到Forum模块。利用这个特性我们可以实现分布式部署。下面是主要步骤:1、开启Session存储数据库在Common/Conf/config.php里添加如下几行:

2023-09-29 16:07:37