自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(70)
  • 资源 (3)
  • 收藏
  • 关注

原创 classLoader的getResource

先找父类加载器的资源,再找子类的。

2023-02-09 20:55:52 293 1

原创 Feign接口路径

查找父类接口(client)的注解。

2023-01-05 20:48:08 318

原创 RocketMq延迟队列与半消息

MessageTagHashCode被时间截止时间所填充。从下面的代码中可以看到,从ConsumerQueue中读取了offsetPy,sizePy,tagsCode,其中tagsCode就为生效的截止时间。在延迟队列中commitLogOffset/size/messagetaHashCode中。

2022-07-19 17:06:15 556

原创 rocketMq顺序消息

com.alibaba.rocketmq.client.impl.consumer.RebalanceImpl#lock

2022-07-06 14:36:00 98

原创 ES中的Get

org.elasticsearch.index.get.ShardGetService#innerGet

2022-07-05 22:35:38 721

原创 删除的流程

删除的流程

2022-07-01 11:21:33 480

原创 MLN算法

mln算法

2022-06-30 17:49:06 296

原创 Raft介绍

浅谈Raft配置变更(成员变更)策略 - 知乎前言本文参考的文献为: CONSENSUS-BRIDGING THEORY AND PRACTICE。这里所说的配置,是一个raft集群的拓扑。配置变更指的是从当前集群中增加一部分节点或者删除一部分节点。在真实的生产环境中,因为各种原因,节点…https://zhuanlan.zhihu.com/p/375059508https://github.com/dappFinance/raft-zh_cn/blob/master/raft-zh_cn.mdhttps:

2022-06-29 22:02:12 108

原创 IndexSearch

org.elasticsearch.index.engine.InternalEngine#createSearcherManager

2022-06-25 15:15:12 230

原创 树莓派舵机

STM32F407学习笔记——MG90S舵机模块(基本控制)_duoduo study的博客-CSDN博客_mg90s

2022-05-16 13:33:03 106

原创 树莓派内核编译

make:arm-linux-gnueabihf-gcc:command not found 问题解决_stupid_h的博客-CSDN博客一、背景在ubuntu环境下,进行Zynq的boot文件编译执行以下命令make distcleanmake zynq_zc706_defconfigmake出现错误:make:arm-linux-gnueabihf-gcc:command not found二、编译器安装问题 网上比较多的思路有2个: 一个是root权限问题,即使用roo...https://blog

2022-03-21 22:31:44 617

原创 linux内核如何从页中的位置转换为块设备中扇区的位置

do_mpage_readpage(struct bio *bio, struct page *page, unsigned nr_pages, sector_t *last_block_in_bio, get_block_t get_block){ struct inode *inode = page->mapping->host; const unsigned blkbits = inode->i_blkbits; const unsigned blocks_per_p.

2022-03-11 23:01:57 260

原创 处理器与linux内核之间的配合

Linux中的段

2022-02-18 11:10:44 202

原创 ThreadLocal内存泄漏

ThreadLocal以及内存泄漏 - twoheads - 博客园ThreadLocal是什么 ThreadLocal的作用是提供线程内的局部变量,这种变量在线程的生命周期内起作用,减少同一个线程内多个函数或者组件之间一些公共变量的传递的复杂度。但是如果https://www.cnblogs.com/twoheads/p/9646415.html20 技巧篇:Netty 的 FastThreadLocal 究竟比 ThreadLocal 快在哪儿?.mdhttps://learn.liangliangl.

2022-02-15 13:44:15 168

原创 Netty中套接字选项的影响

TCP_NODELAY开启本选项会禁用TCP的Nagle算法Nagle算法指出:如果某个给定的连接上有待确认的数据,那么原本应该作为用户写操作之响应的在该连接上立即发送相应小分组的行为就不会发生,直到现有数据被确认为止。SO_REUSEADDRSocket中SO_REUSEADDR详解_明潮的BLOG-CSDN博客_reuseaddr1、一般来说,一个端口释放后会等待两分钟之后才能再被使用,SO_REUSEADDR是让端口释放后立即就可以被再次使用。SO_REUSEADDR用于对TCP

2022-02-13 20:47:41 1169

原创 NETTY accept 的过程

方法

2022-02-11 20:31:32 114

原创 Epoll相关参考

深入理解NIO(四)—— epoll的实现原理 - 肥宅快乐码 - 博客园深入理解NIO(四)—— epoll的实现原理 本文链接:https://www.cnblogs.com/fatmanhappycode/p/12362423.html 终于来到最后了,万里长征只差最https://www.cnblogs.com/fatmanhappycode/p/12362423.htmlEpoll 的time_out参数引发的cpu占用问题 - 程序员大本营https://www.pianshen.com/a

2022-02-09 22:37:09 177

原创 Lucene引入NFA

参考文档:[LUCENE-10010] Should we have a NFA Query? - ASF JIRAhttps://issues.apache.org/jira/browse/LUCENE-10010什么是NFA(不确定的有穷自动机)和DFA(确定的有穷自动机) - Bubgit - 博客园本节知识点是《编译原理》第三章-词法分析,学习参考教材为清华大学出版社《编译原理》第三版: 前情提要: 字母表∑1和∑2的乘积( product): ∑1∑2 ={ab|a ∈∑1, b ...

2022-01-24 21:01:20 230

原创 Lucene中的遍历

关键类:org.apache.lucene.search.DocIdSetIterator/** * This abstract class defines methods to iterate over a set of non-decreasing doc ids. Note that * this class assumes it iterates on doc Ids, and therefore {@link #NO_MORE_DOCS} is set to {@value * #

2022-01-24 14:20:26 294

原创 lucene hnsw merge 优化

优化前hnsw在merge的时候会生成merged ordinals -> segments 和 segment ordinals. 的映射。 这种映射增加了开销org.apache.lucene.codecs.KnnVectorsWriter.VectorValuesMerger#nextDoc public int nextDoc() throws IOException { current = docIdMerger.next(); if (curre

2022-01-20 17:01:51 384

原创 Lucene合并文档的顺序

org.apache.lucene.index.MergeState#buildDocMaps private DocMap[] buildDocMaps(List<CodecReader> readers, Sort indexSort) throws IOException { if (indexSort == null) { // no index sort ... we only must map around deletions, and rebase .

2022-01-20 14:46:25 185

原创 Lucene9中的HNSW介绍及一些参考文章

一文看懂HNSW算法理论的来龙去脉_u011233351的博客-CSDN博客_hnsw算法HNSW算法----Hierarchcal Navigable Small World graphs,第一贡献者:Y.Malkov(俄)一.背景介绍 在浩渺的数据长河中做高效率相似性查找一直以来都是让人头疼的问题。比如,我在搜狗app上阅读了一篇文章,推荐系统就应当为我推送与这篇文章最相近的文章,数据库中所有文章是用向量表示的,所以我们要解决的问题就是“找到与这篇文章的向量...https://blog...

2022-01-07 16:14:04 773

原创 spring事物管理

Spring进阶篇(7)-TransactionSynchronizationManager(事务监听) - 简书JAVA && Spring && SpringBoot2.x — 学习目录 TransactionSynchronizationManager是事务同步管理器。我们可以自定...https://www.jianshu.com/p/4b5eb29cc6d9............

2021-12-24 11:26:07 442

原创 DFS 阶段做了啥

/** * Dfs phase of a search request, used to make scoring 100% accurate by collecting additional info from each shard before the query phase. * The additional information is used to better compare the scores coming from all the shards, which depend on l.

2021-12-21 11:13:30 887

原创 ES中写分片流程

org.elasticsearch.action.support.replication.TransportReplicationActionTransportReplicationAction是一个抽象类TransportReplicationAction和HandledTransportAction类似继承它的子类都会去transportService注册。 this.transportPrimaryAction = actionName + "[p]"; t

2021-12-19 19:22:06 1514

原创 ES中聚合中广度优先的实现

{ "size": 0, "aggs": { "all_speaker": { "terms": { "field": "speaker", "size": 5 }, "aggs": { "avg_speech": { "avg": { "field": "speech_number" } } } } }.

2021-12-16 23:51:39 1139

原创 ES中的收集器(百分位/基数)

org.elasticsearch.search.query.QueryPhase#executeInternal final LinkedList<QueryCollectorContext> collectors = new LinkedList<>(); // whether the chain contains a collector that filters documents boolean h.

2021-12-14 15:29:46 958

原创 鸽巢原理在lucene中的应用 MinShouldMatchSumScorer

@Overridepublic int nextDoc() throws IOException { // We are moving to the next doc ID, so scorers in 'lead' need to go in // 'tail'. If there is not enough space in 'tail', then we take the least // costly scorers and advance them. for (...

2021-12-09 19:27:47 162

原创 lucene scorer

以ReqExclScorer 为例如下: public ReqExclScorer(Scorer reqScorer, Scorer exclScorer) { super(reqScorer.weight); this.reqScorer = reqScorer; reqTwoPhaseIterator = reqScorer.twoPhaseIterator(); if (reqTwoPhaseIterator == null) { reqApprox

2021-12-07 14:13:49 294

原创 IndexSort

是否可以快速结束。 判断searchSort和indexSort是否是一致的。org.apache.lucene.search.TopFieldCollectorcanEarlyTerminate static boolean canEarlyTerminate(Sort searchSort, Sort indexSort) { final SortField[] fields1 = searchSort.getSort(); final SortField[] fields.

2021-12-01 20:18:30 142

原创 Segment读取

private IndexReaderContext build(CompositeReaderContext parent, IndexReader reader, int ord, int docBase) { if (reader instanceof LeafReader) { final LeafReader ar = (LeafReader) reader; final LeafReaderContext atomic = new LeafR...

2021-11-22 11:55:08 274

原创 Lucene中的倒排链磁盘存储 (PForDelta)

参考文档http://paperhub.s3.amazonaws.com/7558905a56f370848a04fa349dd8bb9d.pdfhttp://paperhub.s3.amazonaws.com/7558905a56f370848a04fa349dd8bb9d.pdf倒排索引PForDelta压缩算法——基本假设和霍夫曼压缩同 - bonelee - 博客园https://www.cnblogs.com/bonelee/p/6882088.html倒排索引压缩:改............

2021-11-21 15:26:26 627

原创 Java中的自动向量化(SIMD)

摘要这篇文章简单解释了向量化的目的,它是如何在Java中生效的,如何去检测它是否被应用于Java程序中。这些知识对数学计算大有帮助。 这些方式比较底层,且只适用于特殊的场景。如果你想优化你的Java程序性能。你的首选应是其他可用的优化方法。只有当您已经使用其他技术优化了Java代码,并在之后对其进行了分析,并且得出结论,专注于算术计算的部分可能会通过并行化运行得更快,那么本文可能对您有用。1.简介1.1 SIMD通常程序代码是被串行执行的。计...

2021-11-21 12:18:50 4566

原创 Lucene跳表

org.apache.lucene.codecs.MultiLevelSkipListReaderskipTo /** Skips entries to the first beyond the current whose document number is * greater than or equal to <i>target</i>. Returns the current doc count. */ public int skipTo(i.

2021-11-16 22:39:47 300

原创 TermQuery打分过程

org.apache.lucene.search.IndexSearcher protected void search(List<LeafReaderContext> leaves, Weight weight, Collector collector) throws IOException { // TODO: should we make this // threaded...? the Collector could be sync'd?

2021-11-16 14:24:48 240

原创 Aggs创建

org.elasticsearch.search.aggregations.AggregatorFactories /** * Create all aggregators so that they can be consumed with multiple * buckets. */ // 创建下层aggs public Aggregator[] createSubAggregators(SearchContext searchContext, Agg

2021-11-14 18:30:12 1990

原创 ES全局序号

TermsAggregatorFactory.doCreateInternal。//获取globalValueCount决定是否global_ordinals_low_cardinality, global_ordinals_low_cardinality中又因不是ValuesSource.Bytes.FieldData,创建global_ordinals。ValuesSource$WithOrdinals.globalMaxOrd。//通过获取一个segment的globalOrdinals,触..

2021-11-09 20:16:19 1689

原创 nested检索, 父子查询

过滤nested文档6.1前 _type 不是以"__"开头的。6.1之后根据是否存在_primary_term属性 /** * Creates a new non-nested docs query * @param indexVersionCreated the index version created since newer indices can identify a parent field more efficiently */ p.

2021-11-07 19:52:02 1034

原创 TermHash 与 Perfield关系

public PerField(int indexCreatedVersionMajor, FieldInfo fieldInfo, boolean invert) { this.indexCreatedVersionMajor = indexCreatedVersionMajor; this.fieldInfo = fieldInfo; similarity = docState.similarity; if (invert) { ...

2021-11-02 16:14:21 193

原创 nvm,nvd生成和分数计算

public void finish() throws IOException { if (fieldInfo.omitsNorms() == false) { long normValue; if (invertState.length == 0) { // the field exists in this document, but it did not have // any indexed tokens, ...

2021-11-02 13:29:20 171

Linux内核设计与实现_第三版_清晰中文版.pdf

linux内核学习的经典图书帮助你少走弯路

2014-10-26

大学生智能汽车设计PPT

额这是关于飞思卡尔智能车设计挺详细的ppt

2012-03-05

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除