- 博客(14)
- 收藏
- 关注
原创 旧服务从Eureka到双注册中心切换升级
快速实现动态服务发现、服务配置、服务元数据及流量管理,将更新替换现有服务发现功能,并升级其扩展功能,构建以“服务”为中心的现代应用架构 (例如微服务范式、云原生范式) 的服务基础设施。
2024-03-21 10:53:10
1755
1
原创 微服务Agent治理学习探索
Java 类编译之后形成字节码被 JVM 执行,在 JVM 在执行这些字节码之前获取这些字节码信息,并且通过字节码转换器对这些字节码进行修改,来完成一些额外的功能。在 JVM 启动的时候,可以通过 -javaagent:/path/to/agent.jar 的⽅式来加载 Java Agent。Java Agent 技术,能够在运⾏时动态修改 Java 字节码,动态的改变 Java 程序的⾏为,能够很。nt:/path/to/agent.jar ,从⽽实现不⽤修改镜像,就可以加载 Java Agent 了。
2024-03-21 10:42:24
2253
3
原创 mysql批量数据处理性能提升
目前商户后台、管理后台项目中有很多批处理的功能,mysql提供了一个参数rewriteBatchedStatements,代码上使用bacth处理新增和更新,实际上mysql还是会拆分为多条入库,只是减少了一层循环调用, 实际性能并未提升很大,但是官方也有提供的批量难道只是迷惑人的吗?10条数据插入性能提升1倍以上,此场景适用批量导入时数据大提升性能,也需要针对场景数据拼接SQL进行控制,尽量300条以内拆分,自行处理多个List执行Bacth。
2023-11-20 18:12:01
314
原创 接口性能测试自测场景方向
内部异步线程存在最大查询时间609ms,可以着手优化1、拆分单一职责的接口方法,如查询、校验、封装,以及数据的处理,尽可能将颗粒度细化。2、采用CompletableFuture,如果涉及到高级参数传递,需要对异步任务进行编排,使用上下流处理。3、整合List,Map的转换,使用参数上下文传递,减少内存重复处理。4、对数据使用Redis缓存,如菜品活动等信息,管理服务优先处理各种业务使用的缓存数据,减少业务服务再校验封装。
2023-10-18 18:23:47
179
原创 EasyRule的学习到实践
本篇关于对easyRule的入门级基础使用到代码实践,更多内容需要更多人的实践并研究过程中写下心得及扩展。easyRule是一种简单易用的规则引擎,适用于各种需要基于规则进行决策的场景。通过easyRule,我们可以轻松地定义规则、进行推理和执行,从而实现灵活的业务逻辑处理。本文将带领读者了解easyRule的基本概念、核心功能及其应用场景,并从基础到实践详细讲解easyRule的使用方法。
2023-09-08 15:26:16
862
原创 Redisson分布式锁
但是两者也都点到为止,只给了你操作Redis数据库的脚手架,而Redisson则是基于Redis、Lua和Netty建立起了成熟的分布式解决方案,甚至redis官方都推荐的一种工具集。但是,由于Java对象可能具有复杂的层次结构,所以需要考虑到序列化和反序列化的效率问题,并且需要考虑到序列化大小的限制。提供了一系列的分布式的Java常用对象(RSet,RMap,RList,RLock,RQueue。好锁的标准:高可用,高性能,可重入,非阻塞,自定义过期时间,防死锁,(公平锁,读写锁)// 3,尝试获取锁;
2023-09-08 14:54:33
98
原创 ES的使用进阶
分词器是es中的一个组件,通俗意义上理解,就是将一段文本按照一定的逻辑,分析成多个词语,同时对这些词语进行常规化的一种工具;ES会将text格式的字段按照分词器进行分词,并编排成倒排索引,正是因为如此,es的查询才如此之快;分词器作用StandardES默认分词器,按单词分类并进行小写处理Simple按照非字母切分,然后去除非字母并进行小写处理Stop按照停用词过滤并进行小写处理,停用词包括the、a、isWhitespace按照空格切分Language提供了30多种常见语言的分词器。
2023-09-05 11:56:39
137
原创 Git版本冲突解决(存在功能代码不想丢失)
在多人合作的项目开发过程中,尽管你每次在开发项目(或者忘记更新)前进行了更新。4、进行回滚当前本地分支到指定版本。但是写完功能后发现无法提交失败。5、拉取最新的远程分支代码。3、复制commit Id。出现以下版本冲突异常。1、备份当前本地分支。6、合并当前临时分支。
2023-09-05 11:46:42
412
原创 官方Redis视图化工具Redisinsight
RedisInsight是Redis官方出品的可视化管理工具,可用于设计、开发、优化你的Redis应用。可支持String、Hash、Set、List、JSON等多种数据类型的管理,同时支持远程使用CLI 功能,功能非常强大。为方便安装使用,目前采用docker容器安装。安装步骤:docker命令:docker seacr redisinsightdocker seacr redisinsight可安装版本如图:docker命令:docker pull redisinsight 默认最新版安装完成如图:do
2023-09-05 11:38:22
1599
原创 注册中心服务设计
所有存活的服务会形成一个hash闭环,通过计算hash进行访问服务,同此会出现hash倾斜,形成hash点分布不均匀,为解决此种弊端,进行虚拟hash对称分布,从计算hash访问到虚拟节点后重定向到真实节点。服务注册中心的本质是解耦微服务的提供者与消费者,当业务越来越繁重,就需要进行业务拆分成不同的项目维护,这时服务也越来越多时,形成众多个微小服务来进行业务的支持。4、服务消费者通过HTTP接口获取可用服务列表,该列表中包含了所有注册到服务注册中心的服务信息(包括服务提供者和注册中心的的信息)
2023-09-05 11:37:51
79
原创 Kafka原理深入解析
为什么要学习使用kafka?kafka到底能够为我们的系统来带什么?带着问题,我们才能去思考,去尝试寻找解决的方案。在解决问题的过程中才更加有兴趣去学习和使用,并深入了解其原理,从宏观的的设计上学会架构自己的业务系统。有了学习目标,我们就可以针对自己的专业方向进行深入的了解,不管是从学习搭建及管理 Kafka 线上环境,还是在业务系统中学习如何使用kafka进行有效隔离上下游业务(业务解耦,形成微服务),对上游突然增加的流量进行有序的处理(异步消息处理,防止冲击。
2023-09-05 11:36:47
123
原创 容器编排工具-Kubernetes
容器编排与容器的生命周期管理相关,特别是在大型动态环境中。软件团队用容器编排器来控制和自动化容器管理的各种任务。容器编排器可以工作在使用容器的任何环境。它可以帮助你在多个环境中部署相同的程序,而不需要重新编写它。K8s是一个最初由Google开发的,用于自动化部署、扩展和管理容器化应用的开源容器编排器技术。K8s使部署和管理微服务架构应用程序变得很简单。它通过在集群之上形成一个抽象层来实现这一点,允许开发团队平滑地部署应用程序,控制和管理应用程序对资源的使用自动负载均衡应用程序的多个实例之间请求。
2023-09-05 11:36:17
1021
国内快递公司最新编码汇总
2023-11-22
跨境电商对接相关协议企业学习
2023-11-22
机器人学习,向量矩阵算法
2023-11-22
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人