- 博客(10)
- 资源 (1)
- 收藏
- 关注
原创 Nacos注册中心学习笔记
前言英文全称Dynamic Naming and Configuration Service,Na为naming/nameServer即注册中心,co为configuration即注册中心,service是指该注册/配置中心都是以服务为核心。服务在nacos是一等公民。在学习Nacos之前先来思考一个问题:注册中心应设计为AP还是CP系统?参考《阿里巴巴为什么不用 ZooKeeper ...
2020-03-26 11:04:15
1654
1
原创 深入了解MySQL的流式查询机制
引言为什么要用流式查询?a) 如果有一个很大的查询结果需要遍历处理,又不想一次性将结果集装入客户端内存,就可以考虑使用流式查询;b)分库分表场景下,单个表的查询结果集虽然不大,但如果某个查询跨了多个库多个表,又要做结果集的合并、排序等动作,依然有可能撑爆内存;详细研究了sharding-sphere的代码不难发现,除了group by与order by字段不一样之外,其他的场景都非常适...
2019-04-12 15:53:16
11880
4
转载 Java对象结构及大小计算
序本文主要简述Java对象的内存布局以及其大小的计算。Java对象内存布局在HotSpot虚拟机中,对象在内存中存储的布局可以分为3块区域:对象头(Header)、实例数据(Instance Data)和对齐填充(Padding)。对象头HotSpot虚拟机的对象头包括两部分信息:第一部分markword,用于存储对象自身的运行时数据,如
2017-11-23 10:49:02
394
转载 linkedHashMap的应用
一. 概述: LinkedHashMap是Map接口的哈希表和链接列表实现,具有可预知的迭代顺序。LinkedHashMap实现与HashMap的不同之处在于,LinkedHashMap维护着一个运行于所有条目的双重链接列表。此链接列表定义了迭代顺序,该迭代顺序可以是插入顺序(insert-order)或者是访问顺序,其中默认的迭代访问顺序就是插入顺序,即可以按插入的顺序遍历元
2017-09-10 22:12:52
1625
转载 Java动态代理的两种实现方法
AOP的拦截功能是由java中的动态代理来实现的。说白了,就是在目标类的基础上增加切面逻辑,生成增强的目标类(该切面逻辑或者在目标类函数执行之前,或者目标类函数执行之后,或者在目标类函数抛出异常时候执行。不同的切入时机对应不同的Interceptor的种类,如BeforeAdviseInterceptor,AfterAdviseInterceptor以及ThrowsAdviseIntercepto
2017-09-10 21:57:55
195
转载 HashMap并发导致死循环 CurrentHashMap
为何出现死循环简要说明HashMap闭环的详细原因cocurrentHashMap的底层机制 为何出现死循环简要说明 HashMap是非线程安全的,在并发场景中如果不保持足够的同步,就有可能在执行HashMap.get时进入死循环,将CPU的消耗到100%。 HashMap采用链表解决Hash冲突。因为是链表结构,那么就很容易形成闭合的链路,这样
2017-09-08 18:41:12
504
转载 用SQL语句,删除掉重复项只保留一条
用SQL语句,删除掉重复项只保留一条在几千条记录里,存在着些相同的记录,如何能用SQL语句,删除掉重复的呢1、查找表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断 select * from people where peopleId in (select peopleId from people group by peopleId havi
2017-09-08 12:37:39
458
转载 AtomicInteger线程安全的实现机制
Java在concurrent包下提供了线程安全的int包装类,AtomicInteger,接下来我们就讲讲AtomicInteger的实现原理:public class AtomicInteger extends Number implements java.io.Serializable { private volatile int value;1212AtomicInte
2017-09-01 10:57:13
771
转载 数据库事务四种隔离级别
定义:在数据库操作中,为了有效保证并发读取数据的正确性,提出的事务隔离级别。数据库事务的隔离级别有4个,由低到高依次为Read uncommitted(未授权读取、读未提交)、Read committed(授权读取、读提交)、Repeatable read(可重复读取)、Serializable(序列化),这四个级别可以逐个解决脏读、不可重复读、幻读这几类问题。问题的提出:
2017-09-01 10:10:37
230
转载 Java HashMap的工作原理
面试的时候经常会遇见诸如:“java中的HashMap是怎么工作的”,“HashMap的get和put内部的工作原理”这样的问题。本文将用一个简单的例子来解释下HashMap内部的工作原理。首先我们从一个例子开始,而不仅仅是从理论上,这样,有助于更好地理解,然后,我们来看下get和put到底是怎样工作的。我们来看个非常简单的例子。有一个”国家”(Country)类,我们将要用Country
2017-08-30 10:26:38
191
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人