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

长治市人民政府门户网站/北京网站建设公司

长治市人民政府门户网站,北京网站建设公司,望野博物馆观后感,甘肃省人民政府新闻发布会这周在项目中遇到这样一个Bug,代码大致是这样的,有一个LogEntity日志类,里面有一个InnerLog负责存储每次请求的RPCInfo相关信息, 每次请求的时候会把RPC相关信息加入到InnerLog中。 public class LogEntity { public LogEntity…

 这周在项目中遇到这样一个Bug,代码大致是这样的,有一个LogEntity日志类,里面有一个InnerLog负责存储每次请求的RPCInfo相关信息,

每次请求的时候会把RPC相关信息加入到InnerLog中。

public class LogEntity {

public LogEntity() {
}

private InnerLog inner = new InnerLog();
   public void addRpcInfo(RpcInfo rpcInfo) {
  if (gene == null) {
  initRpcGene();
  }
  if (rpcInfo.getRpctype() != null) {
   if (StringUtils.isBlank(rpcInfo.getRpcid())) {
   rpcInfo.setRpcid(gene.genRpcId());
   }
   inner.getInnerinfo().add(rpcInfo);
   }
  }
}

然后在Controller中,注入LogEntity,记录日志信息。

@RestController
@RequestMapping("/v")
public class VideoController extends BaseController {

@Autowired
public VideoService videoService;

@Autowired
LogEntity logEntity;
  @Override
  @RequestMapping(value = "/search", method = RequestMethod.GET)
  public Response search(Request request) {
  long start = System.currentTimeMillis();
  logEntity.put(LogConst.STARTTIMESTAMP, String.valueOf(start));
     ......
  ......
     logEntity.logging(logger);
  }
}

然后在压测的时候发现日志很快就到几十个G了。排查发现第二次请求时候的InnerLog中也包括第一次的InnerLog信息。这说明第二次请求和第一次请求

的时候用的是一个LogEntity实例。因此,想到这应该是注入的问题。因为对SpringBoot研究不是很深入,只是会简单的实用。因此,对一些性质还不是很

了解。查阅资料发现,注入的Bean是有范围可选的,默认的范围是Singleton,也就是容器中只有一个Bean实例。接下来,详细的看看Bean都有那几类范

围:

(1)singleton: 表示在spring容器中的单例,通过spring容器获得该bean时总是返回唯一的实例

(2)prototype:表示每次获得bean都会生成一个新的对象

(3)request:表示在一次http请求内有效(只适用于web应用)

(4)session:表示在一个用户会话内有效(只适用于web应用)

(5)globalSession:表示在全局会话内有效(只适用于web应用)

在多数情况,我们只会使用singleton和prototype两种scope,如果未指定scope属性,默认为singleton。

因此,针对这个问题,我们可以再LogEntity类上加上@Scope("prototype")注解,问题就解决了。也可以不改变LogEntity的范围,不过每次请求的时候新建

一个InnerLog就好了。

 


转载于:https://www.cnblogs.com/junjiang3/p/8324910.html

http://www.lbrq.cn/news/734833.html

相关文章:

  • 网站开发技术论文/seo chinaz
  • 做企业网站有哪些系统/高端seo服务
  • 给自己的网站起名字/经典软文广告案例
  • 网站一般用什么做的/重庆百度快速优化
  • 北京网站制作公司哪家好/宝鸡seo
  • 做商城网站都需要什么/东莞网站建设制作
  • 网站建设怎么样找客户快/网站设计说明
  • 朋友说是做彩票网站运营维护/淘宝产品关键词排名查询
  • 用c语言做网站/东莞seo公司
  • 网页设计作业报告范文/对seo的理解
  • 建行国际互联网网站/营销技巧有哪些
  • 中山网站网站建设/外贸推广方式
  • 武汉网站建设公司排名/百度最新版本2022
  • 宝安小学网站建设/全网营销平台
  • 摄影工作室网站建设模板/制作网站的软件叫什么
  • 住房城乡建设局网站首页/企业网站推广优化公司
  • 怎样做网站流量统计/百度推广需要多少钱
  • 企业网站微信公众号的建设事迹/发免费广告电话号码
  • 网站初期建设的成本来源/seo诊断书
  • 做视频解析网站犯法/网页设计与制作
  • 网上免费申请营业执照/seo搜索引擎优化工程师招聘
  • 杭州网站搜索排名/广州商务网站建设
  • 汽车推广方式有哪些/人员优化方案
  • 深圳易捷网站建设/怎么自己开发网站
  • 哈尔滨住房和城乡建设厅官方网站/提高seo排名
  • 要怎么判断网站是什么cms做的/怎么自己做一个网站
  • 深圳做网站多钱/百度一下首页手机版
  • 网站建设的方案/seo搜索引擎优化书籍
  • 怎么自己做公众号/seo排名优化工具推荐
  • wordpress看文/win7系统优化大师
  • Prompt魔法:提示词工程与ChatGPT行业应用读书笔记:提示词设计全能指南
  • 使用C++17标准 手写一个vector
  • UTF-8 编解码可视化分析
  • Spring事务源码
  • Qt——文件操作
  • 土地财政历史探寻