首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
JackpotDC
掘友等级
Java高级开发工程师
|
百度
毕业于西安电子科技大学 / 计算机技术硕士 / BAT大厂4年Java后台程序员
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
8
文章 8
沸点 0
赞
8
返回
|
搜索文章
最新
热门
《剑指offer》各编程题Java版分析 -- 数据结构
首先,很容易想到时间复杂度O(n)、空间复杂度O(n)的hash解法,同上。 之后,书中提到了可以利用 二分法 的思想,结合具体的例子 举例 分析。长度为8的数组,所有数字都在1~7,通过中间数字4把它分成1~4和5~7,分别统计各个区间的个数,然后发现1~4区间多了,则再对1…
《剑指offer》各编程题Java版分析 -- 面试语言的基础支持
自定义了一种字符串类,实现字符串的拷贝。其中关键点在于涉及到C++的内存回收与申请的顺序问题,Java由于内存回收通过JVM自动处理,不会有相关问题,此题忽略。 单例模式实现代码少,是面试过程中常见的考察设计模式功底的题目。 在Java的实现中,需要将instance增加vol…
图解分析JDK线程池的实现原理——打工人的一生
在我们的Java开发中,几乎离不了对于线程池的使用,即使你从来没有使用过多线程的开发,你的web容器(如tomcat、jetty)、RPC服务(dubbo)背后都是大量的使用线程池来支持并发执行。随着CPU硬件技术的发展,多线程已经是一个语言最关键的特性和优化点。 Java中线…
hikari数据库连接池源码分析与相关概念
hikari,日语中“光”的意思,作者为这个数据库连接池命名为光,寓意是像光一样快。在分析hikariCP之前简单介绍下JDBC和数据库连接池。 全称Java Database Connectivity,java入门课本中基本都会介绍到的部分。 以常见的MySQL数据库为例,J…
记一次OOM异常的排查经历(jstack、MAT)
首先简单介绍下异常服务的背景。服务的背景可以概括为是一个消息队列的消费端服务,订阅上游消息队列的信息后,在本服务中对信息进行加工最后入库,如下图虚线中的部分。 服务整体是 分布式 部署的,有若干个分布式部署的实例,如图共三个。每个实例负责承包消费一部分 partition,对于…
图解MySQL的四种事务隔离级别与实现原理
事务(Transaction),一般是指要做的或所做的事情。在计算机术语中是指访问并可能更新数据库中各种数据项的一个程序执行单元(unit)。 技术是服务于业务的,在许多使用数据库的业务场景中,经常需要进行一系列操作,这一系列操作要么全都成功,要么全都失败,不允许出现成功了一半…
netty--从bind方法流程分析netty的实现原理
上面netty server启动三部曲的第一步和第三部本身并没有什么特殊逻辑,第一步就是new了一个ServerBootstrap对象并且设置了各种属性,而第三步就是synchronized + wait等待close的消息通知。 netty server启动的核心在于第二步b…
填坑记--执行sql刷数据遇到的问题总结
笔者要执行一批刷数据的操作,需要从MySQL数据库中读出部分数据,然后进行一些加工处理,最后生成.sql的update语句文件,给db执行。 笔者使用的DB是根据userid进行了32分库,一开始出于实现简单的角度考量,使用了简单的单进程单线程顺序查询32分库的数据,但是数据量…
LRU内存淘汰算法原理与应用
LRU,全称Least Recently Used-最近最少使用,是一种内存淘汰算法,笔者最早接触到这个算法是在本科操作系统的课程上,讲到操作系统的虚拟内存页面置换的时候提到的。 这个经典内存淘汰算法也被很多其它地方使用,经常作为缓存的淘汰策略,缓存作为一种提升查询速度的手段,…
记一次刷数据遇到的坑-OOM问题
笔者在处理一项刷数据的工作,过程是将数据源A的数据经过一些调整和计算后存入到数据源B,整个过程大致如下图所示。 在执行步骤二的时候首先是出现了java.lang.OutOfMemoryError: Java heap space错误,错误的原因很明显是JVM堆空间不足,这时统计…
下一页
个人成就
文章被点赞
51
文章被阅读
45,099
掘力值
1,021
关注了
0
关注者
22
收藏集
1
关注标签
4
加入于
2020-07-18