php,jsp,asp三者优缺点...

php,jsp,asp三者优缺点...,第1张

JSP ASP PHP
运行速度 快 较快 较快
运行耗损 较小 较大 较大
难易程度 容易掌握 简单 简单
运行平台 绝大部分平台均可 Windows平台 Windows/UNIX平台
扩展性 好 较好 较差
安全性 好 较差 好
函数性 多 较少 多
数据库支持 多 多 多
厂商支持 多 较少 较多
对XML的支持 支持 不支持 支持
对组件的支持 支持 支持 不支持
对分布式处理的支持 支持 支持 不支持
应用程序 较广 较广 较广
----------------------------------------------------
转载:
慢慢看吧!
ASP、JSP与PHP的比较

目前,最常用的三种动态网页语言有ASP(Active Server Pages),JSP(Java Server Pages),
PHP (Hypertext Preprocessor)。

简 介

ASP全名Active Server Pages,是一个WEB服务器端的开发环境, 利用它可以产生和运
行动态的、交互的、高性能的WEB服务应用程序。ASP采用脚本语言VB Script(Java script
)作为自己的开发语言。

PHP是一种跨平台的服务器端的嵌入式脚本语言 它大量地借用C,Java和Perl语言的语法
, 并耦合PHP自己的特性,使WEB开发者能够快速地写出动态生成页面它支持目前绝大多数数
据库。还有一点,PHP是完全免费的,不用花钱,你可以从PHP官方站点(
t)自由下载。而且你可以不受限制地获得源码,甚至可以从中加进你自己需要的特色。

JSP 是Sun公司推出的新一代站点开发语言,他完全解决了目前ASP,PHP的一个通病--
脚本级执行(据说PHP4 也已经在Zend 的支持下,实现编译运行)Sun 公司借助自己在Jav
a 上的不凡造诣,将Java 从Java 应用程序 和 Java Applet 之外,又有新的硕果,就是Js
p--Java Server Page。Jsp 可以在Serverlet和JavaBean的支持下,完成功能强大的站点
程序。

三者都提供在 HTML 代码中混合某种程序代码、由语言引擎解释执行程序代码的能力。
但JSP代码被编译成 Servlet 并由 Java 虚拟机解释执行,这种编译 *** 作仅在对 JSP 页面的
第一次请求时发生。在 ASP 、PHP、JSP 环境下, HTML 代码主要负责描述信息的显示样式
,而程序代码则用来描述处理逻辑。普通的 HTML 页面只依赖于 Web 服务器,而 ASP 、PH
P、JSP 页面需要附加的语言引擎分析和执行程序代码。程序代码的执行结果被重新嵌入到
HTML 代码中,然后一起发送给浏览器。 ASP 、PHP、 JSP三者都是面向 Web 服务器的技术
,客户端浏览器不需要任何附加的软件支持。

技术特点

ASP:

1 使用 VBScript 、 JScript 等简单易懂的脚本语言,结合 HTML 代码,即可快速地完成
网站的应用程序。
2 无须 compile 编译,容易编写,可在服务器端直接执行。
3 使用普通的文本编辑器,如 Windows 的记事本,即可进行编辑设计。
4 与浏览器无关 (Browser Independence), 用户端只要使用可执行 HTML 码的浏览器,即
可浏览 Active Server Pages 所设计的网页内容。 Active Server Pages 所使用的脚本语
言 (VBScript 、 Jscript) 均在 WEB 服务器端执行,用户端的浏览器不需要能够执行这些
脚本语言。
5Active Server Pages 能与任何 ActiveX scripting 语言相容。除了可使用 VBScript
或 JScript 语言来设计外,还通过 plug-in 的方式,使用由第三方所提供的其他脚本语言
,譬如 REXX 、 Perl 、 Tcl 等。脚本引擎是处理脚本程序的 COM(Component Object Mod
el) 物件。
6 可使用服务器端的脚本来产生客户端的脚本。
7ActiveX Server Components(ActiveX 服务器元件 ) 具有无限可扩充性。可以使用 Vi
sual Basic 、 Java 、 Visual C++ 、 COBOL 等编程语言来编写你所需要的ActiveX Se
rver Component 。

PHP:

1.数据库连接
PHP可以编译成具有与许多数据库相连接的函数。PHP与MySQL是现在绝佳的组合。你还可
以自己编写外围的函数取间接存取数据库。通过这样的途径当你更换使用的数据库时,可以
轻松地更改编码以适应这样的变。PHPLIB就是最常用的可以提供一般事务需要的一系列基库
。但PHP提供的数据库接口支持彼此不统一,比如对Oracle, MySQL, Sybase的接口,彼此
都不一样。这也是PHP的一个弱点。
2.面向对象编程
PHP提供了类和对象。基于web的编程工作非常需要面向对象编程能力。PHP支持构造器、
提取类等。

JSP:

1.将内容的生成和显示进行分离
使用JSP技术,Web页面开发人员可以使用HTML或者XML标识来设计和格式化最终页面。使
用JSP标识或者小脚本来生成页面上的动态内容。生成内容的逻辑被封装在标识和JavaBeans
组件中,并且捆绑在小脚本中,所有的脚本在服务器端运行。如果核心逻辑被封装在标识和
Beans中,那么其他人,如Web管理人员和页面设计者,能够编辑和使用JSP页面,而不影响内
容的生成。
在服务器端,JSP引擎解释JSP标识和小脚本,生成所请求的内容(例如,通过访问Java
Beans组件,使用JDBCTM技术访问数据库,或者包含文件),并且将结果以HTML(或者XML)
页面的形式发送回浏览器。这有助于作者保护自己的代码,而又保证任何基于HTML的Web浏览
器的完全可用性。
2.强调可重用的组件
绝大多数JSP页面依赖于可重用的,跨平台的组件(JavaBeans或者Enterprise JavaBea
nsTM组件)来执行应用程序所要求的更为复杂的处理。开发人员能够共享和交换执行普通 ***
作的组件,或者使得这些组件为更多的使用者或者客户团体所使用。基于组件的方法加速了
总体开发过程,并且使得各种组织在他们现有的技能和优化结果的开发努力中得到平衡。
3.采用标识简化页面开发
Web页面开发人员不会都是熟悉脚本语言的编程人员。JavaServer Page技术封装了许多
功能,这些功能是在易用的、与JSP相关的XML标识中进行动态内容生成所需要的。标准的JS
P标识能够访问和实例化JavaBeans组件,设置或者检索组件属性,下载Applet,以及执行用
其他方法更难于编码和耗时的功能。
通过开发定制化标识库,JSP技术是可以扩展的。今后,第三方开发人员和其他人员可以
为常用功能创建自己的标识库。这使得Web页面开发人员能够使用熟悉的工具和如同标识一样
的执行特定功能的构件来工作。
JSP技术很容易整合到多种应用体系结构中,以利用现存的工具和技巧,并且扩展到能够
支持企业级的分布式应用。作为采用Java技术家族的一部分,以及Java 2(企业版体系结构
)的一个组成部分,JSP技术能够支持高度复杂的基于Web的应用。
由于JSP页面的内置脚本语言是基于Java编程语言的,而且所有的JSP页面都被编译成为
Java Servlet,JSP页面就具有Java技术的所有好处,包括健壮的存储管理和安全性。
作为Java平台的一部分,JSP拥有Java编程语言“一次编写,各处运行”的特点。随着越
来越多的供应商将JSP支持添加到他们的产品中,您可以使用自己所选择的服务器和工具,更
改工具或服务器并不影响当前的应用。

应用范围

ASP是Microsoft开发的动态网页语言,也继承了微软产品的一贯传统——只能运行于微软
的服务器产品,IIS (Internet Information Server) (windows NT)和PWS(Personal Web Se
rver)(windows 98)上。Unix下也有ChiliSoft的插件来支持ASP,但是ASP本身的功能有限,
必须通过ASP+COM的组合来扩充,Unix下的COM实现起来非常困难。

PHP3可在Windows,Unix,Linux的Web服务器上正常运行,还支持IIS,Apache等通用Web服务器
,用户更换平台时,无需变换PHP3代码,可即拿即用

JSP同PHP3类似,几乎可以运行于所有平台。如Win NT,Linux,Unix NT下IIS通过一个插
件,例如JRUN或者ServletExec,就能支持JSP。著名的Web服务器Apache已经能够支持JSP。
由于Apache广泛应用在NT、Unix和Linux上,因此JSP有更广泛的运行平台。虽然现在NT *** 作
系统占了很大的市场份额,但是在服务器方面Unix的优势仍然很大,而新崛起的Linux更是来
势不小。从一个平台移植到另外一个平台,JSP和JavaBean甚至不用重新编译,因为Java字节
码都是标准的与平台无关的。

性能比较

有人做过试验,对这三种语言分别做循环性能测试及存取Oracle数据库测试。

在循环性能测试中,JSP只用了令人吃惊的四秒钟就结束了20000*20000的循环。而ASP
、PHP测试的是2000*2000循环(少一个数量级),却分别用了63秒和84秒。(参考PHPLIB)


数据库测试中,三者分别对 Oracle 8 进行 1000 次 Insert,Update,Select,和Delete
: Jsp 需要 13 秒,Php 需要 69 秒,ASP则 需要 73 秒。

前景分析

目前在国内PHP与ASP应用最为广泛。而JSP由于是一种较新的技术,国内采用的较少。但在
国外,JSP已经是比较流行的一种技术,尤其是电子商务类的网站,多采用JSP。
采用PHP的网站如新浪网(sina)、中国人(Chinaren)等,但由于PHP本身存在的一些缺
点,使得它不适合应用于大型电子商务站点,而更适合一些小型的商业站点。
首先,PHP缺乏规模支持。其次,缺乏多层结构支持。对于大负荷站点,解决方法只有一
个:分布计算。数据库、应用逻辑层、表示逻辑层彼此分开,而且同层也可以根据流量分开
,组成二维阵列。而PHP则缺乏这种支持。还有上面提到过的一点,PHP提供的数据库接口支
持不统一,这就使得它不适合运用在电子商务中。
ASP和JSP则没有以上缺陷,ASP可以通过Microsoft Windowsd的COM/DCOM获得ActiveX规
模支持,通过DCOM和Transcation Server获得结构支持;JSP可以通过SUN Java的Java Clas
s和EJB获得规模支持,通过EJB/CORBA以及众多厂商的Application Server获得结构支持。

三者中,JSP应该是未来发展的趋势。世界上一些大的电子商务解决方案提供商都采用J
SP/Servlet。比较出名的如IBM的E-business,它的核心是采用JSP/Servlet的WebSphere;
西方另外一个非常著名的电子商务软件提供商,Intershop。它原来的产品Intershop1 2, 3
, 4占据了主要的电子商务软件份额。它们都是通过CGI来提供支持 的。但去年10月后它推出
了Enfinity,一个采用JSP/Servlet的电子商务Application Server,而且声言不再开发传统
软件。

总之
ASP,PHP,JSP三者都有相当数量的支持者,由此也可以看出三者各有所长。正在学习或
使用动态页面的朋友可根据三者的特点选择一种适合自己的语言。

运维工程师干些什么

总结两句话

1、保障业务长期稳定运行(如网站服务器、游戏服务器等等)。

2、保障数据安全可靠(如用户名密码、游戏数据、博客文章、交易数据等等)。

由这两句话推演运维工程师要学些什么

一、保障业务长期稳定运行

出一点点差错,用户就要投诉了。

1、业务跑在什么上面?

网站服务器一般是apache,nginx,tomcat等。但是真正跑通流程还需要Mysql数据库来存储用户密码及其它。很多程序都要php的解析,所以LNMP、LAMP(即nginx、apache、mysql、php)环境部署是必须掌握的技能。

2、业务出了问题怎么及时知道?

这就需要监控软件来邮件或短信来通知你,常用的有zabbix,nagios等。报警发邮件,也得一个邮件程序呀,sendmail或postfix。

3、在家里收到报警,但服务器是内网IP,怎么也得解决问题吧?

在公司搭建open或pptp或openswan,在家里通过拨入内网,24小时解决问题唉,半夜爬起来解决问题也没工资。

二、保障数据安全可靠

出一点点差错,领导要找你喝茶了。

1、有时需要手动改数据库内容?

所以要会基本的Mysql数据库增删查改命令。

2、万一数据库服务器硬件坏了怎么办?

需要有个备库以备不时之需,所以需要Mysql主从复制。

3、数据库要还原怎么办?

所以需要在crond中定期全备Mysql数据,以便还原使用。如果要还原到指定时间点,还要学会Mysql增量备份与恢复。

4、如果是用户上传的或文件服务器坏了怎么办?

定时备份可能还不够,需要使用rsync加inotify来实时备份。以便任一时刻主服务器坏掉,也能保障所有有备份可以用来恢复。

5、小心黑客,要增加服务器安全性?

ssh轻易不能让外人访问,那么就设置只允许公司的IP或跳板机IP访问,这些都通过iptables来控制。

三、大性能

小公司总有一天会牛逼起来的,实在牛不起来咱也可以跳到大公司。

1、越来越多的用户来访问我们的网站,一台web服务器抗不住了怎么办?

那就需要多台web服务器来负担,但多台服务器之间怎么进行负载均衡呢,这就需要用到nginx反向代理或LVS+keepalived或haproxy+heartbeat了。

2、用户注册发表的文章与评论太多,一台数据库抗不住了怎么办?

数据库压力分为读和写,如果写抗不住,需要进行分表分库到多个服务器上。如果是读压力不够了,可以使用mysql-proxy读写分离,来分担读的压力。更简单方便的方法,把数据库里的内容放到内存上,这就用上memcache或redis了。

3、N多用户上传下载文件,磁盘抗不住了怎么办?

把多块磁盘做成raid,或者使用分布式存储文件系统如MFS,GlusterFS来提高磁盘的读写能力。

4、网站上好多,总有用户反应网站加载太慢,怎么办?

这时可以把网站上的通过squid或varnish缓存到网站前端,尽可能的增加访问速度,当然,最好是购买商业的CDN加速。

5、运营商是个大难题,他们之间的带宽好像很小,联通IP访问我电信网站怎么就这么慢呢?

这时可以使用bind自建一个DNS服务器,把网站的DNS记录指向自建DNS服务器上,配置好解析规则,以后联通IP解析到联通网站上,电信IP解析到电信网站上,体验就会好很多啦。

四、自动化

终极目标:跑死机器,闲死人。

1、公司新买100台服务器,公司竟然就1个移动光驱,这装系统得到什么时候?

使用kickstart或cobbler来网络远程自动安装系统吧。

2、每次装完机要优化很多内容,什么文件描述符、端口、软件安装啊,手动 *** 作不累死去?

赶紧学会shell,将解放非常多的工作量。

3、系统装完后登陆要输入密码,这么多台啊?

使用expect吧,自动读取提示来输入密码,并执行命令。

4、要批量把新代码发布到线上服务器,怎么办?

使用saltstack或puppet或ansible吧,绝对爽歪歪。

五、其他

1、搭整套测试环境需要5台服务器,但公司穷的只有一台空闲服务器?

学会xen或kvm或docker吧,虚拟出多台服务器,就能解决资源问题了。特别是docker,强烈推荐,以后某个研发人员让你部署一套新环境,分分钟帮他解决。

2、研发人员的代码控制,权限控制,总要运维人员管呀?

svn或git,这个是肯定要有的。

结尾:

现在我们在回过头来思考,运维工程师平时干些啥呢?

1、随时解决报警故障。

2、业务程序更新。

3、编写一些脚本,监控或完成其他可自动完成功能。

4、运维架构完善,部署一些用起来更方便更可靠或性能更好的开源工具以及制定运维流程规范。

5、打杂,如调交换机,装系统,部署新环境等。

在windows下安装apache php mysql。

从各官方网站下了APACHE2050、PHP5、MYSQL4020、PHPMYADMIN257。

apache_2050-win32-x86-no_sslmsi。

php-500-Win32zip。

较好的可移植性、可靠性以及较高的运行效率使 PHP 语言在当下行业网站建设中独占鳌头。利用 PHP 语言进行行业网站设计,能够实现数据库的实时性更新,网站的日常维护和管理简单易行,进而提高用户的使用效率。

扩展资料:

PHP加密:

加密总是与安全密不可分,而每个PHPer都必须将应用安全作为必要的设计思路融入代码中,以下是一些最佳实践的建议。

不要再使用MD5,不要使用sha1,基本上已经没有破解难度了。请使用 password_hash来哈希密码,由于 password_hash函数已帮你处理好了加盐。

而且作为盐的随机字串已通过加密算法成为了哈希的一部分password_verify()函数会自动将盐从哈希中提取出来,所以你无需考虑盐的存储问题。通信接口的签名,请使用非对称算法对签名秘钥进行加密, 并对秘钥设置有效期,定期更换。

参考资料来源:百度百科-PHP


PHP是超文本预处理器,是一种通用开源脚本语言。

PHP独特的语法混合了C、Java、Perl以及 PHP 自创的语法。利于学习,使用广泛,主要适用于Web开发领域。

优点:

1、流行,容易上手

PHP是目前最流行的编程语言,这毋庸置疑。它驱动全球超过2亿多个网站,有全球超过817%的公共网站在服务器端采用PHP。PHP常用的数据结构都内置了,使用起来方便简单,也一点都不复杂,表达能力相当灵活。

2、开发职位很多

在服务器端的网站编程中PHP会更容易帮助你找到工作。很多互联网相关企业都在使用PHP开发框架,所以可以说市场对PHP的开发程序员的需求还是比较大的。

3、仍然在不断发展

PHP在不断兼容着类似closures和命名空间等技术,同时兼顾性能和当下流行的框架。版本是7之后,一直在提供更高性能的应用。

4、可植入性强

PHP 语言在补丁漏洞升级过程中,核心部分植入简单易行,且速度快。

5、拓展性强

PHP 语言在数据库应用过程中,可以从数据库调取各类数据,执行效率高。

扩展资料:

缺点

1、PHP的解释运行机制

在 PHP 中,所有的变量都是页面级的,无论是全局变量, 还是类的静态成员,都会在页面执行完毕后被清空。

2、设计缺陷

缺少关注PHP被称作是不透明的语言,因为没有堆栈追踪,各种脆弱的输入。没有一个明确的设计哲学。早期的PHP受到Perl的影响,带有out参数的标准库又是有C语言引入,面向对象的部分又是从 C++和Java学来的。

3、对递归的不良支持

PHP并不擅长递归。它能容忍的递归函数的数量限制和其他语言比起来明显少。

参考资料来源:百度百科—PHP

先不说哪个好,他做完后在告诉你net比php好,那纯粹是在忽悠你了,
1、公司肯定这样说啊,他现在已经做出来了,他如果用ASP做的。肯定也会说ASP好,
2、至与哪个好,和程序没关系,和程序员有关系,这主要是看程序员的编程能力了,主要考虑的是安全方面和运行速度方面,
3、至于引擎搜索方便和程序的关系就更小一些了,主要看他们优化的怎么样,关键词加的好不好,程序运行速度的快慢
不过这个公司事先说好PHP,没经过你们同意,后期改net。他们是有责任的,可以借机拿他一下,比如说价格便宜一些啦什么的,这就你们自己看着办,嘿嘿


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/13458445.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-08-11
下一篇 2023-08-11

发表评论

登录后才能评论

评论列表(0条)

保存