ElasticSearch API 基本操作

查看集群健康值 GET _cat/health?v 查看 node 信息 GET _nodes 查看索引信息 GET _cat/indices?v 创建索引 PUT /test?pretty 删除索引 DELETE /test?pretty 新建文档并建立索引 创建一个index为 ecommerce 的索引 PUT /ecommerce/_doc/1 { "product_id":1234, "product_name": "南极人", "price":99.9, "color":"Red", "tags":["轻松","舒服"] } PUT /ecommerce/_doc/2 { "product_id":5678, "product_name": &quo……

阅读全文

elasticsearch 集群容错

Q:有三台服务器,三个 Primary Shard怎么配置能使 ElasticSearch 达到高可用 在此之前应该先清楚 shard 、primary shard 、replica shard、node 的概念 还有 primary shard 在确定好个数后后期是无法更改的,能扩容的只有 replica shard。 三个 Primary Shard 的意思就是: 3 primary + 3 replica = 6 shard (默认情况下) 此时服务器的 node 分配如下: 一……

阅读全文

ElasticSearch 基础概念

documnet 文档,类似于 Java 的实体类,但非面向对象的,比实体类更加灵活。 index 索引,用来存放文档,一个索引可存放若干个 document type ElastcSearch 7 以后过时,使用 _doc 代替,预计在未来会移除 node 单个服务器,其实就是一个 ES 实例,多个 node 组成一个集群,node 能够进行索引和查询操作。默认每个 node 启动时会分配一个 UUID 作为标识。 shard 分片,……

阅读全文

技术选型怎么做

技术选型包括哪些 从个人观点出发,技术选型包括框架、工具、语言。 需要考虑的点 公司规模 团队技术水平 时间和成本 生态 风险 公司规模 小公司 对于初创公司或者小公司来讲,上级领导的意愿更多的是能够快速盈利,此时应该选择成熟便捷的框架, 尽量减少学习成本,这就属于经验优先,因为只有做出成品并且盈利,……

阅读全文

条件概率、全概率与贝叶斯公式

条件概率公式 设事件A 发生的概率为 P(A), 事件B 发生的概率为 P(B),则在事件B发生的情况下事件A发生的概率(A given B 的概率)为: $$ P(A|B)=\frac{P(AB)}{P(B)} $$ 全概率公式 如果直接求事件A 的概率比较困难的时候,可以将事件A发生的概率分成一个个小的事件B的概率 $$ P(A)=\sum \limits_n{P(B_{n})P(A|B_{n})} $$ 贝叶斯公式 $$ P(B_{n}|A)=\frac{P(A|B_{n})P(B_{n})}{\sum \limits_n P(A|B_{n})P(B_{n})} $$……

阅读全文

年终总结

很久没有写博客了,上一篇大概是在月初,这次算是对过去进行总结,准备迎接新的一年。 我不是很会写博客,纯粹是附庸风雅。 2018年 今年是从学校走向工作岗位的第一年,也是第一个年终总结。 学校 感谢张健全老师,今年年初带我去一个初创公司做官网,现在看自己的代码很 LOW ,但当时已经算班上很 NB 的了,……

阅读全文

迁移到 ubuntu18 的问题及配置

今天终于下定决心安装了 Ubuntu 系统,将新系统配置成自己熟悉的模式是需要很长的一段时间,更何况是双系统。下面是我遇到的问题,经过搜索与尝试并解决。 执行关机或者重启时卡死 在卡死后强制关机再启动后我去查了一下系统日志,发现是显卡驱动的问题,因为我的电脑是双显卡,一个是 Intel 的核显,另一个是 NVIDIA 的 GTX……

阅读全文

总结

有段时间没有写博客了,因为我在思考如何去写好一篇技术性文章,而不是随性所欲、天马星空似的。以前写的很多博客真的是太潦草,这就和 CSDN 那样一篇文章复制来复制去的不管什么页面样式乱了之类的,总之就是自己技术不到家,分析的深度也不过。看了会有很多感慨。只要死不了就不能停止学习新知识。 工作上……

阅读全文

使用 psi-probe 监控 Tomcat

psi-probe 是一款非常强大的开源 Tomcat 监控工具,使用时可以点击这里下载 配置用户: 在 tomcat/webapps/docs/deployer-howto.html 文档的 manager 下有说明 conf/tomcat-user.xml 1、添加用户 <role rolename="ahian"/> <role rolename="manager-gui"/> <role rolename="manager-status"/> <user username="ahian" password="123456" roles="ahian,manager-gui,manager-status"/> 2、在 conf 文件夹中新建 Catalina/localhost/manager.xml 并编辑 1 2 3 4 5 6 7 8 <?xml version="1.0" encoding="UTF-8"?> <Context privileged="true" antiResourceLocking="false" docBase="${catalina.home}/webapps/manager" > <Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="127\.0\.0\.1"/> </Context> 3、将 probe.war 包拷贝到 webapp 下,启动 tomcat 4、访问 localhost:8080/probe……

阅读全文

Tomcat 远程 Debug

JDWP 协议介绍 JDWP 是 Java Debug Wire Protocol 的缩写,它定义了调试器(debugger)和被调试的 Java 虚拟机(target vm)之间的通信协议。 详请参考此文。 远程 Tomcat 服务器配置 修改启动文件 1 vi bin/startup.sh 在启动命令中添加启动参数 jpda exec "$PRGDIR"/"$EXECTABLE" jpda start "$@" 修改 catalina 文件(主要配置) 1 vi bin/catalina.sh 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 if [ "$1" = "jpda" ] ; then if……

阅读全文