从系统全局设计角度
集群部署
集群部署一般都与网关进行配合,集群部署有如下好处:
-
- 配合网关路由策略,进行分流;
- 根据实际的流量变动进行动态扩容。
系统微服务化
采用微服务的部署方式,对整体业务进行拆分,有如下好处:
-
- 根据业务进行划分,操作更有针对性;
- 操作不同的功能,主服务不同,从而达到入口分流的目的;
- 注册中心路由策略方便流量分流。
从网络消耗的角度
- 采用CND,减少网络寻址消耗;
从服务端技术角度
- 合理的设计接口,包括数据格式精确、多接口合并、长响应接口改为异步获取结果;
- 合理的利用缓存、提高接口相应速度、减轻数据库压力;
- 函数实现时合理利用Future异步线程、线程池、消息队列等方式提高相应速度;
- 参数合法性判断,阻断非法请求;
- 合理的限流策略,友好的快速失败;
数据库设计角度
- 分库分表;
- 冷热数据分离;
- 实时数据拆分和历史数据归档;
写在最后
其实这些思路都很平常,我只是结合自己的工作经历在睡前进行了简单的总结,如有不对的地方欢迎指正; 后续我会不断修正表述并补充进其他角度的信息,希望大家在评论区踊跃讨论,我会根据大家的留言进行整理。