/usr/local/bin/redis-cli -a mypassword keys “s*” | xargs redis-cli -a mypasswod del

这里用了绝对路径

注意:如果么有找到s*的数据 将会报错  (error) ERR wrong number of arguments for ‘del’ command

一:问题描述
服务器莫名其妙出现很多sendmail <defunct>进程,
导致的后果:服务器奔溃,tomcat自动关闭。

二:问题查找过程
1.pstree可以看到是crond在守护这三个进程。
2.查找相关资料,结果显示是crond每隔一分钟会调用一次sendmail。
使用ps -ef|grep  进程名称   可以查看进程
三:问题处理
需要阻止crond定时调用sendmail,在etc下找到crontab文件,将MAILTO置为空,即MAILTO=””
,然后reboot重启服务器。
四:处理中遇到的其他问题
defunct:
1、用kill -9也杀不死该进程
2、用killall -9 也杀不死所有的进程
3、该进程下面有一个defunct进程,俗称 “僵尸”进程
4、阿里云面板重启解决

杀死僵尸进程的两种方法:备注下面两种方法本人测试行不通
1.重启服务器
2.杀死父进程
3.如何找到defunct僵尸进程的父进程?很简单,一句命令就够了:ps -ef | grep defunct_process_pid

原文:https://blog.csdn.net/shshjj/article/details/76177542

sendmail defunct 进程重复启动问题

&lt;?php
//简单的抽奖算法
//prob概率 总和为1k , 10k , 100k,自己设  id为具体奖品
$data = [
    ['prob' =&gt; 6000 , 'id' =&gt; 1],
    ['prob' =&gt; 16500 , 'id' =&gt; 2],
    ['prob' =&gt; 16500 , 'id' =&gt; 3],
    ['prob' =&gt; 900 , 'id' =&gt; 4],
    ['prob' =&gt; 700 , 'id' =&gt; 5],
    ['prob' =&gt; 59000 , 'id' =&gt; 6],
    ['prob' =&gt; 200 , 'id' =&gt; 7],
    ['prob' =&gt; 200 , 'id' =&gt; 8],
];

//抽奖概率

if(count($data) == 1){
    $gift = $data[0];
}else{
    //抽奖概率
    $prob_arr = [];
    $proSum = array_sum(array_column($data,'prob')); //概率总数目 千级 万级

    //计算1  推荐  10w内存消耗5M
    foreach ($data as $dk =&gt; $dg) {
        for($i=0;$i&lt;$dg['prob'];$i++){
            $prob_arr[] = $dk;
        }
    }
    //计算2  这种的内存消耗是1的2倍 时间消耗是1的4倍(10w测试,内存消耗10M) 并且概率总数越大,差别越大 这个不要用
//    foreach ($data as $dk =&gt; $dg) {
//        $prob_arr = array_merge($prob_arr,array_fill(0,$dg['prob'],$dk));
//    }

    shuffle($prob_arr);//打乱数组
    $prob_id = $prob_arr[mt_rand(0,$proSum-1)];

    //抽奖概率结束
    $gift = $data[$prob_id];
}

//本机联想E470测试结果如下

//0.000700 ~ 0.000200 ,内存使用189k 总和1k
//0.001400 ~ 0.004400 ,内存使用706k 总和10k
//0.040100 ~ 0.024300 ,内存使用5M   总和100k

我的tomcat9放在c盘,项目想放到d盘。如下操作

1.创建目录 D:\program\web 并把tomcat项目中的的WEB_INF考入其目录下

2.修改tomcat/conf/server.xml  在host目录内添加一行 <Context path=”/web” docBase=”D:\program\web” />

重启tomcat就可以了

这时候出现了404。想要把web目录list显示出来。修改一下tomcat/conf/web.xml如下,并重启

<param-name>listings</param-name>
<param-value>true</param-value>