摘要:
1.kerberos验证 a.下载对应版本JCE(Java Cryptography Extension),解压拷贝local_policy.jar/US_export_policy.jar到$JAVA_HOME//jre/lib/security b.在resource即classes路径下添加h 阅读全文
摘要:
本文先介绍下mmseg的概念和算法,再说下mmseg4j-solor的3个分词器用法 1.mmseg概念 mmseg是用于中文切词的算法,即Maximum Matching Segment,最大匹配分词。根据在词典(语料库)中的匹配情况把原文切分成一个个词语 2.两种方法 为了便于后续介绍,假设要切 阅读全文
摘要:
1.何为相关query 我通常也把相关query称为相似query,搜索日志中一个用户在短时间内的一系列搜索词被称为相关query。相关就是两个query间有一定的关系,反映了用户在当时的需求。本文就以应用搜索为背景来介绍相关query。 2.有什么作用 相关query的作用就很多了: 错词纠正:输 阅读全文
摘要:
年前总结了游戏搜索做的事情,现在把slide放出来当做这个月的作业。 1.总纲 2.架构 架构是骨骼,算法策略是灵魂,所以同等重要。一个正常的系统都可以分为三部分:线上系统接收用户请求,监控系统实时发现异常和报警,离线系统分析挖掘数据进而反馈给线上。 2.1监控和报表 监控常见的是QPS和服务延迟, 阅读全文
摘要:
1.堆内存 堆内存用于存储new对象,垃圾回收器负责堆内存的管理。但Java程序实际占用的空间则由堆内存、栈内存(程序运行栈)、程序计数器、常量区、代码区、本地内存等。 堆内存分为Young和Old,Young分为2个Survivor (From Survivor和To Survivor),1个ed 阅读全文
摘要:
服务端接收一个请求,常常需要同时进行几个计算或者向其他服务发送请求,最后拼装结果返回上游。本文就来看下JDK提供几个并行处理方案,牵涉到ExcecutorService/CompletionService。要实现的场景是请求有超时限制,如果所有操作都计算完成,则全部拼装返回;否则只拼装部分完成的结果... 阅读全文
摘要:
程序产生过程下图展示了从源代码到可运行程序的过程,正常情况下先编译(明文源码到字节码),后执行(JVM加载字节码,获得类模板,实例化,方法使用)。本文来探索下当程序已经开始执行,但在.class甚至.java还未就绪的情况下,程序如何获得指定的实现。这就是我们下面的主题,动态编译。 相关类介绍Jav... 阅读全文
摘要:
很多网站或应用会提供各样的排行榜,如热门查询、热门应用、最佳文章、论坛评论/文章列表展示等。前段时间做游戏的搜索热词就看了几篇文章,总结记录下。先介绍下流传比较广的算法,再说下我的算法。格式全乱了,还是引用老文章吧。 阅读全文
摘要:
域缓存,加载所有文档中某个特定域的值到内存,便于随机存取该域值。用途及使用场景当用户需要访问各文档中某个域的值时,IndexSearcher.doc(docId)获得Document的所有域值,但访问速度比较慢,而且只能获得Stored域的值。 FieldCache能获得域值数组,根据docId r... 阅读全文
摘要:
分布式锁客户端执行如下命令,来获取锁和释放锁。random = random()ok = (Set key random PX 2000ms NX)if (ok) { //do something if (redis->get(key) == random) { (del ... 阅读全文