set_time_limit(0);//设置永不超时
ignore_user_abort(); //设置客户端断开,继续处理
//总数
$allusercount= $this->gamedb_model->query_onerow();
$allcount = $allusercount['count'];
$page = 1;//当前页
$pagesize=1000;//分页大小
$failt = 0;// 失败次数
$allpage =ceil($allcount/$pagesize);//分页总大小
while($page <= $allpage){
$erroruserl = '';
$userArr = $this->gamedb_model->query_lists("select limit ".($page-1)*$pagesize.",$pagesize");
if($userArr){
foreach ($userArr as $key => $name) {
$senderrorusers .=$name['roleName'].',';
$sendUserList[$name['roleID']] = $name['roleName'];
}
}
//print_r($sendUserList);
//print_r("<br />");
$sendArray['userlist']= json_encode(array_unique($sendUserList));
$jsonresult = $this->_sendreward($sendArray,$this->mailgifturl);
$resultobj = json_decode($jsonresult);
if($resultobj && $resultobj->result=='succ'){
$data['errordisplay']="奖品发送成功";
}else{
$erroruserl = $senderrorusers;//存取发送失败的用户
$failt++;
}
//日志
$this->comm_model->insert_query(
'admin_action_log',array(
'username'=>$this->session->userdata('username'),
'type'=>1,//发送邮件奖励
'content'=>'userlist='.$sendArray['userlist'].'|message='.$sendArray['message'].'|reward='.$sendArray['reward'].'|item='.$sendArray['item'].'|ger='.$sendArray['ger'],
'ip'=>$_SERVER['REMOTE_ADDR'],
'online'=>time(),
'status'=>$data['errordisplay'].'=='.$jsonresult,
'sendfailt'=>$erroruserl
)
);
// print_r($sendArray);
$senderrorusers='';
$page++;
unset($sendArray['userlist']);
unset($sendUserList);
unset($userArr);
}

php 发送超大数据处理的更多相关文章

  1. A7139 无线通信驱动(STM32) 添加FIFO扩展模式,能够发送超大数据包

    A7139 拥有电磁波唤醒以及10mW的发射功率,很easy实现长距离通信,眼下測试有障碍物能够轻松达到300m以上. 通过几天的调试,眼下能够发送随意大小的数据包,大小为1-16KB.所有使用中断收 ...

  2. kafka发送超大消息设置

    最近开发一cdc框架,为了测试极端情况,需要kafka传递100万条数据过去,1个G左右,由于其他环节限制,不便进行拆包(注:测下来,大包走kafka不一定性能更好,甚至可能更低). 测试百万以上的变 ...

  3. 用Python做大批量请求发送

    大批量请求发送需要考虑的几个因素: 1. 服务器承载能力(网络带宽/硬件配置); 2. 客户端IO情况, 客户端带宽, 硬件配置; 方案: 1. 方案都是相对的; 2. 因为这里我的情况是客户机只有一 ...

  4. Springboot 之 Filter 实现超大响应 JSON 数据压缩

    简介 项目中,请求时发送超大 json 数据外:响应时也有可能返回超大 json数据.上一篇实现了请求数据的 gzip 压缩.本篇通过 filter 实现对响应 json 数据的压缩. 先了解一下以下 ...

  5. WireShark数据包分析数据封装

    WireShark数据包分析数据封装 数据封装(Data Encapsulation)是指将协议数据单元(PDU)封装在一组协议头和尾中的过程.在OSI七层参考模型中,每层主要负责与其它机器上的对等层 ...

  6. 《openstack 和hadoop的区别是什么?》

    openstack 和hadoop的区别是什么? (一) openstack仿照的Amazon的云,hadoop仿照的是Google的云 openstack注重的是虚拟化/虚拟机及其配套的服务,had ...

  7. 写给系统管理员的25个PHP安全实践

    PHP是广泛使用的开源服务端脚本语言.通过HTTP或HTTPS协议,Apache Web服务允许用户访问文件或内容.服务端脚本语言的错误配置会导致各种问题.因此,PHP应该小心使用.以下是为系统管理员 ...

  8. iOS8:把这些七招APP哭

    6月3日.苹果发布了新一代的高配置手机操作系统iOS 8,我们看到了很多新的功能和引人注目的新变化.它为开发人员提供了许多其他更酷能力发展.第三方输入法也开放,这使得国内的百度.搜狗输入法是不过高兴的 ...

  9. VB封装的WebSocket模块,拿来即用

    一共就下面的两个模块,调用只使用到mWSProtocol模块,所有调用函数功能简单介绍一下: 建立连接后就开始握手,服务端用Handshake()验证,如果是客户端自己发送握手封包接收数据,先用Ana ...

随机推荐

  1. 宕机不等于关机,阴魂不散的vm

    今天早上刚到公司,就发现研发环境的机器连不上了. 公司研发环境的部署比较简单,物理机上装VMware Esxi 6 ,然后在esxi上装虚机. 检查发现:esxi ping不通,客户端也连不上:物理机 ...

  2. Java入门系列(十二)Java反射

    Why--指的是为什么做这件事,也既事物的本质. 反射之中包含了一个“反”的概念,所以要想解释反射就必须先从“正”开始解释,一般而言,当用户使用一个类的时候,应该先知道这个类,而后通过这个类产生实例化 ...

  3. android数据库简单操作

    1.DbOpenHelper package com.example.dbtest.dbHelper; import android.content.Context; import android.d ...

  4. Regex实例

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

  5. JavaScript之原生接口类设计

    //接口类         var Interface =  function(name , methods){             if(arguments.length!=2){       ...

  6. transform,变换

    1.transform属性:rotate(翻转),skew(倾斜),scale(缩放),translate(移位) 用法:transform: rotate(45deg) scale(0.5) ske ...

  7. Spring源码解读

    beanfactory https://www.cnblogs.com/lspz/p/6244948.html requestmapping https://blog.csdn.net/u012557 ...

  8. MySQL(二)MySQL的启动或链接失败

    有时候用命令mysql -u root -p 或者服务器启动mysql数据库的时候,会出现抛出异常并失败. 以下是遇过的异常. 1.1)抛出的异常:出现ERROR 2002 (HY000): Can' ...

  9. SpringBoot使用其他的Servlet容器

    <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring- ...

  10. 【转】Python之日期与时间处理模块(date和datetime)

    [转]Python之日期与时间处理模块(date和datetime) 本节内容 前言 相关术语的解释 时间的表现形式 time模块 datetime模块 时间格式码 总结 前言 在开发工作中,我们经常 ...