北京如何做网站网页linx服务器怎么做网站

diannao/2026/1/23 8:20:34/文章来源:
北京如何做网站网页,linx服务器怎么做网站,seo关键词查询工具,浏览器主页文章目录 一、背景二、接口优化方案总结1.批处理2.异步处理3.空间换时间4.预处理5.池化思想6.串行改并行7.索引8.避免大事务9.优化程序结构10.深分页问题11.SQL优化12.锁粒度避免过粗 三、最后 一、背景 针对老项目#xff0c;去年做了许多降本增效的事情#xff0c;其中发现… 文章目录 一、背景二、接口优化方案总结1.批处理2.异步处理3.空间换时间4.预处理5.池化思想6.串行改并行7.索引8.避免大事务9.优化程序结构10.深分页问题11.SQL优化12.锁粒度避免过粗 三、最后 一、背景 针对老项目去年做了许多降本增效的事情其中发现最多的就是接口耗时过长的问题就集中搞了一次接口性能优化。本文将给小伙伴们分享一下接口优化的通用方案。 二、接口优化方案总结 1.批处理 批量思想批量操作数据库这个很好理解我们在循环插入场景的接口中可以在批处理执行完成后一次性插入或更新数据库避免多次IO。 //批量入库 batchInsert();2.异步处理 异步思想针对耗时比较长且不是结果必须的逻辑我们可以考虑放到异步执行这样能降低接口耗时。 例如一个理财的申购接口入账 和写入申购文件 是同步执行的因为是T1交易后面这两个逻辑其实不是结果必须的我们并不需要关注它的实时结果所以我们考虑把入账 和写入申购文件 改为异步处理。如图所示 至于异步的实现方式可以用线程池也可以用消息队列还可以用一些调度任务框架。 3.空间换时间 一个很好理解的空间换时间 的例子是合理使用缓存针对一些频繁使用且不频繁变更的数据可以提前缓存起来需要时直接查缓存避免频繁地查询数据库或者重复计算。 需要注意的事这里用了合理二字因为空间换时间也是一把双刃剑需要综合考虑你的使用场景毕竟缓存带来的数据一致性问题也挺令人头疼。 这里的缓存可以是R2M也可以是本地缓存、memcached或者Map。 举一个股票工具的查询例子 因为策略轮动的调仓信息每周只更新一次所以原来的调接口就去查库的逻辑并不合理而且拿到调仓信息后需要经过复杂计算最终得出回测收益和跑赢沪深指数这些我们想要的结果。如果我们把查库操作和计算结果放入缓存可以节省很多的执行时间。如图 4.预处理 也就是预取思想就是提前要把查询的数据提前计算好放入缓存或者表中的某个字段用的时候会大幅提高接口性能。跟上面那个例子很像但是关注点不同。 举个简单的例子理财产品会有根据净值计算年化收益率的数据展示需求利用净值去套用年化收益率计算公式计算的逻辑我们可以采用预处理这样每一次接口调用直接取对应字段就可以了。 5.池化思想 我们都用过数据库连接池线程池等这就是池思想的体现它们解决的问题就是避免重复创建对象或创建连接可以重复利用避免不必要的损耗毕竟创建销毁也会占用时间。 池化思想包含但并不局限于以上两种总的来说池化思想的本质是预分配与循环使用 明白这个原理后我们即使是在做一些业务场景的需求时也可以利用起来。 比如对象池 6.串行改并行 串行就是当前执行逻辑必须等上一个执行逻辑结束之后才执行并行就是两个执行逻辑互不干扰所以并行相对来说就比较节省时间当然是建立在没有结果参数依赖的前提下。 比如理财的持仓信息展示接口我们既需要查询用户的账户信息也需要查询商品信息和banner位信息等等来渲染持仓页如果是串行基本上接口耗时就是累加的。如果是并行接口耗时将大大降低。 如图 7.索引 加索引能大大提高数据查询效率这个在接口设计之出也会考虑到这里不再多赘述随着需求的迭代我们重点整理一下索引不生效的一些场景希望对小伙伴们有所帮助。 具体不生效场景不再一一举例后面有时间的话单独整理一下。 8.避免大事务 所谓大事务问题就是运行时间较长的事务 由于事务一致不提交会导致数据库连接被占用影响到别的请求访问数据库影响别的接口性能。 举个例子 Transactional(value taskTransactionManager, propagation Propagation.REQUIRED, isolation Isolation.READ_COMMITTED, rollbackFor {RuntimeException.class, Exception.class}) public BasicResult purchaseRequest(PurchaseRecord record) {BasicResult result new BasicResult();...pushRpc.doPush(record); result.setInfo(ResultInfoEnum.SUCCESS);return result; }所以为避免大事务问题我们可以通过以下方案规避 1RPC调用不放到事务里面 2查询操作尽量放到事务之外 3事务中避免处理太多数据 9.优化程序结构 程序结构问题一般出现在多次需求迭代后代码叠加形成。会造成一些重复查询、多次创建对象等耗时问题。在多人维护一个项目时比较多见。解决起来也比较简单我们需要针对接口整体做重构评估每个代码块的作用和用途调整执行顺序。 10.深分页问题 深分页问题比较常见分页我们一般最先想到的就是 limit 为什么会慢我们可以看下这个SQL select * from purchase_record where productCode PA9044 and status4 and id 100000 limit 200这样优化的好处是命中了主键索引无论多少页性能都还不错但是局限性是需要一个连续自增的字段 11.SQL优化 sql优化能大幅提高接口的查询性能由于本文重点讲述接口优化的方案具体sql优化不再一一列举小伙伴们可以结合索引、分页、等关注点考虑优化方案。 12.锁粒度避免过粗 锁一般是为了在高并发场景下保护共享资源采用的一种手段但是如果锁的粒度太粗会很影响接口性能。 关于锁粒度就是你要锁的范围有多大不管是synchronized还是redis分布式锁只需要在临界资源处加锁即可不涉及共享资源的不必要加锁就好比你要上卫生间只需要把卫生间的门锁上就可以不需要把客厅的门也锁上。 错误的加锁方式 //非共享资源private void notShare(){}//共享资源private void share(){}private int right(){notShare();synchronized (this) {share();}}三、最后 接口性能问题形成的原因思考 我相信很多接口的效率问题不是一朝一夕形成的在需求迭代的过程中为了需求快速上线采取直接累加代码的方式去实现功能这样会造成以上这些接口性能问题。 变换思路更高一级思考问题站在接口设计者的角度去开发需求会避免很多这样的问题也是降本增效的一种行之有效的方式。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/89003.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

php 网站下载器珠海自适应网站

一、JDK8新特性:Lambda表达式 1.Lambda表达式及其使用举例 Lambda是一个匿名函数,我们可以把Lambda表达式理解为是一段可以传递的代码(将代码像数据一样进行传递)。使用它可以写出更简洁、更灵活的代码。作为一种更紧凑的代码风格,使Java的语言表达能力…

免费建网站模板培训教育学校的网站建设方案

我们定义,在以下情况时,单词的大写用法是正确的: 全部字母都是大写,比如 "USA" 。单词中所有字母都不是大写,比如 "leetcode" 。如果单词不只含有一个字母,只有首字母大写&#xff0c…

北京网站设计必看刻校友网站建设的重要性

文章目录 1. 生成随机数分布直方图2. 生成随机数矩阵,服从均匀分布1. 生成随机数分布直方图 x = rand(10) % 生成10行10列的随机数矩阵,其元素服从[0,1]上均匀分布 y = x(:)

网站单页站群多国语言网站

随着科技的进步,电子发票的普及使得发票的验真方式也在不断演进。目前,我们常见的发票验真方式主要有两种:一种是扫描发票上的二维码进行验真,另一种是通过OCR(Optical Character Recognition,光学字符识别…

自己的电脑做服务区 网站石油网站建设价格

python 处理标准输入使用 sys.stdin ,在 Linux 中,一切皆文件,标准输入也是一个文件,因此这里我们可以说 sys.stdin 用来打开标准输入这个文件,然后用 read() 方法来读取这个文件 In [10]: import sys In [11]: fd sys…

企业安全文化建设导则seo一键优化

关系化数据库保存关系模式数据的容器关系模式是对业务对象实体,属性以及关系的抽象,提炼需求的名词是建立实体关系模型常用的方法。要了解E-R实体关系图的绘制。常用关系数据库Microsoft SQL Server;微软公司产品,中等规模数据库&…

教育培训网站设计宜兴建设局官方网站

1.已知‘星期一星期二星期三星期四星期五星期六星期日 ’,输入数字(1-7),输出相应的‘星期几 s星期一星期二星期三星期四星期五星期六星期日 d int(input(输入1-7:)) print(s[3*(d-1):3*d]) 2.输入学号,识别年级、专业…

iis5.1发布网站软件技术专业专升本考试科目

目录 引言 一、什么是单点登录(SSO)? 二、SSO的工作原理 三、SSO的具体实现 SSO的核心概念 1. 令牌(Token)机制 2. 身份验证协议 SSO实现步骤 1. 选择身份验证协议 2. 创建认证服务器 3. 创建资源服务器 4.…

想在百度做网站有做货 物的网站吗

归纳编程学习的感悟, 记录奋斗路上的点滴, 希望能帮到一样刻苦的你! 如有不足欢迎指正! 共同学习交流! 🌎欢迎各位→点赞 👍 收藏⭐ 留言​📝 站在巨人的肩上,是为了超过…

咖啡网站建设市场分析网页开发技术有哪些

mysql>use mysql;mysql>update user set host % where user root;mysql>flush privileges;mysql>select host,user from user where userroot;mysql>quit 转载于:https://www.cnblogs.com/vipstone/p/5541619.html

天津网站建设哪家权威株洲在线论坛招聘求职

文章目录考试复盘matrixsetstring考试复盘 首先先说T1T1T1,嗯,发现了列是相互独立的,所以分开考虑了 但是实在没想到线性基,就顺着自己的思路硬搞了505050跑路 老实说,505050分的部分分写得都是迷迷糊糊的,…

做展示型企业网站仿牌外贸网站推广

目录 一、平台 二、数据 三、代码 3.1 文件组织结构 3.2 lasDataLoader.py 读取数据 3.3 修改原始模型的通道数量 3.4 lasTrainSS.py【训练】 3.5 lasTestSS.py【预测】 一、平台 Windows 10 GPU RTX 3090 CUDA 11.1 cudnn 8.9.6 Python 3.9 Torch 1.9.1 cu111…

镇江网站制作费用电商系统服务好的商家

【QT 5 调试软件Linux下验证>>>>串口相关初试串口参考win下历程基础样例】 1、前言2、实验环境3、先行了解4、自我总结-win下工程切到Linux下1、平台无关的代码:2、依赖的库:3、文件路径和换行符:4、编译器差异:5、构…

网站模板如何优化下列不属于网站建设规划

交换文件 *.swp 格式 同时是隐藏的 如在vim一个文件, 在没有正常退出, 如直接断开连接 在次编辑这个文件 会出现下图的错误 解决方案: 直接删除这个交换文件即可 rm -fr .zen.txt.swp

增加网站点击量黑龙江建设厅官网

Kubernetes是一个开源的,用于管理云平台中多个主机上的容器化的应用,Kubernetes的目标是让部署容器化的应用简单并且高效,Kubernetes提供了应用部署,规划,更新,维护的一种机制。 Kubernetes一个核心的特点就是能够自主…

东莞做公众号的网站wordpress文章序号排列

##人生苦短,我用python #pandas ##首先讲讲数据格式,csv文件格式,程序之间表格数据之间的转移,如从数据库导入到excel中csv是很合适的转移格式。 #1.纯文本,使用某个字符集,比如ascii,Unicode&a…

机械制造设备类企业网站织梦模板wordpress手机展示

通过一些实际项目的开发,发现这样一个现象,在 Windows 下可以通过指定 __declspec(dllexport) 定义来控制 DLL(动态链接库)中哪些函数可以导出,暴露给其他程序链接使用,哪些函数是 DLL 内部自己使用&#x…

网络购物网站备案山西众邦建设集团网站

1、简述 UDP是无连接的,在UDP传输层中并没有客户端和服务端的概念。但是可以在应用层定义客户端和服务端,可以灵活的互换客户端和服务端,或者同时既是客户端也是服务端。 HP-Socket中在应用层定义了四种UDP组件:UdpClient、UdpS…

做百度微信小程序都有哪些网站有域名有空间怎么做网站

FastReport VCL报表控件是著名的 Delphi 打印控件。含全部源码。支持 Delphi 10.2 Tokyo,FastReport可以在大量的方式报表的创建过程中操纵对象。快速发展的报表和随后的打印,这样的优点,正如预览打印文档的外观。专业版除了报表标准版的功能…

网站制作公司套路网站建设制作介绍河南

2.5.6.22021.10.13支持自定义列字体颜色,具体见PR#342,感谢xiangxiren修复日期格式化的问题,具体见PR#344,感谢ccccccmd2.5.6.12021.10.06修复 #337,bool?类型导出的映射问题2.5.6.02021.10.05合并Magicodes.EPPlus到…