CSDN:对于此类客户来说,最看重的办公平台的产品性能是什么?办公逸是如何从技术上进行保证的?
王斌:客户最看重产品的稳定和响应速度。
稳定性主要体现在办公逸各类服务都是集群部署、故障转移,某台服务器挂了不会对线上服务有影响。另外我们有备用机房,所有数据会实时备份到备用机房,万一线上机房出现什么问题,我们还可以切换到备用机房。
响应速度主要分前端和后端服务。
- 前端服务
(1)减少HTTP请求次数(将多个样式表文件或脚本文件,合为一个文件,这样可以减少浏览器的HTTP请求数,以及减小Gzip压缩后的文件总体积);
(2)缓存AJAX获取的数据;
(3)Dom结构优化,尽量减少繁重的Dom结构;
(4)不要大量使用iframe;
(5)延迟加载JavaScript脚本;
(6)使用CDN请求静态资源文件;
(7)Gzip压缩文件;
(8)Dom里面避免空的图片地址;
(9)将CSS样式表置顶(避免使用CSS表达式,用link代替@import,避免使用filters);
(10)JavaScript脚本置底(JavaScript里面不要使用死循环,去除重复的脚本,减少对Dom的操作);
(11)优化图片(项目中如果用到大量的小体积图片,使用CSS Image Sprite,目的是减少HTTP请求数,或者把图片生成base格式);
(12)移动端尽量使用CSS3,能用CSS3实现的尽量不用图片实现;
(13)使用目前流行的框架和构建工具开发(譬如vue、React和Webpack),使用虚拟Dom。 - 后端服务
(1)使用最新稳定版本的PHP, PHP的主要版本可能带来显著的性能提升;
(2)启用字节码缓存 Opcache(PHP 5.5或更高版本)或 APC (PHP 5.4或更早版本);
(3)禁用调试模式;
(4)开启Schema缓存;
(5)使用普通数组而不是活动记录(AR);
(6)优化数据库;
(7)使用缓存技术;
(8)优化会话Session 存储;
(9)优化 Composer 自动加载;
(10)性能分析;
(11)减少联表查询,尽量通过PHP来处理数据;
(12)主流应用上线前都有压力测试,达不到预期会优化后上线。