11 2018 档案
摘要:什么是Spark 1. 大数据计算框架 2. 离线批处理 3. 大数据体系架构图(Spark) 4. Spark包含了大数据领域常见的各种计算框架:比如Spark Core用于离线计算,Spark SQL用于交互式查询,Spark Streaming用于实时流式计算,Spark MLib用于机器学习
阅读全文
摘要:RabbitMQ集群架构模式 主备模式 1. 实现RabbitMQ的高可用集群,一般在并发和数据量不高的情况下,这种模型非常的好用且简单。主备模式也称为Warren模式 2. HaProxy配置 远程模式 1. 远程模式可以实现双活的一种模式,简称Shovel模式,所谓Shovel就是我们可以把消息
阅读全文
摘要:Rabbitmq高级整合应用 RabbitMq整合Spring AMQP实战 1. RabbitAdmin 使用RabbitTemplate的execute方法执行对应操作 rabbitAdmin.declareExchange()//声明 rabbitAdmin.declareQueue() ra
阅读全文
摘要:各种mq 1. activemq,kafka使用zookeeper做管理 2. rocketmq自己实现nameserver broke管理 AMQP核心概念 1. 高级消息队列协议 2. publisher application Server Virtual host Exchange Mess
阅读全文
摘要:需求 1. 需要实现如下效果(最终效果) 思考 1. 需求方的要求就是实现签订合同,实现方法不限,但过程中又提出需要在签章的过程中把签订日期的文字也打上去,这就有点坑了~ 2. 一开始的想法是想办法定位需要签名的位置,事实上同类app实现方式就是这样,在前端实现签名位置定位,把位置信息发给后端,后端
阅读全文
摘要:取出pdf文档文字 1. 上面的例子就可以取出第一页所有的文字,如果需要取出某些文字需要知道文字的具体方位,画个矩形就可以取出 以上代码依赖com.itextpdf.kernel 2. 取出多个位置的文字 3. 遍历pdf每个字符 之前一直以为Listen监听遍历pdf文本只能一段一段遍历,现在发现
阅读全文
摘要:使用的pom 效果图 原理 1. 通过itext中List添加固定文本 2. 添加指定标记比如★☆用以之后替换成其他文本或图片 3. 可以不用标记,反正就是算好位置 4. 至于签章这块位置的选定,根据文档最后一行位置判定,我的判定方法就是文档最后一页最后一行离尾部距离小于一定值,签章的整块内容移到新
阅读全文
摘要:需求 1. 把分布式系统,集群日志集中处理快速查询 2. 搭建ELK并与springboot日志输出结合 搭建ELK 1. 基于我前面的elasticsearch搭建博客文档docker compose.yml基础上进行添加修改 2. 新建docker compose.yml文件,内容如下 kiba
阅读全文
摘要:创建索引 1. 当我们需要确保索引被创建在适当数量的分片上,在索引数据之前设置好分析器和类型映射。 2. 手动创建索引,在请求中加入所有设置和类型映射,如下所示: 3. 你可以通过在 config/elasticsearch.yml 中添加下面的配置来防止自动创建索引。 删除索引 1. 使用以下的请
阅读全文
摘要:查询阶段 1. 在初始化查询阶段(query phase),查询被向索引中的每个分片副本(原本或副本)广播。 2. 每个分片在本地执行搜索并且建立了匹配document的优先队列(priority queue)。 优先队列 一个优先队列(priority queue is)只是一个存有前n个(top
阅读全文
摘要:ES5的变化 1. search_type=count和scan都移除了 2. count可以用size=0代替 3. scan用下面的_doc代替,按_doc 排序是经过优化的,他和scanAPI有一样的效果 4. fields参数被stroed_fields取代了,stroed_fields只返
阅读全文
摘要:排序方式 1. 相关性排序 默认情况下,结果集会按照相关性进行排序 相关性越高,排名越靠前。 相关性分值会用_score字段来给出一个浮点型的数值,所以默认情况下,结果集以_score进行倒序排列。 2. 字段值排序 使用 sort 参数进行排序: 你会发现这里有两个不同点: 3. 默认排序 指定要
阅读全文
摘要:请求体查询 1. 简单查询语句(lite)是一种有效的命令行adhoc查询。但是,如果你想要善用搜索,你必须使用请求体查询(request body search)API。 2. 空查询 我们以最简单的 search API开始,空查询将会返回索引中所有的文档。 GET /_search {} 同字
阅读全文
摘要:概念 1. 映射(mapping)机制用于进行 字段类型确认 ,将每个字段匹配为一种确定的数据类型(string, number, booleans, date等)。+ 2. 分析(analysis)机制用于进行全文文本(Full Text)的 分词 ,以建立供搜索用的反向索引。 数据类型差异 1.
阅读全文
摘要:路由文档到分片 1. 当你索引一个文档,它被存储在单独一个主分片上。Elasticsearch是如何知道文档属于哪个分片的呢?当你创建一个新文档,它是如何知道是应该存储在分片1还是分片2上的呢? 2. 进程不能是随机的,因为我们将来要检索文档。事实上,它根据一个简单的算法决定: shard = ha
阅读全文
摘要:什么是文档 1. 在Elasticsearch中,文档(document)这个术语有着特殊含义。它特指最顶层结构或者根对象(root object)序列化成的JSON数据(以唯一ID标识并存储于Elasticsearch中) 2. 文档元数据 节点| 说明 | _index| 文档存储的地方 _ty
阅读全文
摘要:空集群 1. 只有一个空节点的集群 一个节点(node)就是一个Elasticsearch实例,而一个集群(cluster)由一个或多个节点组成,它们具有相同的cluster.name,它们协同工作,分享数据和负载。当加入新的节点或者删除一个节点时, 集群就会感知到并平衡数据 。 集群中一个节点会被
阅读全文
摘要:如何超出扩容极限,以及如何提升容错性 1. primary&replica自动负载均衡,6个shared,3个primary,3个replica,随着机器扩容,会被均衡分配到多台机器上 2. 6个shared,要扩容到9台机器,增加replica shared数量,primary shared数量是
阅读全文
摘要:es的六种搜索方式 1. query string search 2. query DSL DSL:Domain Specified Language:特定领域的语言 http request body:请求体,用json格式构建查询语法 3. query filter 4. full text s
阅读全文
摘要:docker可视化界面 1. dockerUI已废弃,转投Portainer项目 2. Portainer,轻量级管理界面,基本满足中小单位需求 官方Github https://github.com/portainer/portainer 3. Kitematic:这是个桌面应用,适用于mac,l
阅读全文
摘要:需求 1. 用docker搭建一个ElasticSearch一主一从的集群,加一个elasticsearch head查看集群状态 步骤 1. 在参考了一堆博客后,我写了个固定容器ip的docker compose.yml es1.yml es2.yml docker compose.yml 遇到的
阅读全文
摘要:小知识点 1. Map有getOrDefault("1","0");取不到取默认值 2. 两个不同对象,属性相同进行赋值转换,使用modelMapper 4. controller请求中BindingResult bindingResult通过bindingResult.hasErrors()判断是
阅读全文
摘要:需求 1. 第三方传回的报文格式是xml,需要转成json进行传输 方案 1. 在尝试过xstream,org.json等包后,最后选择了json lib 2. json lib的转换会默认把头结点去掉,对我目前的项目来讲反而有利,配合fastjson转对象也很方便 步骤 1. 引入pom 2. 封
阅读全文
摘要:加入pom 1. 2. 最简单的使用方式 3. 需要指明注解 和jpa类似,取个别名
阅读全文
摘要:测试配置 测试类集成此类就可以实现读取测试的配置文件application test.properties 在application.properties中配置spring.profiles.active=dev,就可以读取application dev.properties配置文件信息,在appl
阅读全文
摘要:简介 1. consul是一个服务发现框架 2. 类似的还有zookeeper,eureka,etcd等 作用 1. 服务发现(service discovery) 2. 健康检查(health checking) 3. 配置存储管理(key/value storage) 4. 可支持任意数量的区域
阅读全文
摘要:需求 1. 我前一篇是在window环境下做的测试,实际情况现在的生成环境程序都部署在了docker环境下,此环境对arthas可能会缺失很多必要组件 2. 目前的基础环境是在docker容器中,只存在基本的tomcat容器运行的必要环境 步骤 1. 首先进入容器docker exec it xxx
阅读全文