SQLServer Decimal数据类型怎么赋值
324
2023-05-13
在web开发过程中,经常会遇到接口RT高的情况,除了通过监控事后优化的方式,我们还需要掌握一些常用的手段,避免写出慢的接口。从前端发起调用到后端一般经过网关层、应用层、存储层。每一层都可以优化,本篇文章主要是应用层优化。
常见性能优化思路从理论上分析,性能优化手段通常有
批量请求数据库,我们一般会用in,提高数据库查询效率调用外部服务,我们也需要要求依赖方提供批量接口,避免多次网络请求批量查询的id数量也不宜过多之前在sql IN一文中分析过,IN 的数量太多时,性能会下降。同样服务间调用,数据量过大,带宽占用大。所以这时候需要分批调用。
比如接口中需要请求多个外部接口/数据库,相互之间无依赖,因为这种操作都是IO操作,可以由顺序执行改为并行执行,充分利用cpu处理能力,如
异步,分为读写。比如写是弱依赖,可以用@Async或者其他操作。
如果是读,不是必须的数据,也需要加上超时处理,因为外部调用有网络原因,都是不可靠的
eg. 拉取外部数据,全量的循环去拉,增量的使用事件通知机制,这样可以减少数据处理量
避免深度分页数据库的深度分页性能比较差,需要在业务上避免深度分页
缓存缓存本质上就是从读取速度快的设备中直接获取数据。通过空间来换时间。对于DB中的数据可以缓存,对于外部服务的数据同样可以缓存
使用多级缓存,可以最大限度提升性能。
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~