怎么做到贴心服务顾客让顾客安心去整个形呢?

The page is temporarily unavailable
nginx error!
The page you are looking for is temporarily unavailable.
Please try again later.
Website Administrator
Something has triggered an error on your
This is the default error page for
nginx that is distributed with
It is located
/usr/share/nginx/html/50x.html
You should customize this error page for your own
site or edit the error_page directive in
the nginx configuration file
/etc/nginx/nginx.conf.如果php有个功能需要耗时很久,做完之后才能进行下一步,如何让客户安心等待? - 开源中国社区
当前访客身份:游客 [
当前位置:
php网站,有个调用shell脚本创建文件的任务,要耗时大概1分钟,做完之后还有一些数据库操作以及其他文件操作,我现在做了一个进度条,当用户提交新建之后会显示进度条,但是shell命令的执行时间无法预计,所以进度条是写死的20%的时候开始调用shell,然后就卡在20%,等shell执行好就刷的到了100%。
有两个问题,
1. 有没有办法可以让这个新建的过程更友善一点,不要给用户一种很突兀的卡半天突然好了的错误?
2. 有没有办法获取到shell执行失败的结果?因为一旦shell执行失败,任务调就卡在了20%,而且在shell之前php做的一个创建文件夹和另一个文件的操作就无法回退,因为拿不到shell执行失败的这个信息
---------------问题补充---------------
:shell应该是肯定能执行成功的,除非出现服务器之间网络异常或者服务器本身系统或硬件异常。了解了一下php的超时机制,现在卡死的问题应该是shell执行时间超过了30s。在php中增加了ini_set('max_execution_time', 120);将shell执行的时间放宽到2分钟,再没有出现卡死的现象,虽然很慢最后都执行成功了。
进度条的实时刷新还没有解决方案。目前进度条和shell执行是在同一个php文件中,即使是假定shell脚本每次执行都是1分钟,有没有好的办法可以让它在shell执行过程中实时刷新?
共有4个答案
<span class="a_vote_num" id="a_vote_num_
我专门的写了个解决方案的文章,去看看:
--- 共有 1 条评论 ---
(12个月前)&nbsp&
<span class="a_vote_num" id="a_vote_num_
最后发现没有办法提前获取shell执行的总体时间,所以换了一个思路,将进度条换成了不确定性进度条,就是类似安卓系统里那种一直转圈,看不出进度的那种,解决了问题。
<span class="a_vote_num" id="a_vote_num_
根据之前自己的经验给你提几个建议,按需采用:
1,任务先在数据库中保存,你应该采用内存保存(进度,状态,更新时间),完成就保存在数据中,标志完成。内存写入时记上有效期,超过就请求不到需要去数据库查状态。
2,实时请求的时候,判断进度,和时间超时1分钟,提示:任务可能需要好久请多等待,假如内存无数据,数据库查询也是没有完成就意味着是失败了就直接通知任务失败。
3,这个shell工作的内容是不是差不多一样?就可以在生成时就在固定位置写入内存状态,同时检测是否出错,出错就返回任务失败。
4,按照正常的功能需求来说,任务是不允许失败的,如果失败就改自己查找问题,及时解决。
5,这个shell执行的时候应该提示客户休息一下,等会来某个地址就能查看文件了。
6,假如生成的文件需要下载就检测文件是不是存在,数据库状态是不是完成,当前用户是不是有权限下载。
提供几种进度控制理念(个人看法):
1,文件下载进度(知道文件大小了,判断网速,得知时间)
2.1,任务执行进度:粗略(知道流程,在流程中加入状态,通过获取状态来大概知道进度)
2.2,任务执行进度:精细一点(知道流程,等分过程,百分比实时记录)(知道流程,过程中有其他表现形式,例如文件的解压,个数分进度,大小分进度,个数加大小分进度)
3,文件生成进度(知道生成大小,且是分批次写入,检测大小和总大小计算进度)(知道生成流程,等分流程控制,反馈信息进度)(知道文件生成数量,按数量计算,等分进度)
4,通用进度(知道流程,尽量等分进度【细分单个流程】)
--- 共有 2 条评论 ---
: 整体没问题,具体在遇到其他实际问题再问吧
(1年前)&nbsp&
谢谢这么用心的回答。
你的意思是不是在启动shell这个命令前插入数据库任务启动的flag,flag在内存里也有,完成时候在数据库更新成已完成的flag。另外起一个计数器,隔一段时间就去check内存里的flag是不是已完成,如果不是,判断时间是不是超过了我们计划让用户等待的最长时间,如果超过了就中断shell,提示用户操作失败,进行前期活动的回退?
(1年前)&nbsp&
<span class="a_vote_num" id="a_vote_num_
用消息队列。另外尽量少用php shell单线程坑很多
更多开发者职位上
有什么技术问题吗?
阿采的其它问题
类似的话题客人太多怕走掉?让顾客安心等位的4个方法!
来源:红餐微杂志&&&&作者:雯雯&&&&
&&&&&&& 如何留住走进餐厅的每一位客人,是经营者所追求的一件事,在饭口时间,我们经常会在一些生意红火的餐厅门口看到排队等位的客人......那么问题来了,如何才能留住这些已经一只脚跨进了店门的客人呢?
&&&&&&& 一般来说,客人愿意在餐厅门口排队等位,都是冲着餐厅的名气而来的,如果餐厅处理得好,顾客就会选择等待。
&&&&&&& 通常在等位的过程中,客人会有焦虑,担心餐厅会不会把自己给忘了,或者关心什么时候才能轮到自己等顾虑,如果能消除顾客的这些顾虑,就能留住客人。
&&&&&&& 下面这几个方法,就是留住客人的不二法宝:
一、设置等候区
&&&&&&& 利用餐厅现有的空间设置一个等候区,等候区要与就餐区分离。在装修上,要极力为顾客缔造一个雅致、安静的环境,色彩用暖色调,并播放舒缓的音乐。沙发和椅子要舒适、小巧,并放置烟灰缸,有条件的餐厅还可以设置一个小酒吧或小书房,这样不但能消除客人的焦虑,还能增加餐厅的收入。考虑到一些客人会带孩子到餐厅就餐,也可以在等候区设置一个类似麦当劳的小游乐场,同时还可以出售儿童玩具和开发智力的图书。
&&&&&&& 等候区要设置1--2名服务人员,为客人做好登记、发放等候号码和叫号等工作。在等候的过程中,服务人员要为客人提供茶水和香巾。此外,等候区还是餐厅宣传自己的一个窗口,可以为客人提供餐厅当天的报纸,和当天的推荐菜、新菜,也可以设置一个企业的宣传栏,张贴企业文化、优秀员工照片和事迹,近期餐厅将要推出的促销活动以及服务措施等。
二、差价避开就餐高峰期
&&&&&&& 中午11:30&12:30,晚上6:30&7:40是就餐的高峰期,这两个时间最容易出现排队等位现象。如果能避开这个就餐高峰期,分流客人,能有效的改变等位现象。
&&&&&&& 餐厅可以制定一个促销计划,比如早上10:30-11:30来就餐的客人可以享受9折的优惠。下午2:00&&5:30来就餐的客人可以享受8折的优惠,或者赠送客人精致的礼物。这样不仅能分流高峰期的客人,还能充分利用酒店不同时段。
&&&&&&& 餐厅也可以设置一个固定的就餐时间,早上11:30&12:30在餐厅就餐的客人,如果能在固定的时间内结束用餐,就可以享受8折的优惠,这样就可以缩短客人等候的时间了。
三、提前开始服务
&&&&&&& 为等候的顾客送上餐单,先点菜,待其座位一定,该餐单即可传出,缩短了顾客在餐桌上等待的时间。
四、可移动包间
&&&&&&& 包间多以单包为主,但有时为了接待人数多的顾客,不得不设置一到两个大包间,通常大包间里有两张或三张桌子。如果当天没有客人预定大包间,再加上包间客人不喜欢和其他客人同一包间就餐,就会出现空台现象。而如果把大包间的挡板设计成活动型,客人多时,可以把挡板去掉,小包间变成大包间,客人少时,就用挡板把包间隔成独立的小包间,这样不仅合理的利用了空间,还可以减少客人等候的时间。
&&&&&&& 如果遇到有客人在等菜时表现出不耐烦,可以试试用这两种小玩具解决问题&&
弹簧开核器
&&&&&&& 这个弹簧开核器可要比拿着锤头砸核桃有意思多了,只需拉动弹簧,剩下的事就等着吃核桃仁咯!试想一下,如果在你家餐厅的餐桌上备一个这样的弹簧,顾客自己就能玩起来!
&&&&&&& 砸几个核桃,玩一会儿,饭菜就端上餐桌了,连等餐时间都不那么难熬了,不是么?
球状研磨器
&&&&&&& 这款木球调料研磨器有着类似磨盘的结构,双手自然的握住球体并互相逆向转动,就可以把要研磨的胡椒、辣椒之类的迅速研成粉末,而且颗粒均匀,更易让饭菜入味。
关注红餐网微信公众号(ygcywzz)
禁止发表侮辱、诽谤、教唆、淫秽等不道德内容。
联系电话:
邮 & & & 箱:
微信:CJM1900
联系电话:
版权所有:广东红餐文化传播有限公司

我要回帖

更多关于 安心易百支付 的文章

 

随机推荐