首页
留言
友链
架子鼓
更多
壁纸
直播
时光机
关于
Search
1
谷豆电视直播代理源码,谷豆代理原理解析
23,398 阅读
2
华为鸿蒙系统无法安装 xapk APP 闪退 ( youtube vanced ) 的解决办法
16,968 阅读
3
[转载]青龙面板+Ninja从零安装教程
14,770 阅读
4
docker 之 typecho 镜像-不推荐
10,138 阅读
5
typecho插件 - 在线下载主题到服务器 - addTheme 发布
7,194 阅读
技术
php
linux
mysql
redis
typecho
nginx
go
python
dnmp
工具
日记
理财日记
生活日记
生活
kindle 资源
公告
虚拟机
登录
Search
标签搜索
msyql
主从
华为
鸿蒙
xapk
闪退
APP 闪退
kindle
mobi
docker
pip
alpine
梦浪的小虾米
累计撰写
126
篇文章
累计收到
527
条评论
首页
栏目
技术
php
linux
mysql
redis
typecho
nginx
go
python
dnmp
工具
日记
理财日记
生活日记
生活
kindle 资源
公告
虚拟机
页面
留言
友链
架子鼓
壁纸
直播
时光机
关于
搜索到
11
篇与
php
的结果
2022-06-12
一个还没有完成工作的复盘(二)-上线篇
前言前一篇文章不是说有一个商城要上线吗?具体点击这里查看经历了放假+其他事情的干扰,这个项目终于上线了。所以这篇文章是上线后的问题复盘正文废话不多说,直接上正文项目上线后,遇到的问题有:1.因为开发时间极短,而项目极其庞大,导致了很多细小的极限值没有考虑到,最典型的就是 where条件没有写好.需求:查询当前用户在当天内是否下过订单()当时开发的时候写的wherewhere porderid =1 and cid = 2 and (addtime >= 2022-06-12 00:00:00 or addtime<=2022-06-12 23:59:59) 事后反馈了问题,然后的时候,才发现,忘了写订单状态,未付款订单,取消的订单都被加进去了后来改成了:#(这里不用考虑取消) where porderid =1 and cid = 2 and (addtime >= 2022-06-12 00:00:00 or addtime<=2022-06-12 23:59:59) and status != 5 2.服务器报各种 mysql 字段错误。错误描述:扣减金额的时候,金额已经不够扣了,但是接口没有处理,还是直接在数据库扣。并且也没有写事务和并发限制.解决方案:改成了事务+try catch + where。 where条件里面加 where amount>=need_amount(need_amount 为需要的金额数)3.服务器代码更新的时候,不要使用一键懒省事的更新,而是要通过提交日志确认自己要更新的文件。通过 svn/git 提交日志获取到自己修改的文件,然后把文件整理成更新命令并在服务器上更新这些命令。原因:我们会在服务器上修改一些生产的配置,如果使用一键更新的时候,同事可能会修改这个文件,并且不小心把这个文件给提交了4.因为失误,导致了一堆错误金额。比如返利判断写错了,给用户多发钱了,一定要仔细看自己的返利判断,不然写补救脚本的时候就难受了,因为补救脚本可没有人给你测试了,并且还要自负风险,所以一定要备份数据库。5.操作数据库前,一定要备份。不然会因为你的各种疏忽导致数据错乱的时候,你想恢复都恢复不了。6.尽量多手写一些查询 sql, 因为真的能锻炼自己的 sql 水准还有下一篇?不一定,如果还遇到问题的话,我会抽空更新,抽空复盘。这周7天,我上了7天班,通宵了三天,所以真不一定有时间更新,但是更新也是对自己的知识的一种复盘。
2022年06月12日
464 阅读
0 评论
0 点赞
2022-05-31
关于php xdebug 在 vscode 上调试 thinkphp 使用经验分享-新手安装经验
这篇文章是上一篇文章的姊妹篇。如果您是完全没有使用过的小白,建议先看第一篇:新手安装 xdebug。本文目的如何安装 xedebug 并调试 thinkphp,本文主要分享安装的时候遇到的问题,给读者进行启发。正文遇到的问题:安装 xdebug 后,vscode 死活无法监听浏览器目前 xdebug 有 2 版本和 3 版本。如果自己不知道自己的版本的话,建议先配置 3 版本,确认还不行的话,再改成 2 版本#在php.ini 中增加(这是 3 版本) xdebug.mode = debug xdebug.start_with_request = yes#在php.ini 中增加(这是 2 版本) xdebug.remote_enable = 1 xdebug.remote_autostart = 1 xdebug.remote_port = 9000这两种配置都可以试试,说不定就可以了呢。如果您的英文比较好的话,您可以直接阅读vscode for xdebug:
2022年05月31日
584 阅读
0 评论
0 点赞
2022-05-31
一个还没有完成工作的复盘
上次不是说我回到老公司了吗?然后接手了一个商城项目,三周上线。主要功能是老商城+会员赠送商品商城+购买身份+其它(内部机密,不会说的,签了保密书)。我目前已经开发了两周了,过两天就要上线了。那么为什么要写本文呢?答案:一周前我就想写复盘,但是当时想的是等上线了在写。但是到了今天,我已经忘了我当初为啥想要复盘了。然后今天又遇到新的问题了,又是值得记录的复盘点,复盘后以后可以避免这个问题的发生。正文先说今天遇到的问题:我开发的接口和产品要求的业务需求接口不一致。理由一大堆,我不想解释。只想讲如何改进,以后开发接口的时候,尽量思考这个接口页面要展示什么数据,它是那个接口的前置接口,它要为那个接口提供什么数据,这个接口有什么状态要处理?需要前端传递什么值?是否需要登陆?做开发之前要有大局观。即心中有剑,知道要怎么干。我性子比较急,拿到需求就开干,结果干到一半就发现进行不下去,必须要左改改右调整,很麻烦。然后这次技术总监亲自指点我开发商城,我就学到了。他让我拿到需求后,先不要急着开发,先根据需求原型去确认自己要建那些表模型,然后根据需求页面确认自己要提供那些接口,以及提供的那些接口参数,返回那些接口参数可以保证前端正常进行开发。先理解需求,这非常重要,性子不要太急,所谓的理解,不是你以为的这样,而是产品以为的这样。不要想当然认为自己理解的就是产品理解的东西,不懂的点一定要先和产品进行沟通,然后在进行建模和提供接口。想好在动手,性子不要太急,真的很重要。这样不至于让测试来回测试,不至于来回修改,来回返工,提高效率。最后加油,这次只是第一次复盘,不是最后一次复盘,我后面还会写复盘,让自己进步。加油
2022年05月31日
440 阅读
0 评论
0 点赞
2022-05-05
一段比较精妙的 PHP 代码[其实是我菜]
这是一段为数组值从小到大进行排序的代码,该函数的比较算法比较稳定,所谓稳定是指两个值相等的时候,不改变排序顺序。具体代码如下:$array = [4,1,2,3,10,17,5,33,24,18]; uasort($array, function($a, $b){ return $a<=>$b; }); var_dump($array);这段代码精妙点在于:uasort 函数的使用uasort 的比较算法在 8.0 版本稳定了下来。具体说明可以看 https://www.php.net/manual/zh/function.uasort.phpps 主要是看这句:在第一个参数小于,等于或大于第二个参数时,该比较函数必须相应地返回一个小于,等于或大于 0 的整数。然后太空船比较符正好返回了这三个整数。匿名函数的使用不知道说啥好了,反正省了行数吧增加了php7新技巧:太空船比较 $a<=>$b代码可以转化为:if($a > $b) { return 1; } elseif ($a == $b) { return 0; } else { return -1; }所以开头的代码完整转化成能看得懂的代码就是:$array = [4,1,2,3,10,17,5,33,24,18]; function jisuan($a, $b) { if($a > $b) { return 1; } elseif ($a == $b) { return 0; } else { return -1; } } uasort($array, 'jisuan'); var_dump($array);
2022年05月05日
1,297 阅读
2 评论
0 点赞
本周技术文章分享-单元测试与接口压测工具使用
2022年05月03日
721 阅读
0 评论
0 点赞
2022-05-03
文章https://segmentfault.com/a/1190000040048486 接口性能压测https://www.cnblogs.com/stulzq/p/8971531.html jmeter 使用https://www.jianshu.com/p/c6bb4441fbe6 jmeter 使用https://www.jianshu.com/p/b22c57ceb52b jmeterhttps://www.cnblogs.com/fengjian2016/p/12321895.html qps 计算https://funnylog.gitee.io/mysql45/20%E8%AE%B2%E5%B9%BB%E8%AF%BB%E6%98%AF%E4%BB%80%E4%B9%88%EF%BC%8C%E5%B9%BB%E8%AF%BB%E6%9C%89%E4%BB%80%E4%B9%88%E9%97%AE%E9%A2%98.html mysql45讲https://www.cnblogs.com/nedulee/p/12542104.html#h-1 mysql 优化分页查询https://learnku.com/laravel/t/65632 2022 php 面试题https://juejin.cn/post/6844903481191432206 时间复杂度 log nhttps://juejin.cn/post/6893471439694135309 从零到千万用户,我是如何一步步优化MySQL数据库的?https://learnku.com/articles/17564 php debug测试https://learnku.com/articles/30693#reply226491 nginx createfile问题https://learnku.com/articles/10531/laravel-testing-technology 单元测试入门https://learnku.com/laravel/t/65632 php面试https://learnku.com/articles/44833 单元测试http://www.myjoyoo.com/archives/40 单元测试数据回滚关键词和片段78-Java性能调优实战›07-模块六 · 数据库性能调优 (8讲)分布式亿级高并发电商项目729_应用性能分析实战595_23讲搞定后台架构实战592_架构设计面试精讲356_Java 性能优化实战 21 讲547_打造千万级流量秒杀系统579_软件架构场景实战 22 讲每天80%的访问集中在20%的时间里,这20%时间叫做峰值时间 。通常来说,根据我们的经验值而言,Java应用系统部署的时候常选用的机器配置大致是2核4G和4核8G的较多一些,数据库部署的时候常选用的机器配置最低在8核16G以上,正常在16核32G那么以我们大量的高并发线上系统的生产经验观察下来而言,一般Java应用系统部署在4核8G的机器上,每秒钟抗下500左右的并发访问量,差不多是比较合适的,当然这个也不一定。因为你得考虑一下,假设你每个请求花费1s可以处理完,那么你一台机器每秒也许只可以处理100个请求,但是如果你每个请求只要花费100ms就可以处理完,那么你一台机器每秒也许就可以处理几百个请求。所以一台机器能抗下每秒多少请求,往往是跟你每个请求处理耗费多长时间是关联的,但是大体上来说,根据我们大量的经验观察而言,4核8G的机器部署普通的Java应用系统,每秒大致就是抗下几百的并发访问,从每秒一两百请求到每秒七八百请求,都是有可能的,关键是看你每个请求处理需要耗费多长时间。通过我们之前的经验而言,一般8核16G的机器部署的MySQL数据库,每秒抗个一两千并发请求是没问题的sysbench 数据库压测
1
2
3