linux - php循环对服务器造成的压力问题?
PHPz
PHPz 2017-04-11 09:57:47
0
7
631

主要实现功能:
linux服务器上使用php脚本做每隔10秒的定时查表任务。

当前实现方法:

php脚本进程守护工具:supervisor
php脚本逻辑:

while(true) { // some logic code... // 查询不大的表中的特定数据并处理 sleep(10); }

1. 请问这样做会不会对服务器带来很大的压力呢?
2. if 1. true, 如果会的话,压力会主要出在什么地方?
3. php脚本的类似定时任务有什么更优方法实现?

PHPz
PHPz

学习是最好的投资!

모든 응답 (7)
洪涛

Linux cron服务

crontab -u www -e
    左手右手慢动作

    crontab 啊, 定时任务 用crontab 比较常用吧, 10s运行一次对服务器没啥压力啊, 又不是并发,

      伊谢尔伦

      linux中sleep是挂起进程或是线程了,每10s检测一次的频率算很小了,不大可能给系统造成压力。定时检查在一些知名开源的项目中也很常用,尽管用就是了。单独开一个线程或是进程专门用作定时检测。

        巴扎黑

        如果条件允许,最好把web服务器和这种脚本服务器分开。这样脚本服务器的效率能得到保障,不会收web请求量的影响。

          大家讲道理

          有可能,要看你操作的内容,如果占用内存一直上升,但是没有释放掉,最后服务器应该会完蛋吧。。东西用完释放掉应该没问题

            刘奇

            毫无问题.关键看你执行的是什么.

              小葫芦

              如果不sleep的话,那CPU使用率还是很高的。之前有在阿里云测试过,看过监控。CPU基本在50%左右(不过服务器配置也偏低,个人用);加上sleep,CPU基本1%以内


              不过个人的感觉影响的因素,不单是CPU。比如带宽,硬盘读写,内存等均有可能。只是看业务逻辑不同,影响的因素也不同~

              另建议可以用usleep,当时好像是折算后0.1秒的时候性能就区别比较大(不过具体数值忘记了,自己测吧!)

                최신 다운로드
                더>
                웹 효과
                웹사이트 소스 코드
                웹사이트 자료
                프론트엔드 템플릿
                회사 소개 부인 성명 Sitemap
                PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!