腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
圈层
工具
文章/答案/技术大牛
搜索
搜索
关闭
发布
首页
学习
活动
专区
圈层
工具
返回腾讯云官网
足球是圆的
专栏成员
举报
29
文章
28845
阅读量
15
订阅数
订阅专栏
申请加入专栏
全部文章(29)
java(11)
编程算法(8)
spring(6)
数据库(3)
sql(3)
kafka(3)
c++(2)
xml(2)
云数据库 SQL Server(2)
linux(2)
apache(2)
腾讯云测试服务(2)
http(2)
容器(2)
存储(2)
缓存(2)
数据结构(2)
javascript(1)
bootstrap(1)
云数据库 Redis®(1)
打包(1)
ide(1)
文件存储(1)
日志服务(1)
NAT 网关(1)
grunt(1)
jdk(1)
jvm(1)
mybatis(1)
面向对象编程(1)
spring boot(1)
npm(1)
dubbo(1)
gcc(1)
nat(1)
Elasticsearch Service(1)
duration(1)
iso(1)
jdk8(1)
semaphore(1)
time(1)
开发(1)
线程(1)
搜索文章
搜索
搜索
关闭
Java内存区域
linux
java
编程算法
程序计数器(Program Counter Register)是一块较小的内存区域,是当前线程执行的字节码的行号指示器。程序计数器是一块私有的内存区域,每个线程都有一个独立的程序计数器。如果线程正在执行的是一个Java方法,这个程序计数器记录的是正在执行的虚拟机字节码指令地址;如果正在执行的是Native方法,这个计数器值则为空(Undefined)。程序计数器所在的内存区域是唯一一个在Java虚拟机没有OOM(OutOfMemoryError)情况的区域。
GreizLiao
2022-05-11
285
0
RocketMQ 事务消息
apache
java
RocketMQ事务消息(Transactional Message)是指应用本地事务和发送消息操作可以被定义到全局事务中,要么同时成功,要么同时失败。RocketMQ的事务消息提供类似 X/Open XA 的分布事务功能,通过事务消息能达到分布式事务的最终一致。
GreizLiao
2021-08-13
1.2K
0
Queue-PriorityQueue源码解析
java
编程算法
Queue队列通常是先进先出(FIFO),但也有特殊的非FIFO,如本文也分析的PriorityQueue。
GreizLiao
2020-05-14
520
0
Mysql存储结构
编程算法
数据库
云数据库 SQL Server
sql
数据结构
索引是一种加快查询速度的数据结构,常用索引结构有hash、B-Tree和B+Tree。本节通过分析三者的数据结构来说明为啥Mysql选择用B+Tree数据结构。
GreizLiao
2020-04-01
874
0
Mybatis处理动态占位符实现
spring
mybatis
腾讯云测试服务
老乡式打招呼 -> “你好,我也是 xxx 的,我们是老乡呀!”(老乡见老乡,少来这套,来了就是深圳人)
GreizLiao
2020-03-28
1.7K
0
通过ThreadPoolExecutor源码分析线程池实现原理
c++
linux
线程是稀缺资源,如果无限制的创建,不仅会消耗系统资源,还会降低系统的稳定性。使用线程池可以重复利用已创建的线程降低线程创建和销毁带来的消耗,随之即可提高响应速度(当一个任务到达时,不需要重新创建线程来为之服务,重用已有线程),还可以通过线程池控制线程资源统一分配和监控等。
GreizLiao
2020-03-17
338
0
jdk8函数接口
编程算法
数据结构
java8 新特性推出的 Lambda 表达式,即函数式编程,相信很多开发胸弟都会使用了,但是什么是函数式编程呢?别问我,我也不知道标准的定义。其核心思想是:使用不可变值和函数,函数对一个值进行处理,映射成另一个值。
GreizLiao
2020-03-03
670
0
Logback源码分析
日志服务
xml
编程算法
javascript
在日常开发中经常通过打印日志记录程序执行的步骤或者排查问题,如下代码类似很多,但是,它是如何执行的呢?
GreizLiao
2020-02-14
1.4K
0
Arthas查看Spring配置
spring
容器
dubbo
在开发过程经常有同学问:“我这个配置更新提交了,怎么样知道项目中是否已经更新使用新值?” 常用的方法是添加日志打印该值判断是否更新。今天我们用Arthas来实现项目中配置值实时读取。
GreizLiao
2019-11-01
3.9K
0
Spring注解Component原理源码解析
spring
容器
存储
在实际开发中,我们经常使用Spring的@Component、@Service、@Repository以及 @Controller等注解来实现bean托管给Spring容器管理。Spring是怎么样实现的呢?我们一起跟着源码看看整个过程吧!
GreizLiao
2019-10-14
1.4K
0
ApplicationListener原理分析
spring
jdk
缓存
在 Nacos配置服务原理 文中结束时提到过通过发布 ApplicationListener 刷新事件完成 Context 中属性值的更新。那么本章我们一起分析 ApplicationListener 原理。在开启 ApplicationListener 解析之前我们先看一个传说中模式----观察者模式(Observer)。
GreizLiao
2019-09-29
664
0
JDK8时间工具类
java
duration
iso
jdk8
time
JDK8添加了java.time包,提供了很多方便。 用得比较多的几个类: Instant 在时间线上模拟单个瞬时点 Duration 以秒和纳秒为单位模拟一个数量或时间量。可以使用其他基于持续时间的单位访问它,例如分钟和小时 LocalDate 表示ISO-8601日历系统中没有时区的日期,例如 2019-03-31 LocalTime 表示ISO-8601日历系统中没有时区的时间,例如 16:50:30 LocalDateTime 表示ISO-8601日历系统中没有时区的日期时间,例如 2019-03-31T10:15:30 其中一些方法使用如下:
GreizLiao
2019-09-29
900
0
elk安装和使用
Elasticsearch Service
apache
grunt
http
npm
启动成功后在控制台随便输入文字,此时会同步到elasticsearch中(前提是在运行中),elasticsearch中会添加elasticsearch-2017-03-28 索引 type为logs类型的文档。
GreizLiao
2019-09-24
598
0
浅谈对象的创建、内存布局和访问定位
java
编程算法
存储
这里的对象的创建是指普通的对象(不包括数组和Class对象)。对象的创建简单来说就是执行new的时候,虚拟机做出对应的响应。让我们看看一下虚拟机创建对象的过程: 1.虚拟机遇到new指令时,首先尝试在常量池中定位到对应类的符号引用,并检查这个符号引用代表类是否已被加载、解析和初始化过。如果没有,那必须先执行相应的类加载过程(后续会写一下关于类加载的问题)。 2.类加载检查通过后,为新生对象分配内存。对象内存的大小在类加载完成后便可完全确定。对象内存分配有“指针碰撞”和“空闲列表”两种方法,“指针碰撞”是把已用内存放到指针的一边,未用的放到另一边,以指针分隔,当需要分配一个新对象内存时把指针往未分配内存那边移动相对应的空间即可;“空闲列表”是因为内存已用的和未用的并不是规整的,它们是交错的,所以需要一个列表记录内存块的情况。Java堆是线程之间共享的内存,虚拟机采用CAS配上失败重试的方式保证更新操作的原子性保证内存指针修改并发安全性;另一种方法是“本地线程分配缓冲(Thread Local Allocation Buffer TLAB)”。 3.将虚拟机分配到的内存空间初始化为零值。 4.对对象进行必要的设置。其实是对对象头编写。 5.完成上面4个步骤执行new指令后会接着执行方法 到此对象才算完成生产出来。
GreizLiao
2019-09-24
735
0
类生命周期
编程算法
java
c++
ide
类从被加载到虚拟机内存中开始到卸载出内存为止,它的整个生命周期包括:加载(Loading)、验证(Verification)、准备(Preparation)、解析(Resolution)、初始化(Initialization)、使用(Using)和卸载(Unloading)7个阶段。其中验证(Verification)、准备(Preparation)、解析(Resolution)3个部分统称为连接(Linking)。这7个阶段的顺序如图:
GreizLiao
2019-09-24
709
0
Java验证手机号
开发
在实际开发中我们需要对手机号格式校验,以下是对中国手机号校验的实现。 public class PhoneUtils { /** * 中国手机号码 */ private static Pattern CHINESE_PHONE_PATTERN = Pattern.compile("((13|15|17|18)\\d{9})|(14[57]\\d{8})"); /** * 是否是有效的中国手机号码 * @param phone
GreizLiao
2019-09-24
2.2K
0
jps虚拟机进程状态工具
jvm
jps工具可以列出正在运行的虚拟机进程,并显示虚拟机执行主类名称以及这些进程的本地虚拟机唯一ID(Local Virtual Machine Identifier,LVMID)。
GreizLiao
2019-09-24
581
0
类加载器
java
面向对象编程
bootstrap
实现类加载阶段中的“通过一个类的全限命名来获取描述此类的二进制字节流”这个动作的代码模块称为“类加载器”。
GreizLiao
2019-09-24
568
0
编程中的死亡对象
编程算法
java
在之前的 Java内存区域文章中已经知道几乎所有Java对象实例都存放在堆中,GC对堆进行回收之前先是判断哪些对象已经“死亡”。那么问题来了,怎么样确定一个对象是否已经死亡呢? 判断对象是否已经死亡有引用计数算法和可达性分析算法
GreizLiao
2019-09-24
364
0
spring boot整合kafka
spring
kafka
最近项目需求用到了kafka信息中间件,在此做一次简单的记录,方便以后其它项目用到。
GreizLiao
2019-09-24
627
0
点击加载更多
社区活动
Python精品学习库
代码在线跑,知识轻松学
立即查看
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
立即体验
技术创作特训营·精选知识专栏
往期视频·干货材料·成员作品 最新动态
立即查看
领券
问题归档
专栏文章
快讯文章归档
关键词归档
开发者手册归档
开发者手册 Section 归档