nowhere

Member
Sep 21, 2012
14
0
1
cPanel Access Level
Root Administrator
Hi,
I've found that my server has a lot of entries like this:
Code:
userftp  8420  0.0  0.3 257204 63652 ?        S    14:55   0:00  |   \_ /usr/bin/php /home/userftp/public_html/wp-content/plugins/tweet-blender/ws.php
nobody    5732  0.0  0.4 265364 70860 ?        S    14:48   0:00  \_ /usr/local/apache/bin/httpd -k start -DSSL
userftp  5842  0.0  0.3 257204 63656 ?        S    14:48   0:00  |   \_ /usr/bin/php /home/userftp/public_html/wp-content/plugins/tweet-blender/ws.php
nobody    5778  0.0  0.2 226160 48724 ?        S    14:48   0:00  \_ /usr/local/apache/bin/httpd -k start -DSSL
userftp  5841  0.0  0.3 257204 63652 ?        S    14:48   0:00  |   \_ /usr/bin/php /home/userftp/public_html/wp-content/plugins/tweet-blender/ws.php
userftp 10282  0.5  0.3 257208 63656 ?        S    15:03   0:00  |   \_ /usr/bin/php /home/userftp/public_html/index.php
nobody    5820  0.0  0.3 230992 53572 ?        S    14:48   0:00  \_ /usr/local/apache/bin/httpd -k start -DSSL
nobody    5851  0.0  0.3 228560 51132 ?        S    14:48   0:00  \_ /usr/local/apache/bin/httpd -k start -DSSL
userftp  8669  0.1  0.3 257204 63648 ?        S    14:57   0:00  |   \_ /usr/bin/php /home/userftp/public_html/wp-content/plugins/tweet-blender/ws.php
nobody    5948  0.0  0.3 231032 53636 ?        S    14:49   0:00  \_ /usr/local/apache/bin/httpd -k start -DSSL
userftp  9044  0.1  0.3 257204 63652 ?        S    14:59   0:00  |   \_ /usr/bin/php /home/userftp/public_html/wp-content/plugins/tweet-blender/ws.php
nobody    5949  0.0  0.3 230992 53616 ?        S    14:49   0:00  \_ /usr/local/apache/bin/httpd -k start -DSSL
userftp  9879  0.1  0.3 257204 63652 ?        S    15:00   0:00  |   \_ /usr/bin/php /home/userftp/public_html/wp-content/plugins/tweet-blender/ws.php
nobody    5950  0.0  0.2 226156 48696 ?        S    14:49   0:00  \_ /usr/local/apache/bin/httpd -k start -DSSL
userftp  5986  0.0  0.3 257204 63656 ?        S    14:49   0:00  |   \_ /usr/bin/php /home/userftp/public_html/wp-content/plugins/tweet-blender/ws.php
userftp 10382  0.7  0.3 257208 63652 ?        S    15:04   0:00  |   \_ /usr/bin/php /home/userftp/public_html/index.php
nobody    5961  0.0  0.3 230868 53548 ?        S    14:49   0:00  \_ /usr/local/apache/bin/httpd -k start -DSSL
userftp  8697  8.4  0.0      0     0 ?        Z    14:57   0:36  |   \_ [php] <defunct>

If i do a "top" I get:
Code:
[email protected] [/dev]# top
top - 15:08:36 up 25 min,  1 user,  load average: 2.20, 3.32, 3.00
Tasks: 461 total,   2 running, 432 sleeping,   0 stopped,  27 zombie
Cpu(s): 31.1%us,  0.8%sy,  0.0%ni, 64.8%id,  3.3%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:  16316232k total, 10749956k used,  5566276k free,   115964k buffers
Swap: 16383992k total,        0k used, 16383992k free,  1326548k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
11795 userftp  20   0  261m  72m  10m R 99.6  0.5   0:12.53 php
12061 userftp  20   0  251m  62m  10m S  9.2  0.4   0:00.50 php
12060 userftp  20   0  251m  62m  10m S  8.6  0.4   0:00.50 php
12059 userftp  20   0  251m  62m  10m S  6.6  0.4   0:00.50 php
 2763 mysql     20   0 2175m  94m 4940 S  2.0  0.6   0:39.98 mysqld
12039 root      20   0 15296 1556  952 R  0.7  0.0   0:00.05 top
.....
It looks clear that /home/userftp/public_html/wp-content/plugins/tweet-blender/ws.php is the cause of this problem.
In fact the wordpress plugin error log reports:
Code:
[email protected] [/]# tail /home/userftp/public_html/wp-content/plugins/tweet-blender/error_log
[20-Aug-2013 13:10:59 UTC] PHP Warning:  Division by zero in /home/userftp/public_html/wp-content/plugins/tweet-blender/ws.php on line 151
[20-Aug-2013 13:11:15 UTC] PHP Warning:  Division by zero in /home/userftp/public_html/wp-content/plugins/tweet-blender/ws.php on line 151
[20-Aug-2013 13:11:49 UTC] PHP Warning:  Division by zero in /home/userftp/public_html/wp-content/plugins/tweet-blender/ws.php on line 151
[20-Aug-2013 13:11:50 UTC] PHP Warning:  Division by zero in /home/userftp/public_html/wp-content/plugins/tweet-blender/ws.php on line 151
[20-Aug-2013 13:12:06 UTC] PHP Warning:  Division by zero in /home/userftp/public_html/wp-content/plugins/tweet-blender/ws.php on line 151
[20-Aug-2013 13:12:41 UTC] PHP Warning:  Division by zero in /home/userftp/public_html/wp-content/plugins/tweet-blender/ws.php on line 151
[20-Aug-2013 13:12:57 UTC] PHP Warning:  Division by zero in /home/userftp/public_html/wp-content/plugins/tweet-blender/ws.php on line 151
At this point what should I do as this situation (plugin error and consequent "php defunct" zombies) is randomly causing server slowness and connection error to other websites hosted on this machine.
Of course I can contact user and tell him to disable plugin (WordPress › Tweet Blender « WordPress Plugins) but this is a patch not a solution. What would I do if all user tomorrow install that plugin?

Any suggestion is welcome
Thanks
 

nowhere

Member
Sep 21, 2012
14
0
1
cPanel Access Level
Root Administrator
Already checked that and it's the last version 4.0.1
Actually in accordance with customer I've disabled it and after Apache restart things seams ok.
The major issue actually is that a single wordpress plugin can make all other hostings unreachable. I thought users were more isolated and was hard for a user to slowdown the rest of the server
 

ThinIce

Well-Known Member
Apr 27, 2006
352
9
168
Disillusioned in England
cPanel Access Level
Root Administrator
That does come as a bit of a shock to most, but under suphp there isn't inherantly an ability to say "user n can only have x instantiations running at once".

You'll want something like CloudLinux for that, afaik
 

cPanelMichael

Administrator
Staff member
Apr 11, 2011
47,880
2,258
463
Hello :)

Yes, typically you will want to advise the end-user to disable that plugin or utilize software such as Cloud Linux that can limit resource usage on a per-account basis.

Thank you.
 

nowhere

Member
Sep 21, 2012
14
0
1
cPanel Access Level
Root Administrator
Ok I understand.
Maybe I could just try to block specific files (like wp-cron.php or /tweet-blender/ws.php) globally on apache so users can still use cronjob to schedule them.
What could be the best way?