java知识点扫盲

什么是Dubbo的泛化调用是什么?答:一般调用,Dubbo必须依赖服务端提供的api包,如果服务端升级了api包,客户端也必须跟着升级。泛化接口调用方式主要用于客户端没有 API 接口及模型类元的情况,参数及返回值中的所有 POJO 均用 Map 表示。某种原因没有服务接口,而要发起服务的调用,就需
2021年01月20日 904次浏览

java之多线程

java多线程之优雅的并发批量查询大数据量 | wangdaye's blog
2020年12月17日 701次浏览

java之五种分布式事务实现方案

一.两阶段提交方案/XA 方案XA方案2PC的传统方案是在数据库层面实现的,如Oracle、MySQL都支持2PC协议,为了统一标准减少行业内不必要的对接成本,需要制定标准化的处理模型及接口标准,国际开放标准组织Open Group定义分布式事务处理模型DTP(Distributed Transac
2020年12月14日 1,326次浏览

多线程编程之synchronized锁的升级优化

synchronized锁升级优化在JDK1.6以前,使用synchronized就只有一种方式即重量级锁,而在JDK1.6以后,引入了偏向锁,轻量级锁,重量级锁,来减少竞争带来的上下文切换。Java对象头每个对象都拥有对象头,对象头由Mark World ,指向类的指针,以及数组长度三部分组成Ma
2020年12月12日 864次浏览

源码分析之HashMap

Java 8 中 HashMap 的实现使用了很多位操作来进行优化。本文将详细介绍每种位操作优化的原理及作用。Java 中的位运算位操作包含:与、或、非、异或移位操作包含:左移、右移、无符号右移HashMap 中的位运算计算哈希桶索引hashCode 方法优化指定初始化容量扩容方法里的位运算总结回顾
2020年12月12日 903次浏览

中间件编程之提高ES查询速度

性能优化的杀手锏——filesystem cache你往 es 里写的数据,实际上都写到磁盘文件里去了,查询的时候,操作系统会将磁盘文件里的数据自动缓存到 filesystem cache 里面去。es 的搜索引擎严重依赖于底层的 filesystem cache ,你如果给 filesystem
2020年12月11日 1,172次浏览

中间件编程之RocketMq消息中间件消息堆积处理

我们一个一个来梳理吧,先假设一个场景,我们现在消费端出故障了,然后大量消息在 mq 里积压,现在出事故了,慌了。大量消息在 mq 里积压了几个小时了还没解决几千万条数据在 MQ 里积压了七八个小时,从下午 4 点多,积压到了晚上 11 点多。这个是我们真实遇到过的一个场景,确实是线上故障了,这个时候
2020年12月11日 1,705次浏览

zookeeper中间件使用之独占锁与共享锁

ZooKeeper提供分布式协调服务,应用非常广泛,虽然出现了其他服务发现组件,比如etcd、consul,但是仍然可以看到ZooKeeper在Kafka、Solr、Hbase、Stom等方面的应用。分布式锁是其中一个使用特性,分布式锁包含排他锁和共享锁两类锁。1. 排他锁1.1 简介又称为写锁或者
2020年12月11日 1,286次浏览

Arthas之实践经验总结

JVMTI等技术实现对JVM底层的一些监控?ognl表达式查看第一个参数:$ watch com.taobao.container.Test test "params[0]"Press Ctrl+C to abort.Affect(class-cnt:1 , method-cnt
2020年12月10日 4,210次浏览

中间件编程之zookeeperApi使用

zk在常用中间件中作为通讯工具,集群管理工具,掌握zk的java操作非常有必要。Java操作zookeeper总共有三种方式:原生的Java APIzkclientcurator第一种实现代码:pom.xml<dependency> <groupId>org.apach
2020年12月09日 1,438次浏览