首页
学习
活动
专区
工具
TVP
发布

山行AI

山行AI(原开发架构二三事),后续专注于AI应用领域
专栏作者
291
文章
644862
阅读量
57
订阅数
从头分析flink源码第六篇之ExecutionGraph的生成
上一篇中我们梳理了jobGraph提交过程中taskmanager、jobmanager、resourcemanager各组件的启动流程,本篇我们接着上一篇中的内容来分析一下从jobGraph生成ExecutionGraph的源码执行流程。
山行AI
2021-09-14
6690
从头分析flink源码第三篇之jobGraph的生成
上一篇中我们分析了一个简单的flink wordcount程序由DataStream的transformation列表转换成StreamGraph的过程,紧接着上文的步骤,本文我们着重分析一下从streamGraph生成jobGraph的过程。
山行AI
2021-07-01
1.7K1
一文读懂比BitMap有更好性能的Roaring Bitmap
1.什么是bitmap?为什么使用bitmap?Roaring bitmap与其他bitmap编码技术相比有哪些优势?2.Roaring bitmap将32位无符号整数按照高16位分容器,即最多可能有216=65536个容器(container),存储数据时,按照数据的高16位找到container(找不到就会新建一个),再将低16位放入container中。高16位又称为共享有效位,它用于索引应该到哪个容器中查找对应的数值,属于roaring bitmap的一级索引。3.Roaring bitmaps以紧凑高效的两级索引数据结构存储32位整数。高密度块使用位图存储;稀疏块使用16位整数的压缩数组。当一个块包含不超过4096个整数时,我们使用一个排好序的16位整数数组。当有超过4096个整数时,我们使用2^16 位的位图。为什么按4096作为阀值呢?仅仅是因为当数据块中的整数数量超过这个值之后,bitmap将比数组的内存使用率更高。
山行AI
2020-11-26
7.6K0
MMR算法的实现原理
MMR的全称为最大边缘相关模型(Maximal Marginal Relevance)。在MMR模型中,同时将相关性和多样性进行衡量。因此,可以方便的调节相关性和多样性的权重来满足偏向“需要相似的内容”或者偏向“需要不同方面的内容”的要求。它的数学公式如下:
山行AI
2020-11-16
5.2K0
antlr4入门篇
ANTLR实际上有两件事:一种将您的语法转换为Java(或其他目标语言)的解析器/词法分析器的工具,以及生成的解析器/词法分析器所需的运行时。即使您使用ANTLR Intellij插件或ANTLRWorks来运行ANTLR工具,生成的代码仍将需要运行时库。
山行AI
2020-08-18
4K0
docker安装hbase
docker run -d --name hbase001 -p 16010:16010 docker.io/dajobe/hbase与docker run -d --name hbase001 -P docker.io/dajobe/hbase的区别:
山行AI
2020-05-22
3.6K0
netty源码分析之EventLoop中的线程FastThreadLocalThread和队列
它继承自SingleThreadEventLoop,它的超类是SingleThreadEventExecutor。而在下面你会发现NioEventLoopGroup中维护着多个SingleThreadEventExecutor。先来看下NioEventLoop和SingleThreadEventLoop、SingleThreadEventExecutor的代码。
山行AI
2020-04-07
1.1K1
AQS源码分析之Elasticsearch BaseFuture
Java多线程编程中,常用的多线程设计模式包括:Future模式、Master-Worker模式、Guarded Suspeionsion模式、不变模式和生产者-消费者模式等
山行AI
2020-03-25
6990
Elasticsearch源码分析二之Node节点创建与启动流程分析
紧接着昨天的Bootstrap的初始化来进行开篇,对应的是org.elasticsearch.bootstrap.Bootstrap#setup方法,详见代码片段:
山行AI
2020-03-11
1K0
springcloud与hystrix整合时freemarker依赖问题分析
乍一看,是 freemarker 解析的问题,但是所有的依赖都是正常情况下处理的,没有头绪。
山行AI
2020-02-11
1.1K0
kotlin中使用myibatis-plus的lambdaQuery的问题
这里在使用时会在调用 eq 方法时报错,错误信息为"该方法仅能传入 lambda 表达式产生的合成类"
山行AI
2020-01-02
6.5K0
dubbo中使用hystrix遇到ThreadLocal变量的上下文传递时问题分析
在实际运行时,大多数情况下会出现 consumer 端放入的 traceId 和国际化变量在 provider 端取不到的情况。而且具体分析时发现,consumer 端放入 MDC 的环境变量在 consumer 端的 filter 中从 MDC 去取时都会有取不到的情况。将 HystrixFilter,MDCFilter 的顺序调换成 MDCFilter,HystrixFilter 后在 consumer 端的 filter 中去 MDC 中是能取到正确的值的,但是在 provider 端是取不到的。
山行AI
2020-01-02
3.1K0
聊一聊线程变量绑定之InheritableThreadLocal
我们继续按照分析 ThreadLocal 源码的思路来分析一下 InheritableThreadLocal 变量。
山行AI
2019-12-19
7960
聊一聊线程变量绑定之ThreadLocal
这里我们从源码角度来聊一聊 ThreadLocal 的原理。先来看一看它的属性和方法:
山行AI
2019-12-19
8680
shiro改造jwtToken模式中的坎坷二三事
org.apache.shiro.web.servlet.AbstractShiroFilter#doFilterInternal:
山行AI
2019-12-02
2.3K0
golang defer关键字的使用
在golang当中,defer代码块会在函数调用链表中增加一个函数调用。这个函数调用不是普通的函数调用,而是会在函数正常返回,也就是return之后添加一个函数调用。因此,defer通常用来释放函数内部变量。
山行AI
2019-11-21
5900
java8的ConcurrentHashMap为何放弃分段锁
和hashmap一样,在jdk1.7中ConcurrentHashMap的底层数据结构是数组加链表。和hashmap不同的是ConcurrentHashMap中存放的数据是一段段的,即由多个Segment(段)组成的。每个Segment中都有着类似于数组加链表的结构。
山行AI
2019-09-19
18.7K0
redis几种java客户端比较
目前在项目中是混用jedis和redisson的状态,使用jedis是项目前期的原因,目前需要使用redisson的一些高级特性。
山行AI
2019-09-09
20.5K0
springboot使用quartz的配置
在实例化StdSchedulerFactory的时候可以注册一个全局的监听器到Scheduler中,全局监听器会监听每一个Job和Trigger的触发事件。全局监听器必选有一个无参的构造函数,并且属性值只能是基本类型(包括String)。
山行AI
2019-08-30
8.3K0
springboot validation参数校验
其中在spring-boot-starter-web中有hibernate-validater的依赖。
山行AI
2019-08-26
3.7K0
点击加载更多
社区活动
腾讯技术创作狂欢月
“码”上创作 21 天,分 10000 元奖品池!
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档