慧销平台ThreadPoolExecutor内存泄漏分析

京东生旅平台慧销系统,作为平台系统对接了多条业务线。但近期根据告警发现内存持续升高,因此猜测该系统可能存在内存泄漏的情况。本文通过此案例,介绍慧销平台ThreadPoolExecutor内存泄漏问题的详细分析过程。

Java:既然有了synchronized,为什么还要提供Lock?

摘要:在Java中提供了synchronized关键字来保证只有一个线程能够访问同步代码块。既然已经提供了synchronized关键字,那为何在Java的SDK包中,还会提供Lock接口呢?这是不是重复造轮子,多此一举呢? 本文分享自华为云社区《【高并发】Java中提供了synchronized,

应用现代化产业联盟,正式成立

摘要:2022年11月7日,华为全联接大会2022,在深圳及线上召开。华为云联合中国软件行业协会以及多家行业客户、软件提供商和咨询机构等,共同成立了“应用现代化产业联盟”。 本文分享自华为云社区《应用现代化产业联盟,正式成立!》,作者:华为云头条。 2022年11月7日 华为全联接大会2022 在深

AI开发实践丨客流分析之未佩戴口罩识别

摘要:通过本教程,我们可以学习客流统计应用的扩展——过线客流统计+口罩佩戴识别,可用于商超、写字楼入口安检。 本文分享自华为云社区《客流分析之未佩戴口罩识别》,作者: HiLens_feige 。 疫情虽然过去了,口罩佩戴防护依然十分重要,本文在 基于头肩部检测的过线客流统计 博文基础上增加口罩佩戴

StampedLock:JDK1.8中新增,比ReadWriteLock还快的锁

摘要:StampedLock是一种在读取共享变量的过程中,允许后面的一个线程获取写锁对共享变量进行写操作,使用乐观读避免数据不一致的问题,并且在读多写少的高并发环境下,比ReadWriteLock更快的一种锁。 本文分享自华为云社区《一文彻底理解并发编程中非常重要的票据锁——StampedLock》

7种创建方式,带你理解Java的单例模式

介绍创建Java单例对象的七种方式,重点掌握哪些创建方式是线程安全的,哪些方式是线程不安全的,并能够在实际项目中灵活运用设计模式,编写可维护的代码。

【RocketMQ】消息的消费总结

消费者从Broker拉取到消息之后,会将消息提交到线程池中进行消费,RocketMQ消息消费是批量进行的,如果一批消息的个数小于预先设置的批量消费大小,直接构建消费请求ConsumeRequest将消费请求提交到线程池处理,否则需要分批构建进行提交。 消息消费 在消息被提交到线程池后进行处理时,会调

BIO和NIO的区别和原理

BIO BIO(Blocking IO) 又称同步阻塞IO,一个客户端由一个线程来进行处理 当客户端建立连接后,服务端会开辟线程用来与客户端进行连接。以下两种情况会造成IO阻塞: 服务端会一直阻塞,直到和客户端进行连接 客户端也会一直阻塞,直到和服务端进行连接 基于BIO,当连接时,每有一个客户端,

蜘蛛的依旧疯狂与园子的新畅想:尝试放出被屏蔽的百度蜘蛛网段

因为看到博文,百度搜索部门的人昨天对园子进行了线上回访,让我们看到了一丝希望。今天早上,带着这丝希望,我们试着放出今年3月因为过于疯狂、喜欢在别人地盘上飙车而被我们屏蔽的百度蜘蛛网段,看看半年之后它是否“疯”子回头,结果依旧是意料之中的疯狂依旧,“疯”性难移

一台 3000 元战未来主机装配方案

为了更好的阅读体验,请点击这里 下面是一个备选方案: CPU:酷睿I3 12100 四核八线程649 主板:微星H610M 爆破弹 金牌 569 内存:金百达16G 8GX2 3200 银爵 229 散热:赛普雷 涂城 双铜管散热器 49 固态:西数SN570 500G M2新蓝盘 249 显卡:U

Arduino实现温湿度传感器以及数据上传到云(乐维互联)

0 准备材料 0.1 ESP-01S 引脚及定义 官方定义: 序号 pin 功能 1 GND 地线 2 IO0/GPIO0 工作模式选择:①悬空:Flash Boot,工作模式 ②下拉:UART DownLoad 下载模式 3 IO2/GPIO2 通用IO 4 RX/RXD 数据接收端 5 TX/T

从Purge机制说起,详解GaussDB(for MySQL)的优化策略

当前GaussDB(for MySQL)的Purge优化功能,通过任务流水线化、线程优先级调整、二次分发等手段,避免数据库undo log堆积,极大提升Purge的性能,大幅改善用户体验。

ThreadLocal 核心源码分析

ThreadLocal 简介 多线程访问同一个共享变量的时候容易出现并发问题,特别是多个线程对一个变量进行写入的时候,为了保证线程安全,一般使用者在访问共享变量的时候需要进行额外的同步措施才能保证线程安全性。ThreadLocal是除了加锁这种同步方式之外的一种保证和规避多线程访问出现线程不安全的方

C#实现多线程的几种方式

前言 多线程是C#中一个重要的概念,多线程指的是在同一进程中同时运行多个线程的机制。多线程适用于需要提高系统并发性、吞吐量和响应速度的场景,可以充分利用多核处理器和系统资源,提高应用程序的性能和效率。 多线程常用场景 CPU 密集型任务. I/O 密集型任务. 并发请求处理. 大数据处理等. 什么是

Rust中的并发性:Sync 和 Send Traits

在并发的世界中,最常见的并发安全问题就是数据竞争,也就是两个线程同时对一个变量进行读写操作。但当你在 Safe Rust 中写出有数据竞争的代码时,编译器会直接拒绝编译。那么它是靠什么魔法做到的呢? 这就不得不谈 Send 和 Sync 这两个标记 trait 了,实现 Send 的类型可以在多线程

ArcMap手动新建矢量要素的方式

本文介绍在ArcGIS下属ArcMap软件中,新建点、线、面等矢量要素图层,并对新建图层的空间范围加以划定的方法~

[转帖]Java中线程的生命周期

https://blog.51cto.com/u_15773567/5832430 1 介绍 本篇文章我们讨论下Java中的一个非常核心的概念:线程的生命周期。在Java编程语言中,多线程编程非常重要。线程从创建到销毁是有生命周期的,在线程的生命周期中,线程会经历多种状态(state)。 2 线程状

[转帖]某游戏海外版本堆外内存泄露排查

https://www.jianshu.com/p/cae00d9c99fe 某游戏海外版本堆外内存泄露排查 现象 线上有部分服务器用top发现Java进程内存占用占比达到99,而且出现了有一个服务器被Linux OOM Kill 排查 选择了110服,该机器的Java进程最大堆内存设置的是9710

[转帖]Java调优系列之工具篇之btrace、gperftools

https://github.com/landon30/Bulls/wiki/java-profiling-tools landon 网络游戏资深服务器架构师 2018-06-14 线上遇到了问题? 服务上线出问题,想增加打印日志怎么办? 线上怀疑某个接口慢,想打印接口耗时怎么办? 线上某个接口报错

[转帖]数据存储四种常见方式

常见的数据存储方式有四种:在线存储、近线存储、脱机存储和站外保护。 不同的存储方式提供不同的获取便利性、安全性和成本开销等级。 在大多数场景中,四种存储方式被混合使用以达到最有效的存储策略。 来看一看这四种数据存储方式各自的含义: 1. 在线存储 (Online storage): 有时也称为二级存