摘要: 1,ConcurrentHashMap 数据结构 ConcurrentHashMap 在JDK 1.8 之后数据结构和HashMap 数据结构非常相似,都是数组 + 链表/红黑树 的形式 2, ConcurrentHashMap 线程安全 ConcurrentHashMap 是线程安全的,其内部是通 阅读全文
posted @ 2019-09-24 09:23 Chris,Cai 阅读(208) 评论(0) 推荐(0) 编辑
摘要: 执行函数:CAS (V, E ,N) V表示要更新的变量 E表示预期值 N表示新值 如果V值等于E值,则将V的值设为N。若V值和E值不同,则说明已经有其他线程做了更新,则当前线程要么什么都不做,要么循环检测V与E是否一致 V表示要更新的变量 E表示预期值 N表示新值 阅读全文
posted @ 2019-09-20 15:46 Chris,Cai 阅读(177) 评论(0) 推荐(0) 编辑
摘要: 1,事务四大特性 ACID 原子性:(Atomicity):事务包含的所有操作要么全部成功,要么全部失败回滚,因此事务的操作如果成功就必须要完全应用到数据库,如果操作失败则不能对数据库有任何影响。要么全部成功,要么全部失败回滚 一致性:((Consistency) :事务执行前,事务执行后,数据库都 阅读全文
posted @ 2019-09-10 16:19 Chris,Cai 阅读(139) 评论(0) 推荐(0) 编辑
摘要: 当消费者消费消息的时候,出现错误,RabbitMQ 本身会有 阅读全文
posted @ 2019-09-10 15:56 Chris,Cai 阅读(849) 评论(0) 推荐(0) 编辑
摘要: 1,ELK 日志收集 E: Elasticsearch L: Logstash K: Kibana 为什么用Elasticsearch 来存储日志:因为Elasticsearch方便扩展,本来就是处理PB级别的数据,可以存储足够多的日志数据。 原理图大致如下: 2,为什么需要elk+kafka实现分 阅读全文
posted @ 2019-09-03 16:16 Chris,Cai 阅读(1170) 评论(0) 推荐(0) 编辑
摘要: 1,Logstash 简介 Logstash是一个开源数据收集引擎,具有实时管道功能。Logstash可以动态地将来自不同数据源的数据统一起来,并将数据标准化到你所选择的目的地。 通俗的说,就是搬运工。 2,Logstash工作原理 Logstash事件处理有三个阶段:inputs → filter 阅读全文
posted @ 2019-09-03 14:35 Chris,Cai 阅读(321) 评论(0) 推荐(0) 编辑
摘要: 1,ES 为什么要实现集群 1, 随着业务量的增大,索引逐渐增大,如果在单台ES 服务器上,由于索引所占内存过大,肯定会影响性能 2, 集群的还有一个好处就是可与备份,如果只有一个服务,挂了,整个ES 服务就挂了 2,ES 如何实现集群 在ES 实现集群中,有一个很重要的技术就是分片技术shards 阅读全文
posted @ 2019-09-03 10:07 Chris,Cai 阅读(272) 评论(0) 推荐(0) 编辑
摘要: 1,什么是分词器 分词器在ES 中,相当于字典一样,收录了很多的词。 但是,ElasticSearch 对中文的支持不是很大,默认的就是一个一个字,所以,我们需要安装插件比如IK 分词器,收录了几十万个词语。 2,默认的分词器, 中国好声音,没有一个词语,都一个个汉字 3,IK 安装 下载地址: h 阅读全文
posted @ 2019-09-02 23:24 Chris,Cai 阅读(255) 评论(0) 推荐(0) 编辑
摘要: 倒排索引 倒排表以字或词为关键字进行索引,表中关键字所对应的记录表项记录了出现这个字或词的所有文档,一个表项就是一个字表段,它记录该文档的ID和字符在该文档中出现的位置情况。 由于每个字或词对应的文档数量在动态变化,所以倒排表的建立和维护都较为复杂,但是在查询的时候由于可以一次得到查询关键字所对应的 阅读全文
posted @ 2019-09-02 23:08 Chris,Cai 阅读(292) 评论(0) 推荐(0) 编辑
摘要: 9300端口: ES节点之间通讯使用 9200端口: ES节点 和 外部 通讯使用 9300是TCP协议端口号,ES集群之间通讯端口号 9200端口号,暴露ES RESTful接口端口号 阅读全文
posted @ 2019-09-02 23:05 Chris,Cai 阅读(7463) 评论(0) 推荐(1) 编辑