在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
上次提到一个微信投票系统,做了一个微信重定向解决了,一个授权复用的问题,昨天投票系统正式投入使用;测试的时候没有问题,上线后出现了一点小问题, 一:php页面参数接受和php中 switch 那个先执行? 答案: 是switch先执行 例:在index.php页面 header("location:/api/wx.php?action=putprofile&accessToken=".$accessToken."&openId=".$openId."&headImgUrl=".$headImgUrl."&nickName=".$nickName); 实现跳转到wx.php页面里面带着几个参数 accessToken openId headImgUrl nickName (php中字符链接符 是 " . " ); 下面我在wx.php页面进行接收
$accessToken= $_GET["accessToken"]; //接收参数 switch($_GET['action']){ case "initprofile":
function putprofile($openid, $nickname, $headimgurl){ 如上述代码所示,开始我以为在执行 putprofile()这个函数的时候 上面那四个参数已经拿到了呢,当时就是往数据库里插不进去,我在putprofile()alert 了一下那四个参数才知道原来在函数执行的时候还没执行 $accessToken= $_GET["accessToken"]; 这些代码可把我坑坏了,后来把这些获取参数的代码放到了putprofile()里面才成功的把字段插入到了数据库里面, 原因是:switch的比$_GET先执行 二:SESSION的默认保存时间 php中SESSION的默认保存时间是 1440秒 意思就是时间一过这个缓存就会被清掉 可以手动去修改两种方法: 1:去服务器配置php环境的一个ini的文件里找到 session.gc_maxlifetime 改成你想要的数值就可以了,建议不要改的太长,以免造成服务器内存饱满,响应过慢或者直接瘫痪 2:代码实现: // $lifeTime = 46 * 3600; 三:服务器压力问题: 这个问题很广很多情况下都会造成服务器压力过大,造成响应过慢,对于写代码的程序猿来说要做的就是把代码优化,至于怎么优化减轻服务器压力,太复杂就不多说了,可以自行百度; 接下来说说我遇到的问题: 1:我的数据库是操作是php MYSQL代码实现的; 2: 多余的代码很多 3:里面有比较多的 SELECT , update等一些操作,没有做到函数复用; 4:服务器运行内存也比较小; 在上述几个情况下,一开始代码没什么问题,后来随着用户越来越多,越来越多,我突然发现打开这个投票系统的响应时间变长了,我ping了一下看了一个速度
发现这个IP的响应时间 最短 7ms 最长 13ms 平均8ms 这也太慢了,对于用户来说,体验太不好了,一直反映打开太慢 后来我就检查我的代码 发现里面有很多的SELECT , update等一些操作,并且多余的代码比较多,要知道本身MYSQL本身会占用较大虚拟内存,再加上数据库操作很耗内存,就造成了服务器压力比较大,响应时间变长的后果; 所以在php页面中药尽量减少数据库的操作,同事对代码做良好的优化,不然就会造成服务器压力大,响应慢的结果。 就这些吧,今天早上我7点跑到公司来维护代码,也是不容易啊!! 快五一了,预祝快乐!!!!
|
2022-08-16
2022-11-06
2022-08-18
2022-08-15
2022-08-18
请发表评论