摘要: ES是基于乐观锁进行并发控制的。 如果有并发的业务场景,可以直接使用ES内置乐观锁机制。 使用的时候,java程序需要先Get指定的记录,获取到版本号,然后Put的时候,带着该版本号,请求更新。 ES只有判断到 该记录的 version = 请求中的version值 时,才能进行更新。如果不相等,则 阅读全文
posted @ 2019-06-16 20:32 Snow~Forever 阅读(461) 评论(0) 推荐(0) 编辑
摘要: 查索引内所有文档记录 GET /beauties/my/_search GET /beauties/my/_search { "query":{ "match_all": {} } } 匹配、排序 GET /beauties/my/_search { "query": { "match": { "N 阅读全文
posted @ 2019-06-16 20:31 Snow~Forever 阅读(357) 评论(0) 推荐(0) 编辑
摘要: 文档更新原理: PUT 一条数据的时候,如果是全量替换,ES并不会覆盖原来的文档,而是新创建一个文档,并将version+1,原文档标记为deleted,不会立刻物理删除。ES会在集群的deleted文档越来越多的时候,集中把它们物理删掉,以释放空间。 阅读全文
posted @ 2019-06-16 20:30 Snow~Forever 阅读(145) 评论(0) 推荐(0) 编辑
摘要: 检查集群健康状态,可以看集群颜色。(黄色:primary shard都正常,replica不正常) GET /_cat/health?v 列出集群所有index GET /_cat/indices?v GET _cluster/health PUT一条数据:如果指定文档不存在则创建,存在则全量替换。 阅读全文
posted @ 2019-06-16 20:29 Snow~Forever 阅读(179) 评论(0) 推荐(0) 编辑
摘要: 1. 下载windbg并安装。 我下载的是 Windbg 6.12。注意,windbg分32位和64位,由分析环境的位数决定。我这里安装的是32位的。安装过程很简单,一路next就可以。 2. 准备被调试的程序。 新建一个C#控制台程序,使用如下代码。编译~ class Program { stat 阅读全文
posted @ 2019-04-12 00:06 Snow~Forever 阅读(1206) 评论(0) 推荐(1) 编辑
摘要: 这是VS2015上的bug。 我碰到的时候,是VS在合并两个分支的代码时,多加了一个}。导致编译语法报错。。 解决办法就是在错误的附近,找找有没有多余的大括号,删掉即可。 这个问题在vs2017上面没有出现。。 参考文档:https://github.com/hybridview/Configura 阅读全文
posted @ 2019-01-17 19:15 Snow~Forever 阅读(959) 评论(0) 推荐(0) 编辑
摘要: 首先解释下Timeout的作用: 比如,一个search,可能要10分钟才能搜完,那么,es就会等10分钟,直到结果出来。然而,在某些场景下,客户是等不了10分钟的。比如,淘宝搜东西的时候,客户宁可等待1秒钟,得到100条结果,也不愿意等10分钟,看到10000条结果。 所以,我们会在search上 阅读全文
posted @ 2018-12-09 23:38 Snow~Forever 阅读(1336) 评论(0) 推荐(0) 编辑
摘要: 从ES2.2升级到5.2后,原先执行put 带 consistency=all / quorum 参数的,都报错了,提示语法错误。。 百度查了一通,都没发现相关问题。无奈,还是查官方文档。。 发现这是在 5.0-alpha 发布的时候,带的feature。。贴上官方文档: 有兴趣的话,可以到Gith 阅读全文
posted @ 2018-12-09 21:53 Snow~Forever 阅读(514) 评论(0) 推荐(0) 编辑
摘要: 打开解决方案的Nuget包管理器,选择合适的版本,安装即可。版本的兼容性检查,见上一篇blog(初次使用BAT,请检查Chrome浏览器和ChromeDriver兼容性 https://www.cnblogs.com/cc299/p/9283034.html) 阅读全文
posted @ 2018-07-09 11:43 Snow~Forever 阅读(426) 评论(0) 推荐(0) 编辑
摘要: ChromeDriver可以理解为Chrome驱动,它是架在BAT程序和Chrome之间的桥梁。但是ChromeDriver的问题是,每个版本的兼容范围很窄,通常只能兼容3个Chrome版本。 因此,需要检查BAT文件夹内的ChromeDriver版本是否能兼容本机的Chrome 步骤: 1. 查看 阅读全文
posted @ 2018-07-09 11:37 Snow~Forever 阅读(1427) 评论(0) 推荐(0) 编辑