`
on__the__way
  • 浏览: 24013 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

后台导出码问题记录及解决

    博客分类:
  • PHP
 
阅读更多

    系统后台提供激活卡的导出功能,之前单次的导出量的需求最多在几万,最近尝试30W次的导出各种出现问题。下面是问题记录和解决。

    问题一:后台点击导出后无反应,经查看日志出现错误Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 32 bytes) in ***

    分析:内存分配不足导致的错误,在php.ini中默认能够申请到的最大内存字节数是134217728 bytes,如果程序执行时需要更多的内存,就会报错。

    解决:由于这是后台请求,当时也是想先解决问题,通过设置ini_set ('memory_limit', '-1'),设置该接口可申请的最大内存,或者直接修改php.ini中的 memory_limit= 来设置不同的值,但该修改对所有接口有效。出现内存分配不足的原因感觉是php框架导致的,因为每次都会进行select,具体原因待补充。

 

    问题二:Maximum execution time of ***

    分析:这是由于每次程序的执行都有默认的执行时间,超过这个是金没有返回则会返回超时错误。

    解决:一是直接修改PHP.ini的max_execution_time = **s,但这样会延长所有PHP执行的最大时间;否则使用ini_set('max_execution_time', '0')设置本次执行的超时时间,0表示不限制执行的时间;或者使用PHP的set_time_limit()函数设置,表示最大时间加上设置的时间,在非安全模式或设置了php.ini的超时时间起作用。

 

    问题三:上一次生成出错后插入数据库提示primary key重复的情况

    分析:orimry key是自动产生的id值,上一次生成时产生的id插入到数据库但是没有更新id_genter,可能是因为php框架在实现id生成时,不是每次都是获取并更新id_gengter而是挡都插入之后在更新或者是最后出错的时机正式子更新id_genter之前,具体待排查。

    解决办法:由于每次都是读取id_genter,因此将id_genter中的id值修改超过当前数据库中的最大值即可。

 

    问题四:线下生成正常,但在线上出现没有出错但是执行中断的问题。

    分析:原因待排查

    解决:终极方案,直接写脚本从console调接口生成激活码,放弃使用后台web请求。生成用脚本生成,导出从后台导出。

 

    问题五:在使用激活卡时出现卡多次激活的情况

    分析:经排查发现是在适用激活款之后没有更新卡的状态,但程序中使用了框架的update方法,$codeObj->update(0) codeObj是激活码对应的对象。但这条语句没有执行,原因是在此语句执行之前的操作中框架已执行过commit操作,之后codeObj已经失效,因此并没有更新对应激活码的状态。此为推测。

    解决:不能直接用$codeObj->update(0)换成Dwriter::ins()->update_code_set_status_by_id(0, $codeObj->entityid->id);

 

    问题六:连续点击偶尔存在激活两次的现象。

    分析:激活流程是 点击发出激活请求-》验证激活码-》加时长-》更新码状态,但由于这是同步的流程,而加时长中会有多次IO操作,造成用时较长,这样当第一次请求还未更新状态第二次请求就会再加一次奖励,因为是并发执行的,因此造成多次激活。

    解决:将更新码状态提前到验证激活码后,先更新状态再加时长,若加时长出现问题则回滚码的状态。

分享到:
评论

相关推荐

    SiteServer v3.4.4 for .net1.1.rar

    解决提交表单中内容回车换行后台显示不正常问题。 解决信息管理--站点数据统计中如果回收站里面有东西,按栏目统计和按管理员统计的数据不一致问题。 解决提交表单字段表单提交类型改为内容编辑器加上验证不正常...

    齐博CMS(原PHP168整站) v7.0 正式版 big5.rar

    增加标签数据导入导出功能插件. 是否使用注册码才能注册 (该功能可以非常有效的防止注册机注册,使用该功能前,必须要配置好相应的短信接口或邮箱接口,启用该功能后,上面那一项验证码就不要使用了。) 解决...

    齐博CMS系统 7.0 BIG5.rar

    增加标签数据导入导出功能插件. 是否使用注册码才能注册 (该功能可以非常有效的防止注册机注册,使用该功能前,必须要配置好相应的短信接口或邮箱接口,启用该功能后,上面那一项验证码就不要使用了。) 解决...

    文章管理系统

    11.解决后台编辑器之前空2格低于一个汉字的问题 12.完善几个细节问题 13.整合20121103~20121220补丁 2012年12月20日 ★更新方式:admin文件夹改成你后台目录名,然后补丁包里的所有文件覆盖进去。 1.富媒体...

    齐博CMS(原PHP168整站) v7.0 正式版 GBK.rar

    增加标签数据导入导出功能插件. 是否使用注册码才能注册 (该功能可以非常有效的防止注册机注册,使用该功能前,必须要配置好相应的短信接口或邮箱接口,启用该功能后,上面那一项验证码就不要使用了。) 解决...

    齐博CMS(原PHP168整站) v7.0 正式版 utf8.rar

    增加标签数据导入导出功能插件. 是否使用注册码才能注册 (该功能可以非常有效的防止注册机注册,使用该功能前,必须要配置好相应的短信接口或邮箱接口,启用该功能后,上面那一项验证码就不要使用了。) 解决...

    ZYCH自由策划企业网站管理系统 v06 Build190602.zip

    功能管理:快捷插入、关键词加链、文章自动伪原创 注入管理:查看网站注入记录,IP锁定、设置注入功能 采集管理:文章采集,规则管理添加,过滤,采集规则导入导出 友情链接:添加/删除/修改图片及文字友情链接 ...

    齐博CMS系统 7.0 GBK.rar

    增加标签数据导入导出功能插件. 是否使用注册码才能注册 (该功能可以非常有效的防止注册机注册,使用该功能前,必须要配置好相应的短信接口或邮箱接口,启用该功能后,上面那一项验证码就不要使用了。) 解决...

    齐博CMS系统 7.0 UTF8.rar

    增加标签数据导入导出功能插件. 是否使用注册码才能注册 (该功能可以非常有效的防止注册机注册,使用该功能前,必须要配置好相应的短信接口或邮箱接口,启用该功能后,上面那一项验证码就不要使用了。) 解决...

    中国IT技术在线源码程序

    增加文章采集系统 制作了两套风格 后台可以更换 细节修正N处 <br>PLUS版本修改记录 Show页面Title显示完整标题 可以提高搜索引擎的收录 前台用户控制面板无法正常删除图片 最新图片滚动显示...

    NCV6X-信息交换平台技术红皮书

    1.1信息交换平台现状及存在的问题 59 1.2需求分析 59 1.3 JMS简介 60 1.3 JMS Client消息交互图 62 1.5解决方案 62 2.JMS传输模式 64 3. JMS Client For NC6.0 65 4 大文件传输模式 85 附录 86 1发送结果错误码 86 2...

    视易神通夜总会5.0安装包

    19.员工表导出EXCEL时,员工号中以0开头的都变成整数的问题,如001导出成1了. 20.公关集体签到连续签到出错的问题. 21.物品编码是否启用在前台点单时没有屏蔽的问题. 22.换房后没有把新房间的历史帐单打上标志的...

    asoft签到管理系统tykq3.5_build20110125

    2、管理员:人员管理 签到设定 部门设定 请假数据管理、自定义流程 系统设置 系统日志 在线更新 公告管理 各种用户行为记录导出 数据库管理 【给DIY用户】 根目录下文件为所有的程序文件,文件头部版权部分...

    通达OA2010 3.6.110712 补丁自动升级-纯净版

    修正工作流工作委托中委托记录步骤名称不正确的问题 修正工作流列表控件中如果有换行,则不能正确填写的问题 修正工作流报表由特殊控件引起的SQL报错的问题 修正工作流选择人员按角色选择不显示用户辅助角色的...

    外部交换平台操作手册.zip

    加密类注册 56 第七章 扩展 57 第八章 JMS及大文件传输模式 59 1信息交换平台异步通信解决方案 59 1.1信息交换平台现状及存在的问题 59 1.2需求分析 59 1.3 JMS简介 60 1.3 JMS Client消息交互图 62 1.5解决方案 62...

    帝国备份王(Empirebak) 2010 官方版.zip

    1、解决备份大数据问题,采用分组备份,备份稳定高效; 2、解决备份数据编码乱码问题,备份王智能识别编码; 3、解决不同MYSQL版本数据不能互导问题,通过备份王不存在数据库版本区别。 帝国备份王(EmpireBak)主要...

    人力资源管理软件(完全免费)

    人力资源管理软件解决了有些拼音码检索不到的问题(感谢☆缘☆,腿腿*^ō^*乖) 员工定制界面重叠问题(感谢我就是我)(人力资源软件) 考勤天和小时转换(感谢iplan) 人力资源管理软件考勤计算匹配请假、出差的漏洞...

    vivi万能小偷程序 小偷程序 vivi小偷程序 php小偷程序源码 网站采集系统

    ·调试模式,可观察采集性能,便于发现和解决各种错误 ·多条采集规则一键切换,支持导入导出 ·内置强大替换和过滤功能,标签过滤、站内外过滤、字符串替换、等等 ·IP屏蔽功能,屏蔽想要屏蔽IP地址让它无法访问 ...

    ecshop二次开发 47个经典插件开发案例 讲解很详细

    十六、解决ecshop新建页面分页问题 49 十七、刚修改的伪静态分类URL 52 十八、ecshop批发销售 66 十九、网银支付直通插件 实现方法 69 二十、商品列表页多图切换的实现 75 二十一、完善论坛发布的qq登录插件 77 二十...

    ecshop二次开发 47个经典插件开发案例 讲解很详细 学习参考感谢提供者

    十六、解决ecshop新建页面分页问题 49 十七、刚修改的伪静态分类URL 52 十八、ecshop批发销售 66 十九、网银支付直通插件 实现方法 69 二十、商品列表页多图切换的实现 75 二十一、完善论坛发布的qq登录插件 77 二十...

Global site tag (gtag.js) - Google Analytics