
简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
上一讲我们对 Nacos 的集群环境与实现原理进行了讲解,我们已经可以轻松将单个微服务接入到 Nacos 进行注册,但是微服务本不是孤岛,如何实现有效的服务间稳定通信是本文即将介绍的主要内容,本次我们将主要学习三方面知识:介绍 Ribbon 负载均衡器;讲解 Ribbon+RestTemplate 两种实现方式;讲解 Ribbon 的负载均衡策略。Ribbon 负载均衡器在介绍 Ribbon 之前
查询建议,为用户提供良好的使用体验。主要包括: 拼写检查;自动建议查询词(自动补全)拼写检查如图:: 对给入的文本进行分词,为每个词进行模糊查询提供词项建议,并不会考虑多个term/词组之间的关系。。API调用方只需为每个token挑选options里的词,组合在一起返回给用户前端即可,在Term Suggester的基础上,会考量多个term之间的关系,比如是否同时出现在索引的原文里,相邻程度,

聚合分析是数据库中重要的功能特性,完成对一个查询的数据集中数据的聚合计算,如:找出某字段(或计算表达式的结果)的最大值、最小值,计算和、平均值等。ES 作为搜索引擎兼数据库,同样提供了强大的聚合分析能力。对一个数据集求最大、最小、和、平均值等指标的聚合,在 ES 中称为指标聚合metric而关系型数据库中除了有聚合函数外,还可以对查询出的数据进行分组 group by,再在组上进行指标聚合。在 E

数据库的死锁是指不同的事务在获取资源时相互等待,导致无法继续执行的情况。MySQL中可能发生死锁的情况包括事务同时更新多个表、事务嵌套、索引顺序不一致以及不同事务同时更新相同的索引等。

框架层,驱动层,代理层,在过去很长一段时间里,有无数的互联网公司前赴后继的试水,从 TDDL、Cobar,到 MyCat、ShardingSphere,各种层面的中间件也是层出不穷。很长时间以来,国内互联网的做法普遍是采用加入一个中间件的方式来解决,但随着分布式数据库的技术越来越成熟,这些魔法逐渐下沉到它本应该解决的层面–数据库实现层。当你的业务有了常年累积的复杂数据,你可能会采用复杂的分库分表组

在上篇文章《》中讲了当微服务突然挂掉的解放方案调整健康检查周期和故障请求重试。朋友看了文章,建议再聊聊正常关闭服务时如何让微服务优雅下线。为什么说是优雅下线?我们知道在分布式应用中为了满足CAP原则中的A(可用性),像Nacos、Eureka等注册中心的客户端都会进行实例列表的缓存。当正常关闭应用时,虽然可以主动调用注册中心进行注销,但这些客户端缓存的实例列表还是要等一段时间才会失效。...
综上,实际使用中,常常根据自身系统特征选择。比如:执行效率、数据量、安全合规要求等,这里给出上述简易版整理。加密算法名称有效长度特性是否加密解密优点缺点MD5MD5 散列算法128 位散列函数不可逆速度快,简单安全性低,易受碰撞攻击AESAES 加密算法128/192/256 位对称加密是安全性高,效率高无严重弱点DESDES 加密算法56 位对称加密是速度快,曾广泛使用密钥短,安全性低国密 SM

场景:当我们接收到一些数据需要对其进行处理时,由于它们来自于不同的渠道(如:腾讯,头条),不同渠道所需的处理方式不同,下面我们写一个简单Demo来实现该的场景。解决思路1、首先构建一个 GeneralChannelRule 基础规则抽象类,定义一个抽象方法process(),不同的渠道都需要实现该抽象方法。public abstract class GeneralChannelRule {publ
平时跟RD排查问题,经常会遇到数据库连接池相关的问题,比如获取不到连接、抛异常、长时间占用无法归还、探活、性能开销等。发现不少同学对连接池仍停留在表层的一知半解,很多配置也是相互复制的,基于此,本文整理了。当我们有了连接池,应用程序启动时就预先建立多个数据库连接对象,然后将连接对象保存到连接池中。新建连接和关闭连接,操作较重,费时费力,也影响了业务请求。功能,连接从连接池借出后,长时间不归还,将触

项目 modules 结构如下。








