- 博客(66)
- 收藏
- 关注
原创 记一次在一亿数据的大表里删除重复数据 by 勤勤学长
10月11日,某个用户出现了信息重复推送,导致出现重复数据,影响到了统计。需要通过用户ID、时间戳、事件,找出相同msgid字段相同的数据,并删除。数据太多了,动不动就是几秒都还无结果,3秒无结果的时候我都会停止运行。防止删除到其他的数据,所以还得把前边的条件一起放进来。防止出现缩表影响到正常业务的开展。查看表索引,刚好有匹配的索引。我用的是thinkphp框架。已知,表有接近1亿条数据。
2024-10-23 16:02:30 183
原创 宝塔 进程守护管理器 神坑,再次跌入。thinkphp-queue队列 勤勤学长
但是redis的定时任务还没到的时候,是有记录的,一到时间,就没有了。不行,就把能更新的都更新了(包括【进程守护管理器】),能卸载的卸载了。我生产了100个输出0~99的任务,用一个新名称,使用ssh连接服务器,执行。这个服务器A,只是我其中一个,还有另外的服务器B处理相同名称和不同的名称的队列任务。在等待的过程中,我把【进程守护管理器】备份配置信息,直接给卸载掉,重新安装。陆续有用户反馈,不同的涉及到队列的功能,部分任务没有执行到,无执行记录。已经有不同的用户反馈不同的问题了,还是比较核心的功能。
2024-10-11 18:36:53 361
原创 企业微信提示 当前客户端版本较低,请升级到最新版本后再试 解决方案
另外,有没有人卖新版本的hook的大佬?能输入验证码、带易语言使用案例的。右键企业微信图标,打开文件所在目录。找个版本号修改工具,把文件修改版本。
2023-11-10 11:57:08 7675 1
原创 PHP判处重复延长队列执行时间
14:00的时候,需要给1000个门店执行发券操作,有的门店需要发3个场景,开放平台的接口有请求频次限制,他是按照门店的场景发券需要间隔10秒。比如说,AB两个门店同时发a券,但不能 A门店同时发a、b券。
2023-08-07 14:55:05 654
原创 thinkphp 不同的用户、不同的角色显示不同的菜单 - 勤勤学长
需求系统是多用户使用。以公司为主体,公司分为管理员和运营人员。系统管理员可以控制系统菜单,公司管理员可控制系统菜单的显示与否。user1=管理员user2=运营人员建表,储存菜单CREATE TABLE `app_nav` ( `id` int NOT NULL AUTO_INCREMENT, `title` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL, `pare..
2022-05-16 10:55:40 690
原创 thinkphp6 cli 命令行方式访问 控制器方法
方法来自为了不影响当前程序,拷贝index.php文件并且命名cli.php,加入代码if (false !== strpos(PHP_SAPI, 'cli')) { $_SERVER['REQUEST_URI'] = $_SERVER['argv'][1] ?? '';}cd进入public目录,执行php cli.php index/test// index是控制器,test是方法...
2022-04-25 14:15:10 1440
原创 mysql如何找出时间段不连贯的用户ID
如图,当时间来到13:00,就应该执行出价0.1元,而不是因为没有下个时间段所以不执行。即,要查出13:00后边还有没有衔接的时间段,没有就出价0.1元。13:30的时候就已经不能再查出来并且再次执行。
2021-12-22 13:25:26 740
原创 thinkphp6 Session 为null 排雷经过
状况:当前方法,储存后能读取出来,在其他访问就读取不到了。解决:储存的时候,用了exit,exit和die会导致Session失效。把这些代码去掉。
2021-12-03 16:59:37 689
原创 2021宝塔面板使用webhook拉取腾讯工蜂git私库代码,by勤勤学长
服务器安装gityum install git生成密钥ssh-keygen -t rsa -C "your_email@example.com"三次回车查看密钥并且复制cat ~/.ssh/id_rsa.pub打开腾讯工蜂个人中心,ssh密钥,新增,保存打开宝塔面板安装宝塔WebHook,添加脚本#!/bin/bashecho ""# 输出当前时间date --date='0 days ago' "+%Y-%m-%d %H:%M:%...
2021-08-25 19:31:49 1253
原创 thinkcmf php 前后端分离验证码实现流程
需要考虑尽可能在原始代码上修改,但又不影响原先的代码逻辑。已知,原始代码的验证码储存与 session,vue是无法带上session进行请求,也就无法验证验证码。那么,我们需要把验证码数据储存与缓存。vendor\topthink\think-captcha\src\Captcha.phppublic function entry($id = '')//改为public function entry($id = '',$cache=false)//把原先的Session::set
2021-03-18 16:32:14 969
原创 mysql 百万数据查询优化,join连表有无order by相差百倍!
已知,shop_orders 已设置ctime为索引,且为时间戳储存,格式int 长度11.如果使用ctime或者使用主键id做排序,查询速度40秒+,去掉3毫秒!SELECT `a`.`id`, `a`.`ctime`, `a`.`status`, `a`.`order_id`, `a`.`total`, `c`.`s_name` FROM `shop_orders` a INNER JOIN(SELECT * FR
2021-02-17 02:29:44 744
原创 PC电脑桌面端UI设计规范
建议使用工具Photoshop,ps常见而AI不常见,需要考虑一下大众群体。设计稿尺寸画布大小1920*1080,如果是一页下来不分屏,宽度就是根据实际情况内容宽度,常见1200px众所周知,显示器大小并非一致大小的。背景区域相当自由区,不管对方显示器大于1920,还是小于1920。都可以保证我们的内容区域是不变的。正常情况下,背景要么是纯色,要么是一直没有太大关系的背景图,不会因为显示器太大拉伸导致变形或展示不完,也不会因为显示器小了,裁切导致背景内容显示不全。...
2020-12-31 18:57:42 19926
原创 composer在window10电脑基础使用
1、PHP环境安装1、下载phpstudyhttps://www.xp.cn/2、下载php版本,在设置-文件位置-php找到对应的php目录3、环境设置已知我的php目录F:\Program Files\phpstudy_pro\Extensions\php\php7.3.4nts右键电脑-属性-高级系统设置-环境变量,双击path新增(主要是我不记得哪个必要的,三个都加上去准没错)F:\Program Files\phpstudy_pro\Extensions\ph.
2020-12-30 23:40:26 253
原创 PHP美团外卖开放平台开发记录,IM在线通讯token获取和消息解密!By勤勤学长
token获取:一开始我还以为,监听哪个店铺的消息,就用哪个店铺的appAuthToken获取长链接的token,但实际上,不管是使用哪个店铺的appAuthToken返回的内容是一样的。so,只需要生成一次就可以写死了。我们需要的值connectionToken、connectionId。开发文档:https://developer.meituan.com/openapi#10.4.6...
2020-12-09 17:49:50 1978
原创 使用WebStorm编辑工具进行elementUi进行开发2:确认引入成功,初步尝试
按照官方文档写引入代码删除component下HelloWord.vue,在index.js中删除引入代码在App.vue 加入文档中的按钮代码运行显示正常代表能正常引入
2020-11-07 21:57:56 386
原创 使用WebStorm编辑工具进行elementUi进行开发1:安装部署环境
新建完成后,底部切换终端界面,输入命令 vue init webpack elment(项目名称),除了no的地方都可以回车,(暂时还确定什么情况下需要no)安装完成后,按照提示执行命令当出现链接就代表着vue脚手架已经完成接下来安装elementUi,ctrl+c停止项目,然后执行安装命令 npm i element-ui -S当出现这个的时候就说明安装完成了。、涉及的命令有vue init webpack elment(项目名称)cd el...
2020-11-07 21:20:56 748 2
原创 记录一次mysql百万十万数据连表查询优化,300秒优化到0.2秒,速度提升千倍!
今天打开网站的订单列表页面,加载超久,最后还502了,数据库跑满无法使用导致第三方平台推送失败。订单有解决17万条,网站用户400,改sql加载200~300秒SELECT `a`.`shop_id`, `a`.`ctime`, `a`.`status`, `a`.`order_id`, `a`.`total`, `w`.`s_name`, `a`.`result`, `w`.`shop
2020-10-29 21:46:32 6142
原创 根据账户类型的不同统计数据 thinkphp5中使用CASE WHEN THEN SQL语句实例 by勤勤学长
项目场景:做的是外卖代运营平台,每个客户都有相关运营人员、签约业务员,分别在客户信息表里有user_id、business_id字段记录。需求描述:在网站用户列表里,能直观看到实际每个人所关联的客户总数量、不同状态的数量分别是多少。解决方案:$res_arr = User::alias('a') ->field(' a.*, l.name as level_name, (SE...
2020-09-24 19:38:15 952
原创 php+mysql获取7天、30天的统计数据,没有数值的补充0 By勤勤学长
需求:查找近7天的订单数量、订单金额以及他们的日期。方法1:查到的大部分是这种写法。需要修改的地方qqxz_orders 表名、ctime 用作归类的字段我表中是时间戳,使用的时候需要用 FROM_UNIXTIME 格式化total订单金额就这三个。select b.week_total,a.click_date,ifnull(b.count,0) as countfrom ( SELECT curdate() as click_date union all S
2020-07-12 20:26:42 1473
原创 PHP美团开放平台开发记录,美团外卖,第四个问题:菜品映射!By勤勤学长 Qq318692996
这个问题被困住了两天,开发文档没有明确、简洁、易懂的说法,搜遍全网都没有相关资料,在我差不多要裂开的时候终于给整明白了!建立菜品映射https://developer.meituan.com/openapi#7.2.3场景说明https://developer.meituan.com/openapi#7.2.1按照美团提供的页面逻辑:你不能用我美团提供的商品id操作,必须给商品设置一个自己的 ERP方菜品id,然后再用这个ERP方菜品id才能进行系列操作!简单点说,你要先设置自己的商品ID再
2020-06-09 15:24:22 1379
原创 PHP美团开放平台开发记录,美团外卖,第三个问题:新建/修改商品提示signature_error签名验证失败。by 勤勤学长 Qq318692996
如果你也遇到了这个问题,可以参考我的解决访问。此方法仅限于其他api调用,如获取门店、获取目录,正常。function sign(&$arr) { ksort($arr); $str = ''; foreach ($arr as $k=>&$v) { $v = is_array($v) ? json_encode($v) : $v; $str .= $k . $v;
2020-06-09 11:56:29 2743
原创 饿了么商家开放平台踩坑记录2,php更新商品信息提示attribute:[]不是一个有效的JSON对象 By勤勤学长 Qq318692996
需要注意的是,这个attribute:[]不是一个有效的JSON对象的错误提示,并不是attributes这个参数出错。经过我一天的排查,终于发现问题所在,是你其中一个参数不正确。我这里报错是设置了错误的售卖时间格式。全天售卖我以为是设置空数组。$properties['sellingTime']=[];如果你也出现了这种错误提示,可以参考我的排查方法。使用API调试工具https://open.shop.ele.me/openapi/debug/eleme-product/ele
2020-06-07 22:51:20 556
原创 饿了么商家开放平台踩坑记录1,php更新商品信息提示业务异常BUSINESS_ERROR by勤勤学长 318692996
["error"] => array(2) { ["code"] => string(14) "BUSINESS_ERROR" ["message"] => string(12) "业务异常" }文档:https://open.shop.ele.me/openapi/apilist/eleme-product/eleme-product-item-updateItem本次错误原因:提交原材料参数格式不正确。正确代码$materials_object =.
2020-06-05 11:54:47 2659
原创 PHP美团开放平台开发记录,美团外卖,第二个问题:获取不到商户信息
https://developer.meituan.com/openapi#7.4.6在确认填写信息没有错误,且sign验签正确,但是返回内容{"data":[]}我这里的解决方法,重新申请临时测试账户,重新获取新账户的appAuthToken、ePoiId提交就能正常获取了。$token = '60d25a513530f9e8f37fe7bc40a5fd97eca93caf32f3e6b0e91933ddfcdda39'; $ePoiId = 3; $time
2020-06-02 18:29:39 2917
原创 PHP美团开放平台开发记录,美团外卖,第一步授权演示及错误提示:获取门店出错(3)解决方法
他居然没有php的sdk!也不像饿了么提供授权地址,授权完成直接把相关信息提交到回调地址。门店映射接入参数https://developer.meituan.com/openapi#4.1.2数字签名signhttps://developer.meituan.com/openapi#3.2sign签名验证https://developer.meituan.com/admin#/sign/tooldeveloperId和SignKey获取地址https://develop.
2020-06-02 15:19:05 4305
原创 linux基础常用命令
查询当前目录总大小可以使用,其中s代表统计汇总的意思,即只输出一个总和大小。du -sh返回目录cd 空格 .. 是上一级cd 空格 / 是回最高级,也就是 / Linux下压缩某个文件夹(文件夹打包)zip -r test.zip /home/httpd/html/test...
2020-05-18 12:43:14 92
原创 记录一次给一个分发平台网站增加上传文件类型
虽然我不是很理解分发平台是做什么的,但是客户需求第一。客户需求:目前只能上传apk、ipd类型的,需要增加一个mobileconfig类型的上传下载开工!1、通过抓包,得知上传处理文件定位。2、进入文件进行修改增加类型3、继续分析抓包。得知上传成功,会再次提交到对应的处理文件。apk提交到index-apk.phpipa提交到index-ipa.php那么意味着...
2020-03-10 00:30:12 360
原创 网页字体优化,只提取指定的文字css及应用
事情的原因是在清理木马的时候,没有备份就把客户的网站重新部署发现缺少字体。最简单的办法是直接把这个字体上传。但是这个字体未压缩情况下6m,我记得能压缩/提前字体。也就是只要这几个字的字体文件就行了。安装nodehttps://nodejs.org/en/download/安装完成之后,运行cmd输入命令 node -v 查看是否安装完成(要安装完成之后在打开,不然有可能检...
2020-03-08 21:50:45 825
原创 thinkphp5商城系统功能初步解决避免短时间内大量下单出错问题,@勤勤学长
逻辑顺序下单判断用户是否足够钱支付订单如果够钱的话,同时进行三个数据操作(更新用户余额、生成订单信息、生成资金明细记录)问题1:三个数据操作有一个出错,就要撤销三个记录信息。解决方法:使用事务操作,事务回滚。https://www.kancloud.cn/manual/thinkphp5/139063问题2:更新余额的时候如何使用数据库最新的余额信息。例如,有一个用...
2019-12-09 15:56:08 519
原创 css 鼠标放上去 div里边的图片会变大边框不变 勤勤学长
<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title></title> <style type="text/css"> .imgBox{ overflow: hidden;//关键部分 } .item_blo...
2019-11-27 16:44:42 1163
转载 layui富文本编辑器表单提交时内容为空的处理方法
在<textarea>标签中加入lay-verify="content"然后在form的表单自定义验证中加入如下代码即可form.verify({ content: function(value) { return layedit.sync(index); }});var index1 = layedit.build('co...
2019-11-06 15:50:09 1749
原创 如何根据背景图片的高度设置div的高度 @勤勤学长
<div class="MiddleBox1" style="background: url('/images/centre01.jpg')no-repeat;background-size:cover; "> </div><script type="text/javascript"> $(function () { v...
2019-10-19 18:38:17 1711
原创 mysql删除重复的数据库
DELETE from `news` WHERE ( `newsName` ) in(SELECT `newsName` from (SELECT `newsName` FROM `news` GROUP BY `newsName` HAVING COUNT(*)>1) s1)AND `newsId` NOT in (SELECT `newsId` from...
2019-10-16 17:48:16 106
原创 thinkphp5使用easywechat 实现微信扫码登录解析
建议先看这个https://open.weixin.qq.com/cgi-bin/showdocument?action=dir_list&t=resource/res_list&verify=1&id=open1419318590&token=&lang=这个就是easywechat提到的开放平台网页登录授权 URLhttps://www.easy...
2019-08-24 17:31:04 2845
原创 Linux宝塔面板的环境下安装SVN服务端 @勤勤学长
连接到服务器之后1.安装yum install subversion2.配置2.1创建仓库我们这里在 /home 下建立一个名为 svn 的仓库(repository),以后所有代码都放在这个下面,创建成功后在 svn 下面多了几个文件夹。进入home这个文件夹,创建svn这个目录,创建仓库,查看该目录[root@localhost /]# cd /home[ro...
2019-08-19 22:49:21 1845
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人