`
文章列表
1. CPU 2. Memory 3. Disk 4. IO 5. JVM http://blog.chinaunix.net/uid-24020646-id-1992032.html

面试总结

面试总结
Spark Spark streaming和storm的区别是(两者都是分布式流处理框架)http://www.jdon.com/46591 : 1.Spark支持保持状态 2.Spark有数据平滑窗口(sliding window),而后者需要自己去维护这个窗口 3.Spark是需要到一个duration才开始处理数据,storm是实时处理数据,有数据就处理。Storm只有秒内的延迟 4. 在Storm
Spring http://www.cnblogs.com/linjiqin/p/3573151.html http://wenku.baidu.com/link?url=TstWbtOELC5Y0fNfmYJr4T3Dghz0IIcXehCiWxE9NvfVlIs6UT5q6eqCczzcKIMz2pFk2GiL4obU_nOdHAtrm4jQAKUKmR3m9XhE82Z6Ipe http://wenku.baidu.com/link?url=J62r8iXdKEKnjvgrDRUeXYmhIwB45s-oTs_wByOQQwM1jv5SpO81oN-HTu1tUsWo4_MPYq ...
OI OI是一个告警系统。用flume收集OC client上传的数据,然后传到spark,spark再对数据进行分析,生成一些metrics键值对,然后发到graphite做显示,seyren定期去graphite查询metrics键值对,当某个metrics超过伐值的时候报警给分析人员,分 ...
以前遇到一个面试题,一些农民往桶里放苹果,一些农民往桶里面拿苹果,当桶达到1000个苹果的时候不能再放了,当桶的个数少于5个的时候不能再拿了。这个例子用lock和condition可以很好的解决。condition有await方法和signal方法,当调用await方法的时候,会释放当前的锁,然后将当前线程放到condition的等待队列中。当调用signal方法时,会调用将condition等待队列中的第一个线程放到sync队列中,那样那个线程就可以继续竞争锁。Condition和object的wait,notify方法的区别是,同一个锁可以有多个条件控制。而object的wait方法则不 ...
网络分层: 应用层      telnet ftp http    传输层      TCP和UDP    网络层      IP ICMP IGMP 数据链路层  设备驱动程序和接口卡    1.链路层 链路层主要有三个目的:(1)为I P模块发送和 接收I P数据报;(2 )为A R P模块发送A R P请求和接收A R P应答;(3 )为R A R P 发送R A R P请 求和接收R A R P应答。T C P / I P支持多种不同的链路层协议   环回接口:A类网络号127就是为了环回接口预留的,环回数据包一般在离开网络层的时候才返回给自己 MTU:数据链路层的 ...
为了将Oracle迁移到MySQL,过程中需要做增量数据的记录。因此想了几种方案: 1. 如果表后面有modifydate这个字段的话,就可以按照这个字段来迁移表,将在dump时间之后修改的数据做迁移 2.在需要做增量迁移的表上建trigger,将in ...
系统I/O 可分为阻塞型(BIO), 非阻塞同步型(NIO)以及非阻塞异步型(AIO).   阻塞型I/O(BIO)意味着控制权只到调用操作结束了才会回到调用者手里. 结果调用者被阻塞了, 这段时间了做不了任何其它事情. 更郁闷的是,在等待IO结果的时间里,调用者所在线程此时无法腾出手来去响应其它的请求,这真是太浪费资源了。拿read()操作来说吧, 调用此函数的代码会一直僵在此处直至它所读的socket缓存中有数据到来.   相比之下,非阻塞同步(NIO)是会立即返回控制权给调用者的。调用者不需要等等,它从调用的函数获取两种结果:要么此次调用成功进行了;要么系统返回错误标识告诉调用 ...
HashMap 非线程安全   http://frankfan915.iteye.com/admin/blogs/1151971   HashSet 非线程安全,可以存放不相同的数值,用HashMap来存储数据,当调用Put(A)时,其实是调用了HashMap的put(A,CONSTANT)方法。 http://frankfan915.iteye.com/admin/blogs/1151979   HashTable 线程安全,与HashMap的唯一区别是HashTable加了Syncronized http://frankfan915.iteye.com/admin/blog ...
ClassLoader JVM自带的类加载器可以分为三类:Boot Start ClassLoader,Ext ClassLoader, App ClassLoader. Java类的加载是通过父类依赖来加载的,如果App ClassLoader加载返回 null,则调用Ext ClassLoader加载类,如果Ext不能加载,则调用Boot Start加载。我们可以自定义ClassLoader,将代码加密,那样就可以有效的保护源代码。两个不同的ClassLoader可以加载相同Path的类,但加载的来个类不是同一个类。 http://frankfan915.iteye.com/admin ...
        Unsafe有点类似于反射, 但Unsafe速度快于反射,通过Unsafe可以拿到某个成员变量相对于类的偏移量,然后再按照偏移量拿到某个对象的这个成员变量的值 。很多锁的同步底层都是用Unsafe做的。如Unsafe的CAS http://frankfan915.iteye.com/admin/blogs/1153726           ReentrantLock ReentrantLock的特点是 1.它可以被重入,获得锁的线程可以反复获得锁,锁的次数会增加,释放的时候也需要释放相应的次数才能完全释放当前锁(Syncronized也是可以重入的) 2. Lo ...
Policy Analysis 项目的框架:Mysql和Derby做数据的存储,FreeMarker做web页面表单的验证,Guava缓存器做policy的缓存,groovy让用户扩展验证逻辑 项目的难点: 下载任务并发的处理,日志的分发,并行处理 遇到的问题:因为一个用户 ...
有大半年时间在做大数据分析,主要产品为OI。 OI 用到了flume,spark,graphite。学习了大数据的开发。 优点:flume,spark源代码的学习,performance调优   OI 项目的框架:用flume做数据收集,spark做数据分析,graphite做数据显示,seyren做告警系统 项目的难点:spark和flume的框架的学习,performance的调优 遇到的问题: 1.这个问题整个小组研究了大半个月左右,一开始以为是scala 中list代码的问题,scala的某一版本中list的序列化是会按照列表成员的个数做递归调用的。后来发现用的不是那 ...
选举的算法可以参考:http://blog.csdn.net/xhh198781/article/details/10949697   假设配置中有两个server server.1=localhost:2888:3888 server.2=localhost:2889:3888   由前文可以,zookeeper在选举leader之前会先调用下面的代码,首先设置currentVote为myid,即一开始会选举自己为leader。如果electionType = 0,myid=1, Responder线程将监听在2888这个UDP端口上,处理其他节点的请求。 synchro ...
Global site tag (gtag.js) - Google Analytics