总的来说,技术栈统一的好处很多,可以有效提高开发效率,降低重复造轮子产生的成本 。
意义:
方便招人,简化团队成员培养成本,以及提高项目的可持续性 。
3.5、浏览器兼容
常见的问题是IE6、7、8,以及部分小众浏览器(PC和手机)产生的奇怪问题 。因此应该考虑统一解决方案,避免bug的重复产生 。常见解决方案有:
- 配置postcss,让某些css增加兼容性前缀;
- 写一个wepback的loader,处理某些特殊场景;
- 规范团队代码,使用更稳定的写法(例如移动端避免使用fixed进行布局);
- 对常见问题、疑难问题,总结解决方案并团队共享;
- 建议或引导用户使用高版本浏览器(比如chrome);
避免浏览器环境产生的bug,以及排查此类bug所浪费的大量时间 。
3.6、内容平_台建设
为了提高公司内部的沟通效率,总结经验,以及保密原因 。应建设一个内部论坛+博客站点 。其具备的好处如下:
- 可以记录公司的历史;
- 研发同学之间分享经验;
- 总结转载一些外界比较精品的文章,提高大家的眼界;
- 增加公司内部同学的交流,有利于公司的团队和文化建设;
- 对某些技术问题可以进行讨论,减少因没有达成共识带来的沟通损耗;
意义:
博客增强技术积累,论坛增强公司内部沟通能力 。
3.7、权限管理平_台
当公司内部人员较多时,应有一个专门的平_台,来管理、规范用户的权限以及可访问内容[原创水印-作者:零零水(王冬),微信:qq20004604] 。权限管理平_台有几个特点:
- 必然和Server端天然高耦合度,因此需要有专门的控制模块负责处理权限问题(负责Server端开发处理,或者前端通过中间层例如Node层介入处理);
- 自动化流程控制,即用户创建、申请、审批、离职自动删除,都应该是由系统推进并提醒相关人士,必要时应能触发报警;
- 权限应有时效性,减少永久性权限的产生;
- 审批流程应清晰可见,每一阶段流程应具体明确;
- 应与公司流程紧密结合,并且提高可修改性,方便公司后期进行流程优化;
使得公司内部流程正规化、信息化 。
3.8、登录系统设计(单点登录)
当公司内部业务线比较复杂但相互之间的耦合度比较高时,我们应该考虑设计添加单点登录系统 。具体来说,用户在一处登录,即可以在任何页面访问,登出时,也同样在任何页面都失去登录状态 。SSO的好处很多:
- 增强用户体验;
- 打通了不同业务系统之间的用户数据;
- 方便统一管理用户;
- 有利于引流;
- 降低开发系统的成本(不需要每个业务都开发一次登录系统和用户状态控制);
意义:
用户体验增强,打通不同业务之间的间隔,降低开发成本和用户管理成本 。
3.9、CDN
前端资源的加载速度是衡量用户体验的重要指标之一 。而现实中,因为种种因素,用户在加载页面资源时,会受到很多限制 。因此上CDN是非常有意义的,好处如下:
- 用户来自不同地区,加入CDN可以使用户访问资源时,访问离自己比较近的CDN服务器,降低访问延迟;
- 降低服务器带宽使用成本;
- 支持视频、静态资源、大文件、小文件、直播等多种业务场景;
- 消除跨运营商造成的网络速度较慢的问题;
- 降低DDoS攻击造成的对网站的影响;
意义:
增加用户访问速度,降低网络延迟,带宽优化,减少服务器负载,增强对攻击的抵抗能力 。
3.10、负载均衡
目前来看,负载均衡通常使用Nginx比较多,以前也有使用Apache 。当遇见大型项目的时候,负载均衡和分布式几乎是必须的 。负载均衡有以下好处:
- 降低单台server的压力,提高业务承载能力;
- 方便应对峰值流量,扩容方便(如举办某些活动时);
- 增强业务的可用性、扩展性、稳定性;
意义:
增强业务的可用性、扩展性、稳定性,可以支持更多用户的访问 。
推荐阅读
- 大型网站技术架构负载均衡技术介绍
- 推荐一款nginx+redis+ehcache高并发与高可用缓存架构
- Redis 核心原理和架构
- 了解分布式架构,让你的软件架构之路越走越顺
- Redis混合存储产品与架构介绍
- web前端分享HTML5中的nav标签
- API网关在微服务架构中的应用
- 程序员必备!关系型数据库架构的超强总结
- 软件即服务 架构师必备技能指南:SaaS架构设计
- 前端的异步编程有哪些了解呢?