青云博客 记录、分享

分布式协议Gossip

Gossip Protocol也叫Epidemic Protocol(流行病协议),还有其他名称,如流言算法、疫情传播算法等。 该协议的发布最早是在1987年8月温哥华举行的第六届ACM分布式计算原理的学术会议上,该论文介绍了几种用于分发更新并推动副本实现一致性的随机算法。该算法非常简单,几乎不需要

詹学伟 Published on 2024-04-23

解决接口幂等性的6种方法

一、什么是接口幂等性? 幂等性原本是数学上的概念,用在接口上就可以理解为:同一个接口,多次发出同一个请求,必须保证操作只执行一次。调用接口发生异常并且重复尝试时,总是会造成系统所无法承受的损失,所以必须阻止这种现象的发生。 比如下面这些情况,如果没有实现接口幂等性会有很严重的后果:支付接口,重复支付

詹学伟 Published on 2024-04-22

布隆过滤器

布隆过滤器(英语:Bloom Filter)是 1970 年由布隆提出的。它实际上是一个很长的二进制向量和一系列随机映射函数。主要用于判断一个元素是否在一个集合中。 通常我们会遇到很多要判断一个元素是否在某个集合中的业务场景,一般想到的是将集合中所有元素保存起来,然后通过比较确定。链表、树、散列表(

詹学伟 Published on 2024-04-22

JWT原理分析 & 避坑指南

为什么会有JWT的出现? 首先不得不提到一个知识叫做跨域身份验证,JWT的出现就是为了更好的解决这个问题,但是在没有JWT的时候,我们一般怎么做呢?一般使用Cookie和Session,流程大体如下所示: 用户向服务端发送用户名和密码进行验证 服务端验证之后,相关数据(如用户角色、登录时间等信息)会

詹学伟 Published on 2024-04-22

揭秘一致性Hash算法

哈喽,各位小伙伴,我是一锅炖不下的北冥 今天给大家带来的一致性hash算法。它在很多领域都有广泛的应用,比如负载均衡、分布式存储、分布式缓存等等。 那Hash算法和一致性Hash算法有什么区别呢? hash算法想必大家伙都很熟了,就是把一段任意长度的消息转成固定长度的二进制编码。而一致性Hash呢?

詹学伟 Published on 2024-04-22

ES代替品:轻量级搜索引擎MeiliSearch

谈到搜索引擎,可能大家最先想到的是Elasicsearch。Elasticsearch是一个分布式、高扩展、高实时的搜索与数据分析引擎,能够在大量的数据中搜索、分析和探索需要的数据。 数据库排名:https://db-engines.com/en/ranking 痛点

詹学伟 Published on 2024-04-22

全托管数据可视化平台,快速搭建运维监控大盘 - 北冥

针对中小型项目实现全托管数据可视化平台 环境介绍 数据来源:SpringBoot + Actuator 数据采集:Prometheus 数据展示:Grafana 监控维度

詹学伟 Published on 2024-04-22

使用 IDEA 远程 Debug 调试

背景 有时候我们需要进行远程的debug,本文研究如何进行远程debug,以及使用 IDEA 远程debug的过程中的细节。看完可以解决你的一些疑惑。 配置

詹学伟 Published on 2024-04-22

Java私有仓库Nexus搭建

1. 为什么需要搭建私有仓库? 1、有些公司都不提供外网给项目组人员,因此就不能使用maven访问远程的仓库地址,所以很有必要在局域网里找一台有外网权限的机器,搭建nexus私服,然后开发人员连到这台私服上,这样的话就可以通过这台搭建了nexus私服的电脑访问maven的远程仓库。而且自己maven

詹学伟 Published on 2024-04-22

提高生产力:这10个Lambda表达式必须掌握

使用Lambda表达式进行集合遍历 ❌ 未使用Lambda表达式: List list = Arrays.asList("apple", "banana", "orange"); for (String fruit : list) { System.out.println(fruit); }

詹学伟 Published on 2024-04-22
Previous Next