当前位置:  开发笔记 > 编程语言 > 正文

PHP适用于非常大的项目吗?它可以是交易安全的吗?

如何解决《PHP适用于非常大的项目吗?它可以是交易安全的吗?》经验,为你挑选了2个好方法。

这个问题看似奇怪.

但是每次我做过PHP项目时,都会遇到这样糟糕的经历:

脚本在10秒后取消运行.这导致非常糟糕的数据库不一致(删除循环的坏例子:用户即将删除相册.相册对象从数据库中删除,然后删除照片的一半,脚本被杀死的地方,以及剩下10,000张照片,没有参考).

这不是交易安全的.我从来没有找到办法安全地做某事,以确保完成.如果脚本被杀死,它就会被杀死.就在循环中间.它刚刚被杀死了.这从来没有发生在使用java的tomcat上.如果需要很长时间,Java会运行并运行和运行.

很多时事通讯脚本试图通过将工作分成很多包来解决这个问题,即一次发送100个,然后重新发送页面(噢,真的很愚蠢),做下一个,等等.最常见的事情是挂起或脚本需要的时间超过10秒,而您的平台也会瘫痪.

但后来,我听说非常大的项目使用像studivz这样的PHP(德国的facebook克隆,实际上是德国最大的网站).所以有一种希望,这种不良行为只是来自不专业的托管公司,因为他们的服务器非常糟糕.这有什么道理?它是否可以这样配置,脚本永远不会因为它们需要更长时间而被杀死?



1> troelskn..:

PHP适用于非常大的项目吗?

每当我看到这样的问题时,我都会感到有点不安.什么是非常大的意思?对你来说可能很大,对我来说可能很小,反之亦然.这甚至假设我们使用相同的指标.您是否正在测量构建项目的时间,完成项目的生命周期,涉及的资金,使用它的人数,构建/维护项目的开发人员数量等.

也就是说,你所描述的问题听起来好像你不太了解你的技术.无论您选择哪种技术,这对您来说都是一个问题.例如,使用数据库事务来确保原子性.并使用异步脱机作业来处理长时间运行的任务(例如调度邮件列表).



2> Thomaschaaf..:

如果在Zend Framework等良好的框架中涵盖了不良行为,那就很多了.任何花费10秒钟的时间都会搞砸,但你总是可以通过http://de3.php.net/set_time_limit提高执行时间

许多大型网站都是用PHP编写的:Facebook,维基百科,StudiVZ,Digg.com等.很多你正在谈论的事情只是配置事情,你应该调查一下吗?

推荐阅读
mobiledu2402851203
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有