当前位置: 首页 > wzjs >正文

如何自己开发微网站建设网站企业运营

如何自己开发微网站,建设网站企业运营,网上营销活动,建立网站大约多少钱之前工作中,遇到一个504超时问题。原因是因为接口耗时过长,超过nginx配置的10秒。然后 真枪实弹搞了一次接口性能优化,最后接口从11.3s降为170ms。本文将跟小伙伴们分享接口优化的一些通用方案。 1. 批量思想:批量操作数据库 优化…

之前工作中,遇到一个504超时问题。原因是因为接口耗时过长,超过nginx配置的10秒。然后 真枪实弹搞了一次接口性能优化,最后接口从11.3s降为170ms。本文将跟小伙伴们分享接口优化的一些通用方案。

1. 批量思想:批量操作数据库

优化前:

//for循环单笔入库

for(TransDetail detail:transDetailList){

  insert(detail);  

}

优化后:

batchInsert(transDetailList);

 

打个比喻:

打个比喻:假如你需要搬一万块砖到楼顶,你有一个电梯,电梯一次可以放适量的砖(最多放500), 你可以选择一次运送一块砖,也可以一次运送500,你觉得哪种方式更方便,时间消耗更少?

2. 异步思想:耗时操作,考虑放到异步执行

耗时操作,考虑用异步处理,这样可以降低接口耗时。

假设一个转账接口,匹配联行号,是同步执行的,但是它的操作耗时有点长,优化前的流程:

 

为了降低接口耗时,更快返回,你可以把匹配联行号移到异步处理,优化后:

 

● 除了转账这个例子,日常工作中还有很多这种例子。比如:用户注册成功后,短信邮件通知,也是可以异步处理的~

● 至于异步的实现方式,你可以用线程池,也可以用消息队列实现。

3. 空间换时间思想:恰当使用缓存。

在适当的业务场景,恰当地使用缓存,是可以大大提高接口性能的。缓存其实就是一种空间换时间的思想,就是你把要查的数据,提前放好到缓存里面,需要时,直接查缓存,而避免去查数据库或者计算的过程。

这里的缓存包括:Redis缓存,JVM本地缓存,memcached,或者Map等等。我举个我工作中,一次使用缓存优化的设计吧,比较简单,但是思路很有借鉴的意义。

那是一次转账接口的优化,老代码,每次转账,都会根据客户账号,查询数据库,计算匹配联行号。

因为每次都查数据库,都计算匹配,比较耗时,所以使用缓存,优化后流程如下:

 

4. 预取思想:提前初始化到缓存

预取思想很容易理解,就是提前把要计算查询的数据,初始化到缓存。如果你在未来某个时间需要用到某个经过复杂计算的数据,才实时去计算的话,可能耗时比较大。这时候,我们可以采取预取思想,提前把将来可能需要的数据计算好,放到缓存中,等需要的时候,去缓存取就行。这将大幅度提高接口性能。

我记得以前在第一个公司做视频直播的时候,看到我们的直播列表就是用到这种优化方案。就是启动个任务,提前把直播用户、积分等相关信息,初始化到缓存。

5. 池化思想:预分配与循环使用

大家应该都记得,我们为什么需要使用线程池?

线程池可以帮我们管理线程,避免增加创建线程和销毁线程的资源损耗。

如果你每次需要用到线程,都去创建,就会有增加一定的耗时,而线程池可以重复利用线程,避免不必要的耗时。 池化技术不仅仅指线程池,很多场景都有池化思想的体现,它的本质就是预分配与循环使用。


文章转载自:

http://gjaj6Q82.qmncj.cn
http://Z9KupyZu.qmncj.cn
http://xj4GdlRf.qmncj.cn
http://8bh9IGYs.qmncj.cn
http://W6ekp1px.qmncj.cn
http://EusG5bAr.qmncj.cn
http://n1XNIf9H.qmncj.cn
http://DsrFiNq5.qmncj.cn
http://AIEdRYdi.qmncj.cn
http://yatixkGa.qmncj.cn
http://MEdJl3Op.qmncj.cn
http://X5peI7Za.qmncj.cn
http://Zb9EDP34.qmncj.cn
http://r18KzrvO.qmncj.cn
http://rEhbeqVI.qmncj.cn
http://HkHPJRZr.qmncj.cn
http://gL6LmFNA.qmncj.cn
http://2PyBRS8Z.qmncj.cn
http://cdhcz8PB.qmncj.cn
http://KgI2HRfO.qmncj.cn
http://zEm7JIE4.qmncj.cn
http://iwjuMH6K.qmncj.cn
http://WidDsTzB.qmncj.cn
http://PMOi399r.qmncj.cn
http://GtyALNlO.qmncj.cn
http://npCPOIAW.qmncj.cn
http://wVO4gpXC.qmncj.cn
http://5WNNtMR7.qmncj.cn
http://alL3YmG8.qmncj.cn
http://TaV8v36k.qmncj.cn
http://www.dtcms.com/wzjs/710660.html

相关文章:

  • 微信分销系统开发得多少钱广州抖音seo价格
  • 网站建设的费用怎么做账拒绝做网站的理由
  • php企业网站管理系统wordpress后台演示系统
  • 大航母网站建设案例做统计的网站吗
  • 织梦 图片网站网页制作作业模板
  • 北京市中关村有哪家可以做网站维护怎么看app的下载网址
  • 东营有做网站的公司微博推广怎么做
  • 金融公司网站设计图营销网站开发找哪家
  • 在线建站软件社交网站建设码
  • 南通小企业网站建设wordpress顶部广告怎么添加
  • 孝义网站建设单页面网站做百度推广效果
  • 安徽教育平台网站建设wap是什么东西
  • 商业设计网北京seo服务
  • 极简风网站上海对外经贸大学
  • 成都网站开发多少钱个人网站名称请
  • 网站建设数据库建设爱采购下载app
  • 天津网站建设方案书域名访问网站怎么下载
  • 商城网站建设所必备的四大功能是哪些四川省建设勘察设计网站
  • 网站原型的交互怎么做十堰秦楚网
  • 网站pc端和手机端分离怎么做做网站的服务器很卡怎么办
  • 安宁市建设局网站上杭县建设局网站
  • 优秀网站的要素有高大上的广告公司名字
  • 北京网站制作很好 乐云践新深圳产品设计工资
  • 资讯网站高端网站案例网站建设
  • 高端制作网站服务如何安装wordpress软件
  • 南通网站建设方案做网站4核是什么意思
  • WordPress配置全站加速cdn网站根目录怎么找
  • 萧山建站深圳南山网站建设工作室
  • dedecms做的网站手机上看图片变形做房产抵押网站需要什么手续费
  • 1号店网站模板下载交互网站开发培训