摘要:
Netty 学习(三):通信协议和编解码 作者: Grey 原文地址: 博客园:Netty 学习(三):通信协议和编解码 CSDN:Netty 学习(三):通信协议和编解码 无论使用 Netty 还是原生 Socket 编程,都可以实现自定义的通信协议。 所谓协议就是:客户端和服务端商量好,每一个二 阅读全文
摘要:
乘积小于 K 的子数组 作者:Grey 原文地址: 博客园:乘积小于 K 的子数组 CSDN:乘积小于 K 的子数组 题目链接 LeetCode 713. Subarray Product Less Than K 给你一个整数数组 nums 和一个整数 k ,请你返回子数组内所有元素的乘积严格小于 阅读全文
摘要:
Netty 学习(二):服务端与客户端通信 作者: Grey 原文地址: 博客园:Netty 学习(二):服务端与客户端通信 CSDN:Netty 学习(二):服务端与客户端通信 说明 Netty 中服务端和客户端通信,包括几个方面, 一个是 IO 处理逻辑的配置, 一个是通信载体的设置, 还有就是 阅读全文
摘要:
Netty 学习(一):服务端启动 & 客户端启动 作者: Grey 原文地址: 博客园:Netty 学习(一):服务端启动 & 客户端启动 CSDN:Netty 学习(一):服务端启动 & 客户端启动 说明 Netty 封装了 Java NIO 的很多功能,大大降低了 Java 网络编程的难度,同 阅读全文
摘要:
Java 对象的内存布局(HotSpot 实现) 作者:Grey 原文地址: 博客园:Java 对象的内存布局(HotSpot 实现) CSDN:Java 对象的内存布局(HotSpot 实现) 我们可以通过 jol 来查看一下某个对象的内存布局 引入依赖 <dependency> <groupId 阅读全文
摘要:
写技术博客的一些心得分享 作者: Grey 原文地址: 博客园:写技术博客的一些心得分享 CSDN:写技术博客的一些心得分享 写博客有很多好处,见[BetterExplained]为什么你应该(从现在开始就)写博客 最初写博客用的是 Word,平台是博客园,Word 可以通过这种方式将文章一键发布到 阅读全文
摘要:
Java 多线程(七):线程池 作者:Grey 原文地址: 博客园:Java 多线程(七):线程池 CSDN:Java 多线程(七):线程池 工作原理 线程池内部是通过队列结合线程实现的,当我们利用线程池执行任务时: 如果此时线程池中的线程数量小于corePoolSize,即使线程池中的线程都处于空 阅读全文
摘要:
Java 多线程(五):锁(三) 作者:Grey 原文地址: 博客园:Java 多线程(五):锁(三) CSDN:Java 多线程(五):锁(三) StampedLock StampedLock其实是对读写锁的一种改进,它支持在读同时进行一个写操作,也就是说,它的性能将会比读写锁更快。 更通俗的讲就 阅读全文
摘要:
Java 多线程(四):锁(二) 作者:Grey 原文地址: 博客园:Java 多线程(四):锁(二) CSDN:Java 多线程(四):锁(二) AtomicLong VS LongAddr VS Synchronized 需要实际测试一下。 示例代码见: package git.snippets 阅读全文
摘要:
Java 多线程(三):锁(一) 作者:Grey 原文地址: 博客园:Java 多线程(三):锁(一) CSDN:Java 多线程(三):锁(一) CAS 比较与交换的意思 举个例子,内存有个值是 3,如果用 Java 通过多线程去访问这个数,每个线程都要把这个值 +1。 之前是需要加锁,即sync 阅读全文
摘要:
Java 多线程(二):并发编程的三大特性 作者:Grey 原文地址: 博客园:Java 多线程(二):并发编程的三大特性 CSDN:Java 多线程(二):并发编程的三大特性 可见性 所谓线程数据的可见性,指的就是内存中的某个数据,假如第一个 CPU 的一个核读取到了,和其他的核读取到这个数据之间 阅读全文
摘要:
Java 多线程(一):基础 作者:Grey 原文地址: 博客园:Java 多线程(一):基础 CSDN:Java 多线程(一):基础 顺序、并行与并发 顺序(sequential)用于表示多个操作『依次』处理。比如把十个操作交给一个人处理时,这个人要一个一个地按顺序来处理。 并行(parallel 阅读全文
摘要:
HDFS 高可用分布式环境搭建 作者:Grey 原文地址: 博客园:HDFS 高可用分布式环境搭建 CSDN:HDFS 高可用分布式环境搭建 首先,一定要先完成分布式环境搭建 并验证成功 然后在 node01 上执行stop-dfs.sh 重新规划每个节点的职责 | host | NN | JNN 阅读全文
摘要:
HDFS 分布式环境搭建 作者:Grey 原文地址: 博客园:HDFS 分布式环境搭建 CSDN:HDFS 分布式环境搭建 准备四个Linux实例 每个实例对应的 host 和 ip 地址如下 node01 192.168.150.128 node02 192.168.150.138 node03 阅读全文
摘要:
HDFS 伪分布式环境搭建 作者:Grey 原文地址: 博客园:HDFS 伪分布式环境搭建 CSDN:HDFS 伪分布式环境搭建 相关软件版本 Hadoop 2.6.5 CentOS 7 Oracle JDK 1.8 安装步骤 在CentOS 下安装 Oracle JDK 1.8 下载地址 将下载好 阅读全文
摘要:
使用单调栈来解决的一些问题 作者:Grey 原文地址: 博客园:使用单调栈来解决的一些问题 CSDN:使用单调栈来解决的一些问题 单调栈说明 使用单调栈可以实现 数组中任意一个元素的左边和右边离它最近的比它小(大)的数,且时间复杂度\(O(N)\) 先考虑数组中无重复值的情况,题目描述见: 牛客:单 阅读全文
摘要:
与归并排序相关的一些问题 作者:Grey 原文地址: 博客园:与归并排序相关的一些问题 CSDN:与归并排序相关的一些问题 归并排序的递归解法 插入,选择,冒泡排序时间复杂度是\(O(N^2)\),归并排序可以做到时间复杂度\(O(N*logN)\)。 归并排序的整体思路是利用递归,先让左边排好序, 阅读全文
摘要:
使用打表法找规律 作者:Grey 原文地址: 博客园:使用打表法找规律 CSDN:使用打表法找规律 打表法的使用条件 打表法适合:输入简单,输出也简单(只有一个数),可以暴力把一部分结果打印出来找规律,看下能否找到一个公式来优化代码。 买苹果问题 题目描述见:牛客:买苹果 暴力解法思路 如果是奇数, 阅读全文
摘要:
前缀树的设计与实现 作者:Grey 原文地址: 博客园:前缀树的设计与实现 CSDN:前缀树的设计与实现 前缀树即字典树,可以利用字符串的公共前缀来减少查询时间,最大限度地减少无谓的字符串比较。 我们使用搜索引擎的时候,输入 test,后面会自动显示一堆前缀是 test 的东西。这就利用了前缀树结构 阅读全文
摘要:
矩阵类问题处理技巧 作者:Grey 原文地址: 博客园:矩阵类问题处理技巧 CSDN:矩阵类问题处理技巧 给定一个正方形矩阵,原地调整成顺时针90度转动的样子 题目链接见:LeetCode 48. Rotate Image 本题主要的限制条件是:原地调整,即不开辟额外的二维数组来做。 主要思路如下 阅读全文