为什么很多网站前端使用PHP后台逻辑用Java

网站前端使用PHP后台逻辑用Java是因为:1、PHP需要重复执行;2、PHP容易犯错;3、Java的世界里也有JSTL、Velocity和Freemaker等。PHP由于其动态脚本语言的特性,包括类、函数、常量在内都需要在每次请求周期中重复执行后才能建立运行环境。

为什么很多网站前端使用PHP后台逻辑用Java-Worktile社区

1、PHP需要重复执行

PHP由于其动态脚本语言的特性,包括类、函数、常量在内都需要在每次请求周期中重复执行后才能建立运行环境;为了保证解析速度而牺牲编译质量;应用了FastCGI但仅仅只是复用进程处理请求减少fork成本而不是像其他语言,初始化完毕后通过FastCGI的接口获得数据并以对应接口返回数据等几个原因,基本上已经不可能在性能上追回当初更烂现在开着JIT牌跑车的Java了。更何况,还缺少了系统级共享数据的支持,使得核心数据一次性初始化后重复使用必须借助扩展或中间件。

2、PHP容易犯错

在PHP里是如此的容易犯错而难以发现,即使你用实质上出自官方的Zend Studio,也无法改变一个事实:要保证你的程序高质量无大错,得要有充足的经验、足够的严谨、以及——负责任的QA。淘宝的黄裳就曾经拿IDE这事开过玩笑。而玩笑背后的那个原因“缺乏中间件”最近几年有不少的改善,主要是不少中间件的支持变得更广泛了从而让PHP得益,但发展的根源其实还是在C和Java社区。性能和易犯错则是语言特性造成的技术难点,也是用来换取灵活、快捷的必要代价,很难去指望有根本的改善。

3、Java的世界里也有JSTL、Velocity和Freemaker等

Java的世界里也有JSTL、Velocity和Freemaker等,但和PHP灵活而强大的动态能力、丰富的函数和类库、轻松的学习成本、多到令人发指的文档相比,简直就是渣,就是渣啊!JSTL改完了要重启Context啊有木有?Velocity不关缓存也要重启啊有木有?Velocity开缓存性能低下啊有木有?即使这些都不管,调整下某个数据校验规则要改Action也要重启有木有?

延伸阅读:

什么是PHP?

PHP(PHP: Hypertext Preprocessor)即“超文本预处理器”,是在服务器端执行的脚本语言,尤其适用于Web开发并可嵌入HTML中。PHP语法学习了C语言,吸纳Java和Perl多个语言的特色发展出自己的特色语法,并根据它们的长项持续改进提升自己,例如java的面向对象编程,该语言当初创建的主要目标是让开发人员快速编写出优质的web网站。PHP同时支持面向对象和面向过程的开发,使用上非常灵活。

PHP是一个拥有众多开发者的开源软件项目,最开始是Personal Home Page的缩写,已经正式更名为 “PHP: Hypertext Preprocessor”。PHP是在1994年由Rasmus Lerdorf创建的,最初只是一个简单的用Perl语言编写的统计他自己网站访问者数量的程序。后来重新用C语言编写,同时可以访问数据库,1995年,PHP(Personal Home Page Tools)对外发表名列前茅个版本PHP1。此后,越来越多的网站开始使用PHP,并且强烈要求增加一些特性,如循环语句和数组变量等,1995年发布的PHP2加入了对mySQL的支持。

Andi Gutmans和Zeev Suraski在为一所大学的项目中开发电子商务程序时发现PHP2功能明显不足,于是他们重写了代码发布了PHP3。PHP3是类似于现代PHP语法结构的名列前茅个版本,PHP3的较早大的功能是它的可扩展性,PHP3的新功能和广泛的第三方数据库、API的支持使得这样程序的编写成为可能。

文章标题:为什么很多网站前端使用PHP后台逻辑用Java,发布者:小编,转载请注明出处:https://worktile.com/kb/p/36127

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小编小编认证作者
上一篇 2023年1月30日 下午10:36
下一篇 2023年1月30日 下午10:39

相关推荐

  • 地产项目如何管理员工工作

    管理地产项目中的员工工作涉及多方面的策略和技能,其中包括明确的目标设定、有效的沟通、持续的培训和发展、强化的团队协作、以及绩效的评估和激励。在这些策略中,明确的目标设定尤为关键。它为团队提供了清晰的方向,确保每个成员了解他们的工作如何贡献于更大的目标。通过设定具体、可衡量、可达成、相关性高和时限性的…

    2024年4月10日
    5200
  • 采购主管如何管理项目部

    项目管理对采购主管来说是一个挑战,但也充满机遇。有效的管理方法主要包括:确保供应链的稳定性、优化成本效益、加强与供应商的关系、采用技术工具提高效率。在这些策略中,加强与供应商的关系尤为重要。通过积极的沟通,了解供应商的能力和限制,采购主管可以在项目期间更好地协调需求,确保供应链的流畅性。这不仅有助于…

    2024年4月10日
    5200
  • 软件工程什么是devops

    软件开发生命周期中,DevOps是一种文化理念、实践方法与技术栈的集合体,旨在缩短系统开发生命周期,确保持续交付高质量的软件。DevOps关键特点包括:1、持续集成与持续部署(CI/CD)流程的自动化、2、跨功能团队的紧密合作、3、快速反馈机制的整合、4、微服务与容器化技术的广泛应用。 扩展解读CI…

    2024年3月26日
    7800
  • 项目进度计划软件有哪些

    项目管理工具有:一、PingCode;二、Worktile;三、Wrike;四、Smartsheet;五、Clarizen;六、Backlog。PingCode 是国内2021年软件项目管理榜单排名名列前茅的项目管理软件(36氪发布),在软件项目管理方面它有着非常多其他软件都不具备的优势。 一、Pi…

    2023年3月31日
    38800
  • 公司用oa

    改善企业运作的一种现代办公方式是采用办公自动化(Office Automation,简称OA)系统。这类系统通过整合多项功能,如文档管理、流程审批以及通讯联络,协助企业提升效率、减少错误并优化资源配置。特别是,1、办公流程自动化增强效率,2、信息共享促进团队合作,3、移动办公支持灵活性,4、数据安全…

    2024年1月12日
    21800
  • 选择低代码软件有什么考量因素?

    在当今快节奏的商业环境中,软件开发已经成为任何组织的关键方面。然而,由于市场上有无数的软件开发平台,选择合适的平台可能是一项艰巨的任务。对于任何想要创建满足其业务需求的高质量应用程序的组织来说,选择正确的软件开发平台至关重要。在本文中,我们将怎么选择专业的低代码开发平台?

    2023年9月6日
    34500
  • 项目控制的定义是什么

    项目控制的定义是项目管理者根据项目跟踪提供的信息,对比原计划(或既定目标),找出偏差,分析成因,研究纠偏对策,实施纠偏措施的全过程。所以项目控制过程是一种特定的,有选择的,能动的动态作用过程。

    2023年1月12日
    60900
  • DevOps中的容器编排与编排引擎的区别

    容器编排是部署、管理、扩缩、网络配置以及容器生命周期的整体自动化过程。编排引擎则是实现容器编排的工具或平台,例如Kubernetes、Docker Swarm 和 Amazon ECS。这些引擎提供了自动化容器操作的必要框架和功能。 容器编排的核心优势在于支持容器化应用的灵活性和扩展性。举个例子,K…

    2024年1月4日
    26400
  • 如何参与项目部精细化管理

    如何参与项目部精细化管理?要实现高效的项目管理,关键在于采纳有效的精细化管理策略、科学的规划与布局、持续的监控和改进、人员的专业培训与管理、合理的资源配置和高效的沟通协调机制。精细化管理主要是指通过科学的方法和工具来提升项目管理的精确性和细致程度。比如,在科学的规划与布局方面,管理者需要详细制定项目…

    2024年4月10日
    6200
  • 制造业如何管理

    制造业管理包括:一、生产计划管理;二、质量管理;三、成本管理;四、供应链管理;五、人力资源管理。生产计划管理是制造业公司的核心管理措施之一。它包括生产计划的制定、执行和监控。制造业公司需要根据市场需求、生产能力和资源情况等因素。 一、生产计划管理 生产计划管理是制造业公司的核心管理措施之一。它包括生…

    2023年5月23日
    73000

发表回复

登录后才能评论
注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部