摘要:
阿里巴巴的全链路压测 聊聊全链路压测 全链路压测笔记 为什么需要容量规划? 阿里巴巴有着非常丰富的业务形态,每种业务都由一系列不同的业务系统来提供服务,每个业务系统都分布式地部署在不同的机器上。随着业务的发展,特别是在大促营销等活动场景下(比如双 11),需要为每个业务系统准备多少机器对于阿里巴巴技 阅读全文
摘要:
Java实现生产者-消费者模型 基本概念 生产者和消费者问题是线程模型中的经典问题:生产者和消费者在同一时间段内共用同一个存储空间,生产者往存储空间中添加产品,消费者从存储空间中取走产品,当存储空间为空时,消费者阻塞,当存储空间满时,生产者阻塞。 阻塞队列代码 就是使用LinkedBlockingQ 阅读全文
摘要:
动态规划从入门到精通(一)-入门篇 描述 给你一根长度为 n 的绳子,请把绳子剪成整数长度的 m 段(m、n都是整数,n>1并且m>1),每段绳子的长度记为 k[0],k[1]...k[m] 。请问 k[0]*k[1]*...*k[m] 可能的最大乘积是多少?例如,当绳子的长度是8时,我们把它剪成长 阅读全文
摘要:
动手实现MySQL读写分离and故障转移 MySQL的读写分离两种实现方式 第一种方式:我们手动在代码层实现逻辑,来解析读请求或者写请求,分别分发到不同的数据库中,实现读写分离; 第二种方式就是基于中间件做一层proxy,比如MyCat来实现读写分离的效果。 手写实现读写分离 MyBatis+Spr 阅读全文
摘要:
《深入理解Java虚拟机》第2版挖的坑终于在第3版中被R大填平了 intern的作用 该方法的作用是把首次遇到的字符串加载到常量池中。 对于任意两个字符串 s 和 t,当且仅当 s.equals(t) 为 true 时,s.intern() == t.intern() 才为 true。 测试代码 S 阅读全文
摘要:
【原创】这道面试题我真不知道面试官想要的回答是什么 源码 if (key == null || value == null) throw new NullPointerException(); 二义性 假定ConcurrentHashMap也可以存放value为null的值。那不管是HashMap还 阅读全文
摘要:
一个线程池中的线程异常了,那么线程池会怎么处理这个线程? 线程池常用问题 了解JDK Executors线程池吗?知道JDK提供了哪些默认的实现吗?看过阿里巴巴java开发手册吗?知道为啥不允许使用默认的实现吗?你们没有用默认的吧?那来介绍一下你们自定义线程池的几个常用参数呗?你这个几个参数的值是怎 阅读全文
摘要:
【图文并茂】一文讲透Dubbo负载均衡之最小活跃数算法 (看源码思路) 精尽 Dubbo 源码解析 —— 集群容错(四)之 LoadBalance 实现 随机权重 基本逻辑、代码解析 随机,按权重设置随机概率。 在一个截面上碰撞的概率高,但调用量越大分布越均匀,而且按概率使用权重后也比较均匀,有利于 阅读全文
摘要:
描述 编写一个高效的算法来搜索 m x n 矩阵 matrix 中的一个目标值 target。该矩阵具有以下特性: 每行的元素从左到右升序排列。每列的元素从上到下升序排列。示例: 现有矩阵 matrix 如下: [ [1, 4, 7, 11, 15], [2, 5, 8, 12, 19], [3, 阅读全文
摘要:
描述 编写一个高效的算法来判断 m x n 矩阵中,是否存在一个目标值。该矩阵具有如下特性: 每行中的整数从左到右按升序排列。每行的第一个整数大于前一行的最后一个整数。示例 1: 输入:matrix = [ [1, 3, 5, 7], [10, 11, 16, 20], [23, 30, 34, 5 阅读全文