log4j2使用指南
log4j2 是log4j的升级版,在功能和性能上都有很大的提升。 1.常用组件 1.1 Appenders Appender负责将LogEvents传递到目的地。 每个Appender都必须实现Appender接口。 大多数Appender继承自AbstractAppender,它增加了Lifecycle和Filterable支持。 生命周期允许…
windows下配置flume
1.flume安装与配置 (1)官网下载:http://flume.apache.org/download.html 并解压到自己的目录 (2) 配置环境变量: 新建FLUME_HOME,变量值为flume的安装目录。 编辑系统变量path,添加%FLUME_HOME%/conf;%FLUME_HOME%/bin; (3)修改flume配置: 修改…
两个指针
总结一下有关两个指针的算法题。这里的指针起游标的作用,一般用在处理字符串或者数组的相关问题上。有两个指针从头尾向中间移动,也有从头到尾一前一后一起移动。 1.求一个字符串的最大不重复子串的长度 一种接近暴力求解的方法就是遍历所有可能的子串组合,然后找出其中最长的一个。每次拿到一个子串的时候使用HashSet去判断有没有重复字符,如果有则不参与最长的…
各种形式的两数相加
这篇文章总结一下LeetCode上各种形式的两数相加,有两个链表相加、字符串模拟二进制数相加、不使用运算符号的相加等。 1.两个单链表相加,返回一个单链表 Input: (2 -> 4 -> 3) + (5 -> 6 -> 4) Output: 7 -> 0 -> 8 Explanation: 342 + 465 = 807. 给定链表结构如下: …
给定整数集合和目标值找出集合中和为目标值的元素
1.给定的数组没有排序 给定一个整型数组array和一个整数target,在数组中找出两个整数相加之和为target,返回这两个整数的下标。 Given nums = [2, 7, 11, 15], target = 9, Because nums[0] + nums[1] = 2 + 7 = 9, return [0, 1]. 1.1 双层for…
two sum
1.题目 给定一个整型数组array和一个整数target,在数组中找出两个整数相加之和为target,返回这两个整数的下标。 Given nums = [2, 7, 11, 15], target = 9, Because nums[0] + nums[1] = 2 + 7 = 9, return [0, 1]. 2.解法 最容易想到的方法就是使…
二叉搜索(排序)树实现-Java泛型版
二叉查找树(Binary Search Tree),又叫二叉排序数(Binary Sort Tree),网上的实现都是假定元素是整型,这里使用泛型搞一个,实现插入、查找、删除、查找最小值这四个操作。 public class BST<T extends Comparable> { public static void main(Stri…
经典排序算法汇总
1.冒泡排序 是一种稳定的排序方式,时间复杂度O(n^2)。列出三种逐次优化的实现方法: 1.1 最普通 public class BubbleSortV1 { public static void bubbleSort(int[] array){ for(int i=0;i<array.length;i++){ for(int j = i+…
spark not serializable异常分析及解决方案
1.背景 在使用spark开发分布式数据计算作业过程中或多或少会遇到如下的错误: Serialization stack: object not serializable (class:class: org.apache.hadoop.hbase.io.ImmutableBytesWritable, value: 30 30 30 30 30 30…
2.kafka的高可靠性实现方案及保障机制
版权申明:转载请注明出处。 文章来源:玄涧思库 作为一款商用的高可靠实时消息系统,kafka使用了replication,ISR,leader选举等机制保证其可靠性。具体分析如下: 1.文件存储机制 前面提到消息在逻辑上以topic存在,而在物理存储上是partition,在实际存储中partition是作为目录存在于broker上。 假如serv…