导读 在java的世界里好像已经不再需要关注内存申请、内存回收这些直接内存操作了。更多的时候java程序员是在讨论垃圾回收器(内存分代、回收算法)等内存自动回收技术。操作系统...
导读 在java的世界里好像已经不再需要关注内存申请、内存回收这些直接内存操作了。更多的时候java程序员是在讨论垃圾回收器(内存分代、回收算法)等内存自动回收技术。操作系统...
1 引言# 本文主要讲解JDBC怎么演变到Mybatis的渐变过程,重点讲解了为什么要将JDBC封装成Mybaits这样一个持久层框架。再而论述Mybatis作为一个数据持久...
[toc] 前言 我们已经了解到buffer pool是通过free链表记载其空闲的缓存页以及flush链表存放等待刷盘的脏页的描述数据块。当我们从磁盘加载数据页到buffe...
Redis 是被广泛使用的基础软件之一,对于架构师和运维人员来说,了解 Redis 的高可用方案和背后的原理,是必备的基础知识。 本文作者深入分析了 Redis 高可用的方方...
wrk是一款简单的HTTP压测工具,托管在Github上,https://github.com/wg/wrk.wrk 的一个很好的特性就是能用很少的线程压出很大的并发量. 原...
SWAP/swappiness/kswapd原理,swap分区优先级的妙用 概述 本文讨论的swap基于Linux4.4内核代码。Linux内存管理是一套非常复杂的系统,而s...
CopyOnWriteArrayList 简介 在很多应用场景中,读操作可能会远远大于写操作。由于读操作根本不会修改原有的数据,因此如果每次读取都进行加锁操作,其实是一种资源...
翻看之前项目代码,发现一段这样的注入,将抽象类PaymentPlugin所有的子类注入到集合中 全局搜索之后并没有发现关于这两处的配置,这究竟是如何实现的? 后来在搜索引擎和...
上篇文章我们了解了Kotlin中的各种类,从Kotlin的类开始说起,而类中则有属性和方法,Kotlin 中的类属性和Java的类成员变量还是有很大区别,同时类属性也有一些比...
微服务兴起这几年涌现出不少分布式事务框架,比如ByteTCC、TCC-transaction、EasyTransaction以及最近很火爆的Seata。最近刚看了Seata的...
前言 众所周知,分布式事务是个复杂的问题,有很多种不同的思路和方法。 在 Seata 项目中,最早由阿里巴巴中间件开源出的 AT 模式(Automatic Transacti...
完全不知所云。。根本没说道点子上
消息中间件面试题:如何保证消息的顺序性面试题 如何保证消息的顺序性? 消息中间件各种面试题:消息中间件面试题:消息丢失怎么办?消息中间件面试题:消息队列的优缺点,区别消息中间件面试题:消息中间件的高可用消息中间件...
后端项目地址就不剥离开了,自己解读(中间件那)前端项目地址(可能是空的,为还没上传O(∩_∩)O哈哈~) 前言 Hello World!怕是大多数程序员写的第一句代码了吧。我...
在对 ProtoBuf 做了一些基本介绍之后,这篇开始进入正题,深入 ProtoBuf 的一些原理,让我们看看 ProtoBuf 是如何尽其所能的压榨编码性能和效率的。 编码...
翻译查阅外网资料过程中遇到的比较优秀的文章和资料,一是作为技术参考以便日后查阅,二是训练英文能力。此文翻译自 Protocol Buffers 官方文档 Language G...
什么是Netty? Netty 是一个利用 Java 的高级网络的能力,隐藏其背后的复杂性而提供一个易于使用的 API 的客户端/服务器框架。Netty 是一个广泛使用的 J...
1. CyclicBarrier 是什么? 从字面上的意思可以知道,这个类的中文意思是“循环栅栏”。大概的意思就是一个可循环利用的屏障。 它的作用就是会让所有线程都等待完成后...
可缓存线程池newCachedThreadPool定义: 一个可根据需要创建新线程的线程池,如果现有线程没有可用的,则创建一个新线程并添加到池中,如果有被使用完但是还没销毁的...
最近,我密集面试了若干位Java后端的候选人,工作经验在3到5年间。我的标准其实不复杂:第一能干活,第二Java基础要好,第三最好熟悉些分布式框架。我相信其它公司招初级开发时...