- 博客(27)
- 收藏
- 关注
原创 Spark :: 大画Spark(1)——Spark的Dispatcher原理
背景在Spark的网络环境中,Netty是进行RPC通讯的底层通讯模块,在Netty之上,Spark构建起了一整套的通信发送与接收处理机制,这个机制涉及到了Spark的Dispatcher,MessageLoop,Endpoint,Inbox等一系列的概念和关系,理解诸如这些概念和关系是很多Spark初学者的挡路石,为了能让初学者以及一直使用Spark的同学深入了解这些概念和内容,我准备写一个专题,叫做《大画Spark》,通过一系列相视的生活中的例子,大家都能听懂的常识,以及生动的插画(这块以后准备和插画
2021-08-28 20:44:44
904
原创 生产环境踩坑系列::Hive on Spark的connection timeout 问题
起因7/16凌晨,钉钉突然收到了一条告警,一个公司所有业务部门的组织架构表的ETL过程中,数据推送到DIM层的过程中出现异常,导致任务失败。因为这个数据会影响到第二天所有大数据组对外的应用服务中组织架构基础数据,当然,我们的Pla-nB也不是吃素的,一旦出现错误,后面的权限管理模块与网关会自动配合切换前一天的最后一次成功处理到DIM中的组织架构数据,只会影响到在前一天做过组织架构变化的同事在系统上的操作,但是这个影响数量是可控的,并且我们会也有所有组织架构变化的审计数据,如果第二天这个推数的ETL修复不
2021-07-18 07:53:16
3190
2
原创 Spark源代码::Spark多线程::NettyRpcEnv.ask解读
背景Spark中有很多异步处理的例子,每一个地方都值得好好去审视一番,对辅助理解spark的机理以及为自己写出优雅的代码都会有很大的帮助。NettyRpcEnv.ask解读RpcEnv作用NettyRpcEnv是RpcEnv的在spark中的唯一一个实现。RpcEnv是什么呢,可以先看一下它的class头信息/** * An RPC environment. [[RpcEndpoint]]s need to register itself with a name to [[RpcEnv]] to
2021-06-15 18:51:47
1679
4
原创 SpringMVC代码碎片拾遗(01)_一个SpringMVC中对于领域模型绑定的不注意错误
org.springframework.beans.BeanWrapperImpl 算是SpringMVC中进行数据绑定的核心class了。类的结构很内聚,基本上实现了绑定这个动作的核心工作。要在以前,估计我也不会关心这个Class的工作原理,毕竟,一堆反射在当中调来调去各种代码写得有些难读。而最近发生了一个页面崩溃的bug,导致把这个类的一段代码读了一下下,果然很难读。。。错误是这样的:
2015-04-20 23:10:44
1533
原创 JDK8的随笔(07)_行云流水般的Lambda表达式
好久没有更新啦,继续继续。最近这个项目陷入了一个使用语言的怪圈。任何东西都想着原来的写法怎么能翻译到新的JDK 的写法。这其实就走入了歧途哇哇哇。看下面这个例子,是一个很简单的例子。一般情况下我们都会这么写这样的逻辑。 public static void main(String ... args) { List list = new ArrayList<>();
2015-04-20 01:13:21
623
原创 絮叨絮叨吧
最近小忙,一上来发现有将近一个月没有更新blog了。得抓紧时间好好总结一下,怎么也得把lambda写完后继续各个模块的推进~~现在做的这个项目本身其实不难,难在比兔子尾巴还短的期间和各方的配合。总是很奇怪不用技术问题解决技术难题到底是出于什么心态,唉~~最近那个过劳死的IT男生成为了大家的话题,英年早逝无不叹息。虽说日本的各种劳动强度也很大,但是起码是有法可依,各种保险和安
2015-04-15 00:26:27
472
原创 JDK8的随笔(06)_Aggregate聚合操作之stream的抛砖引玉
Aggregate 聚合操作嗯。项目开始小忙碌,最近一直没有更新。不能犯懒。。 JDK8中引进了Lambda表达式,Method Reference方法参照,以及default方法,static方法在interface中的使用。其实,这些也还都是铺垫,虽然说Lambda表达式的概念在JDK8没有出来的时候就开始炒作,但是我认为JDK8最引人注意的应该还是Aggregate 局和操作的引入以及
2015-03-20 00:50:24
2189
原创 JDK8的随笔(05)_Method References的种类继续啰嗦一下
Method References的种类我觉得国内的盗链以及随意的盗文的确很严重。。。有必要以后每次都写一下文章来源:blog.csdn.net/forevervip这几天本想把Method Reference赶紧收尾然后写下一个Aggregate的说明,因为Aggregate是Lambda和Method Reference的混合载体,但是一直被一个
2015-03-16 00:49:28
1013
原创 JDK8的随笔(04)_Lambda表达式扩展之Method References
Method References 方法参照本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl +
2015-03-12 23:27:28
1203
原创 JDK8的随笔(03)_Lambda表达式的变量使用范围讨论
Lambda变量使用以及使用范围概念普及 捕获变量 capture variables啥是capture variables先看一段代码的例子:public class LocalClassExample { static String regularExpression = "[^0-9]"; public static void validatePhoneNumber(
2015-03-12 16:14:40
4149
原创 JDK8的随笔(02)_Lambda表达式进一步探讨
Lambda表达式的运用尼玛,噩耗啊。项目居然要用Angular js,我擦,国内看文档都要翻墙的说。。。 对于这个也是一知半解,看来学习mode需要强势开启。。。 继续说说Lambda吧。利用泛型还拿回上一篇(link可点)的例子。interface CheckPerson { boolean test(Person p);}我们做一些改动:interface Predicate<T
2015-03-11 16:03:37
830
原创 JDK8的随笔(01)_Lambda表达式是个神马东东,初尝禁果
Lambda表达式先写写背景和最基本的东东,泛型加入和各种循环的复杂模式后面再慢慢深入。需要看JDK8的背景虽然网上的介绍很多,但是不如自己读一下document后来得正宗。 说一下缘由,突发的这个项目客户貌似是个暴发户,发疯什么都要用最新的,JDK8是否稳定也不管,各种要求最新。Lambda语法全上,各种jdk8最新的东西全往上搞,我靠。。。WS还有其他的容器是否对8的支持很好也不知道。。。。不
2015-03-10 22:30:16
1276
原创 mongoDB的读书笔记(via3.0)(05)_【Sharding】(03)_关于Shard Keys与Hash的理论知识小絮叨
紧急出个差,但是又不能不继续写,少写点,先把Shard key和Hash的一些小概念继续写一写。Shard KeysmongoDB的Sharding最重要的就是Shard Key。用Shard Key进行分片,并且按照指定的Chunk的大小进行Chunk的分割和移动(后面细说)。Shard Key的一些特点:Shard Key不可以是multikey index 何为mutikey index?途
2015-03-09 23:09:20
1053
翻译 Hadoop的读书笔记(via2.x)00_【概论】(00)_Hadoop不适合做什么,我们要学什么
看到了Hadoop的官方文档的what Hadoop is not 觉得写的很好,作为Hadoop笔记的开篇吧。Hadoop不是万金油很多人都去给apche写信询问一些关于Hadoop的问题,他们感觉Hadoop应该是能他们的程序和数据中心问题的万金油。诚然,是可以解决一些公司的特定的一些问题,这建立在他们了解这项技术到底适用于什么场景之上。如果你想当然的认为Hadoop可以代替你的数据库和文件局域
2015-03-07 21:58:11
506
原创 mongoDB的读书笔记(via3.0)(00)_【概览】(02)_mongoDB3.0中的mongod启动方式小试牛刀
mongod启动本来想写Replica的非测试模式的集群架构的,但是实在是手痒痒,把mongoDB的3.0给download下来了,看了一两眼文档后决定还是先大概写一点点关于启动的话题,之后写Replica的时候基本上就用mongoDB 3.0的方式+YAML的 配置方式来做了。mongod利用mmapv1启动这个是default的启动方式。mongod的启动参数多如牛毛,本来想有空总结一下的,我勒
2015-03-07 00:15:29
2518
原创 mongoDB的读书笔记(via3.0)(00)_【概览】(01)_mongoDB3.0的一些变化
先啰嗦啰嗦,真的没想到,mongoDB能这么快推出3.x,我的2.6的读书笔记还没有写完呢,3.0就杀到了,咋办。。。头疼中。。。看了一下3.0的介绍,我觉得还是直接上3.x的读书笔记吧,2.x的东东和3.x的比较着来,这样老的延续的东西也能温习,新的东西也可以马上知道,而且3.x的x到底到几的时候才能变成相对bug fixed版本还不知道,所以一边看着一边看bug fix过程吧。3.0的变化是从底
2015-03-06 16:20:32
1120
原创 mongoDB的读书笔记(04)_【Replica】(05)_初探Replica set副本集的搭建 By Test模式
Replica set Deployment On Test Mode为啥是测试模式实战先絮叨絮叨操作系统在一台机器上创建模拟5个节点进入非db连接模式建立5个节点的test script启动所有的节点配置节点进入一个节点配置Replica的config进行初始化check心跳和log查看Replia的详细查看Secondary Replia的详细写数据实验Prima
2015-03-06 10:47:30
1651
2
原创 mongoDB的读书笔记(05)_【Sharding】(02)_分片的一些概念和小细节
分片的一些概念与细节Primary Shard在Replica set中有Primary和Secondary的概念,那么在Sharding中其实也有一个Primary的概念。 任何一个mongoDB中都有一个未分区的整体DB的collection在某一个Shard中。如下图。 Collection1在ShardA中有一部分Chunks在ShardB中也有一部分Shards,而在ShardA
2015-03-05 22:42:14
858
翻译 mongoDB的读书笔记(05)_【Sharding】(01)_分片的简介
分片 Sharding概念解说说个题外话先,原来Shard和Sharding是两个词。。。 分片就是以复数台服务器来存储数据,来支持大数据量的存储以及高吞吐量的读写。扩充模式熟悉HDFS的人估计都对分片Sharding这个词不陌生,叫法可能各有差异,但是模式是一样的。当我们那个数据库系统大到我们的系统CPU以及硬盘以及内存支持不了的时候,我们的server就进入了服务的临界模式,到达这个状态的时候
2015-03-05 16:42:53
621
原创 mongoDB的读书笔记(04)_【Replica】(04)_Rollback、回头看看Write Concern的絮叨
mongoDB中的RollbackmongoDB没有transactionRollback是什么意思?在关系数据库中都有这个意识,也就是不commit那么就可以rollback。rollback代表一个还原,即不把真实的操作写入数据库,保持不变。。。等等。 首先需要声明一下,mongoDB的单独一个instance的操作中是没有transaction控制的,写入,那么就写进去了,update,那么
2015-03-01 23:55:44
2724
4
原创 mongoDB的读书笔记(04)_【Replica】(03)_关于选举,投票等等的啰里啰唆
从这里开始的内容相对复杂。中文看上去可能都有些乱乱的,我可以英文和中文一起看的,呕吐感更强烈了,但是本着技术上身学霸无敌的态度,强忍呕吐坚持学习。(苦笑。。。)选举 Election基本概念貌似这个词我们已经比较陌生了。。上一次选举还是在小学四年级当选中队委。。。 之前大概简述了mongoDB的Replica在运行的时候会实现高可用性,实现高可用性的一个前提就是对客户端全透明的选举制度,当然,虽然
2015-02-27 23:48:03
1833
原创 mongoDB的读书笔记(04)_【Replica】(02)_Priority 0、Hidden、Delayed Replica Set Members的相关概念
mongoDB的Priority=0,Hidden,Delayed的一些解说
2015-02-26 12:02:31
1840
原创 mongoDB的读书笔记(04)_【Replica】(01)_Replica的一些基本概念
数据库分布已经是当下互联网的标准配置。原来单节点标准配置,一台web服务器,一台数据库服务器的1+1模式,可以应对一个小公司或者少量的访问量。而随着服务的提升,对于7×24×365的高可用性的要求的需求,以及访问量的增大我们的1+1的模式早已不能满足需求,单点故障早已不允许在当下的系统中,大并发的访问也不能轻易搞死系统,那么就有了服务器的cluster,数据库的分布式,使得对于访问服务器的用户来讲使
2015-02-25 22:20:24
701
3
原创 Mongodb的读书笔记(02)
MongoDB的学习者大多来源于对Nosql这个概念的懵懂认识,从而进入了MongoDB的学习。 一般来说,我们学习一门新的语言或者一门新的技术形态,大多数的人都会考虑买一本书,然后开始阅读。这其实是一个好的习惯。但是,买书其实并不是一个很好的手段。为什么这么说呢?首先,书籍会有滞后性,我们每当买到一本中文版的技术书籍的时候,其实这本书中的内容已经老了。很多人都会拿着书籍来照着书
2015-02-11 12:17:45
515
原创 Mongodb的读书笔记(01)
最近出差做gps的数据收集分析系统。整个系统其实就是一次落地实验,从单节点架构到mongodb的运用以及Esper的使用以及后台处理bat的多线程池的运用。主要是mongodb从不知到知之之后其实还是有很多的疑问,用博客记录学习笔记和一点一滴吧。
2015-02-08 10:38:19
437
hashcode和equals
java中的Map一直是很多程序员广为使用的一种容器,关于collection以及Map之类的关系不再赘述,包括map并非collection的一个应用等等。 只是想记录一下很多人意识到但并未100%弄明白的一件事情,就是HashMap,HashTable,LinkedHashMap,中涉及到hashcode和equals的一些基本常识。 TIJ中对于这段有明确的讲解,但是可能相对专业(其实不然,...
2010-07-19 15:09:29
145
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人