应产品人员的要求,为更好提高我们今后产品质量,针对年会项目作如下总结:
刚过去的年会项目,在我们历来开发项目中,出现上千人在小范围内进行访问的场景是不多见的,因此针对该场景,开发和产品人员也都积极第一时间在现场调查和技术、服务支持。从驻现场人员反馈的问题主要集中如下:
1、app首页(安卓机型)出现“福”图标未显示--极少数
2、H5页面首次加载资源缓慢导致空白--5%左右
3、部分受邀人员出现未在受邀名单列表,不能进行签到和抽奖--5%左右
4、抽奖模块反应稍有延迟
5、部分用户未使用顺手付扫码或顺手付版本不支持导致未能签到
原因:
第1点:从安卓开发反馈是由于极少数安卓机型磁盘兼容导致。
以下几点很大部分依赖外部硬件设施支持
外部:a、现场未布置wifi热线,导致小范围内多人集中使用4G等访问导致网络阻塞以至资源加载缓慢、长时间滞留webview的加载空白页面,接口访问失败。同时间对比微信访问也是如此;b、部分用户未在人资最后一次提供的受邀名单列表中。
内部原因:
第2点:
前端资源未进行彻底压缩,静态资源未使用CDN缓存;
第3点:
接口报错的状态码未进行合理区分,未针对多种场景进行页面友好提示,访问接口失败导致用户直接进入“未在受邀列表名单”的错误页面;
第4点:
考虑接口抗压能力,轮询机制时间间隔相对缓慢(1s),当接口出现访问失败的时候延迟的时间难以掌控(虽然会继续循环),若出现down机并没有相应的应急措施储备(好在当时没有出现);
第5点:
除用户操作问题,或许在引导用户使用和下载过程中未做更好导向。
总结:
1、需模拟现场环境进行压测;
2、前端资源尽可能压缩,并将静态资源进行上传CDN区(建议将整个前端tar包全部放入CDN区,域名解析至CDN区的ip);
3、app在加载前端资源过程中需更合理的设计(尽可能不出现白屏等待);
4、产品需对边界场景,用户少数碰到的情况在产品设计上进行用户导向;
5、前置接口需对不同场景提供尽可能多的场景码供产品设计语义转换;
6、在未有推送机制的前提下采用轮询,需尽可能设计合理和有效的轮询机制(包括轮询时间间隔和服务端口压力的综合值)。
�