4 anjing900812

尚未进行身份认证

暂无相关描述

等级
TA的排名 8w+

最近参与的项目小结

参与实现的模块的功能:基于KafkalowlevelAPI实现一个消费者,消费到消息先反序列化,之后通过HTTPClient发送给指定的url。一、KafkaConsumerKafkaConsumer基于之前项目中的HadoopConsumer的框架实现,但一个partition开启了一个消费者线程,同时修改了持续消费的实现逻辑:不停地轮询offsetRange是否改变,是否生成

2017-04-17 18:16:38

mapreduce框架详解

原文链接:http://www.cnblogs.com/sharpxiajun/p/3151395.html作者总结的特别棒,读完之后终于明白了MapReduce的架构、工作原理。强烈推荐。开始聊mapreduce,mapreduce是hadoop的计算框架,我学hadoop是从hive开始入手,再到hdfs,当我学习hdfs时候,就感觉到hdfs和mapreduce关系的紧密。这个可能是

2016-12-05 10:20:36

Maven的隐式依赖导致Jar包冲突的问题

部署好jstorm后,运行一个例子程序,提示slf4j的jar包冲突问题,如下:解决方法:参考链接:http://stamen.iteye.com/blog/2030552eclipse中打开工程的pom.xml文件,有一个DependencyHierarchy窗口显示maven导入的jar包之间的依赖关系,搜索slf4j相关的,之后右键删除此依赖。又get了一个

2016-11-29 15:15:30

Java日志框架:SLF4J, Apache Common-Logging, Log4J和Logback

原文链接:http://liuzidong.iteye.com/blog/776072同时可参考另一篇:http://blog.csdn.net/kobejayandy/article/details/17335407  http://www.cnblogs.com/zhuawang/p/3999235.htmlLog4j Apache的一个开放源代码项目,通过使用Log4j,我们

2016-11-11 15:41:36

Java类加载器之线程上下文类加载器

面试时被问到,又一个盲点:原文链接,感谢作者,讲得很清楚:http://blog.onlycatch.com/post/Java%E7%B1%BB%E5%8A%A0%E8%BD%BD%E6%9C%BA%E5%88%B6Thread.setContextClassLoader(ClassLoadercl)在Java中提供了对于线程设置ContextClassLoader

2016-09-27 11:06:10

项目09-23

一java中的锁机制:JUC包中的lock类,先说了这个包下的ConcurrentHashMap,锁分离机制,完全并发读和一定程序的并发写,HashMap线程不安全,如何体现的?多个线程同时调用put方法新增key-value对,可能会覆盖?lock:内部实现原理:http://www.cnblogs.com/chenssy/p/4742221.html 锁有状态,获得锁后修改

2016-09-24 20:18:20

项目08-31

OK,7月16日到今天,已经40多天了,果然是一场马拉松,goodluck!Zookeeper管理kafka的哪些元数据信息,看书《从PAXOS到Zookeeper分布式一致性原理与实践》管理broker集群:brokers的父节点/brokers/ids,一个broker启动在其下创建子节点/brokers/ids/[0..N],所以一个broker由唯一的id标识,(可以随意

2016-09-01 13:21:36

对只包含0、1、2三种元素的数组进行排序

时间复杂度:o(n)两种方法,都是只遍历一次;/*借鉴《算法》中,当数组中存在大量重复元素时,对快排partition方法的改进。*即三个指针,把数组划分成三部分,x*/publicvoidsortarray2(int[]nums){ inta=0;//指向下一个存放0的位置 intb=nums.length-1;//从右向左,下一个存放2的位置 inti

2016-08-27 13:44:29

项目08-25

1有向图中两个点之间是否存在一条路径:广搜图的遍历以及广搜、深搜、最短路径问题;HashMap的rehash原理:介绍kafka;TCP、UDP的区别,TCP面向流,UDP面向数据报的理解:http://blog.csdn.net/ce123/article/details/8976006 http://www.cnblogs.com/jason2013/articles/4346

2016-08-26 11:21:53

对LinkedHashMap的理解

最初的认识:可以维护元素的插入顺序,按照插入顺序遍历;实现原理:LinkedHashmap的Entry除了该节点的hash值、key值、value值、next指向冲突时的后一个节点,还增加了指向前一个节点和后一个节点的指针:before、after,从而构成双向链表;除此之外,还有双向链表的头结点head和尾节点tail;LinkedHashMap的具体实现:节点:

2016-08-19 17:27:33

工作总结8-16

1手写快速排序,算法和算法导论两个版本;链表的快排;单链表中交换指定的两个节点;ok,leetcode刷题找未排序数组中的中位数:partition选择排序;流式数据的中位数:同时使用最大堆和最小堆;两个已排序数组的中位数?lt数组右旋、字符串旋转;海量数据:统计一分钟内查询关键词的TOK10,划分、负载均衡、一致性哈希、先统计部分结果、修改进行hash的key(uid#1)进一步划分

2016-08-17 13:58:11

项目08-15

最痛的领悟:写算法题之前先确认需求,输入输出是什么,之后举例子,理清思路,并和面试官沟通,最后才动手写;打手,打手。。。最后一道算法题:给定一个字符数组,产生长度为n的所有字符串;用递归的思想:publicstaticArrayListmakestring(char[]str,intn){ ArrayListrst=newArrayList();

2016-08-15 16:24:14

Flume日志收集分层架构应用实践

面试时被问到flume,好久没看了,回答很不好。整理知识点时搜到这篇文章,好强大,感谢作者;时延军(包含链接:http://shiyanjun.cn)原文链接:http://shiyanjun.cn/archives/1497.htmlFlume作为一个日志收集工具,非常轻量级,基于一个个FlumeAgent,能够构建一个很复杂很强大的日志收集系统,它的灵活性和优势,主

2016-08-11 21:11:19

数据库的乐观锁与悲观锁

锁(locking)业务逻辑的实现过程中,往往需要保证数据访问的排他性。如在金融系统的日终结算处理中,我们希望针对某个cut-off时间点的数据进行处理,而不希望在结算进行过程中(可能是几秒种,也可能是几个小时),数据再发生变化。此时,我们就需要通过一些机制来保证这些数据在某个操作过程中不会被外界修改,这样的机制,在这里,也就是所谓的“锁”,

2016-08-07 22:14:22

数据库事务管理原理

好系统的一篇文章;可惜没有图片;http://www.cnphp6.com/archives/58402主题 数据库事务数据库是一个共享资源,可以提供多个用户使用。这些用户程序可以一个一个地串行执行,每个时刻只有一个用户程序运行,执行对数据库的存取,其他用户程序必须等到这个用户程序结束以后方能对数据库存取。但是如果一个用户程序涉及大量数据的输入/输出交换,则数据库系统的

2016-08-07 21:27:48

java泛型(一)、泛型的基本介绍和使用

更深入地了解泛型:感谢原文作者:http://blog.csdn.net/lonelyroamer/article/details/7864531作者还有两篇更深入的:java泛型(二)、泛型的内部原理:类型擦除以及类型擦除带来的问题java泛型(三)、通配符的使用 现在开始深入学习java的泛型了,以前一直只是在集合中简单的使用泛型,根本就不明白泛型的原

2016-08-07 15:41:07

项目08-05

T1:ZooKeeper的应用:管理集群,实现分布式锁,其他没有深入了解,ok,看书;ZK选leader的过程,投票;如果选主的过程中有一台服务器宕掉了,会发生什么?过半数投票一致leader就产生了;flume接平台数据使用了socket编程:通信的过程:server端:socket-bind-listen-accept-read/write-close,更底层的实现原理,丢数据、丢

2016-08-06 15:26:16

堆和堆排序

堆定义:二叉堆,每个节点的值大于等于他的两个子节点;采用的数据结构:数组,二叉堆层次遍历存放在数组中,通过下标找到孩子、父亲结点,2k、2k+1、k/2,保证对数级别的时间复杂度实现插入(新插入的元素放在数组尾部,逐渐上升,调整维护堆的性质)和删除最大元素(删除堆顶,调整);关键操作:Be:数组中从1开始存储元素;由下至上的堆的有序化:节点比其父节点的值大,需要交换public

2016-08-03 17:00:54

项目08-03

java泛型:容器类限定存放的对象类型,取出时不需强制类型转换,且编译时就可发现对象不匹配的错误,抛出java.lang.ClassCastException异常;可参考:http://www.cnblogs.com/lwbqqyumidi/p/3837629.html操作系统实现线程多种方式:可以在用户模式下or内核模式下实现线程,或者两者结合实现?Java中创建多线程的几种方式:继承Thr

2016-08-03 14:26:13

常用排序算法总结

选择排序基本思想:遍历数组,找到最小的元素和第一个元素(nums[0])交换。次小的和第二个元素交换,也就是每次找到未排序部分中的最小值放在适当的位置。复杂度分析:长度为N的数组,比较次数:N^2/2 交换次数:N 时间复杂度:N^2特点:运行时间和输入无关,每次都需遍历未排序部分找到最小值;数据的移动交换次数是最少的;代码:publicvoidselect_sort(int[

2016-08-02 17:18:07

查看更多

勋章 我的勋章
    暂无奖章