公司动态

了解最新公司动态及行业资讯

当前位置:首页>新闻中心>公司动态
全部 15 公司动态 12 行业动态 3

PCSHOP小程序商城SAAS版定时任务

时间:2021-11-01   访问量:1480

    原有用于私有化部署的小程序商城定时任务中主要有accesstoken刷新,拼团订单状态更新,砍价状态更新等,而saas版小程序商城是在原有程序程序上的改造,之前已经完成根据入口文件动态修改数据库定制;accesstoken按需获取;accesstoken根据入口文件不同进行区分;对TP框架中的controller类进行改造,自动加载COMMON公共函数库等;

    对于定时任务的改造,这里一直存在顾虑是如果用户偏多的情况下是不是会出现定时任务执行时间过长的问题,为什么有这个顾虑呢?因为原有程序在框架外没有加入自己的缓存机制,导致数据库查询次数偏多,当数据没有发生变化时,仍然去消耗服务器资源去进行查询,所以在对定时任务改造前,首先对TP框架的model类进行了改造,在执行select,find,query方法时首先查询是否存在缓存,如果有缓存就直接返回缓存结果,当执行add save delete方法时,返回前执行清空缓存操作,注意这里的清空缓存操作只清除和当前model相关的缓存,实际上在查询缓存操作时每个model有一个唯一的缓存key,用户保存已经存在的缓存,并且这个model类的缓存操作都是与入口文件相关的;

    当对model类改造完成后,定时任务部分暂定使用线性操作,就是循环查询所有saas用户的入口文件,然后根据入口文件使用curl调用相关的任务接口,并且在总的定时任务接口部分使用了缓存,这里的缓存的作用时为了保证定时任务永远只有一个在执行,避免了当定时任务执行时间偏长时,多个定时任务同时执行的问题;

    最后贴出代码共参考:

    小程序商城


上一篇:PCSHOP小程序商城官网优化之自动提交百度

下一篇:PCSHOP小程序商城优化之直播模块