- 博客(82)
- 资源 (1)
- 收藏
- 关注
原创 微服务搭建(SpringBoot + Dubbo + Nacos)
UserSeviceImpl 使用 @DubboService 注解 暴露服务。Controller中使用 @DubboReference 进行依赖注入。Application 类加 @EnableDubbo。
2025-08-30 22:18:02
508
2
原创 MAT工具是什么,具体可以分析哪些JVM内存问题,如何分析?
MAT 通过解析堆快照,将抽象的 “内存异常” 转化为具体的 “对象引用关系”,是诊断 JVM 内存问题的利器。
2025-08-24 11:32:34
849
原创 描述Java 虚拟机运行时的数据区划分(JVM 内存模型 )?
区域线程共享性主要存储内容可能的 OOM程序计数器私有字节码指令地址无虚拟机栈私有栈帧(局部变量、操作数栈等)本地方法栈私有本地方法执行信息同上Java 堆共享对象实例、数组方法区(元空间)共享类信息、常量、静态变量等OutOfMemoryError(元空间不足)理解 JVM 内存模型(运行时数据区)是分析内存泄漏、OOM 问题和 JVM 调优的基础。不同区域的内存管理机制(如堆的 GC、元空间的动态扩展)直接影响程序的性能和稳定性。
2025-08-24 01:48:39
628
原创 如何监控和管理微服务之间的调用关系
通过分布式追踪、依赖图分析、指标监控和日志关联,可实现对微服务调用关系的全链路可见性。核心是将分散的调用数据聚合、关联并可视化,从而快速定位问题、优化性能,并为服务架构调整提供数据支持。实际落地时,可根据技术栈选择合适的工具(如 Java 生态优先 SkyWalking+Prometheus,K8s 环境优先 Istio+Jaeger)。编辑分享如何选择合适的分布式追踪工具服务依赖分析的原理和方法实时监控微服务调用关系的最佳实践。
2025-08-22 12:31:04
832
原创 微服务之间的调用关系如何处理,才能防止循环依赖
订单服务(A)依赖库存服务(B),而库存服务(B)又依赖订单服务(A)查询订单状态 → 可将 “订单状态查询” 中与库存相关的部分拆分到新的 “订单快照服务”(C),让 A 和 B 都依赖 C,消除 A↔B 的循环。用户服务(上游)调用订单服务(下游)查询订单 → 订单服务若需用户信息,可通过缓存获取(用户服务更新时同步数据到缓存),而非直接调用用户服务。提取共享能力:若两个服务都依赖某部分功能,可将这部分功能拆分为独立的新服务(如用户认证服务、配置服务),让原服务都依赖这个新服务,打破闭环。
2025-08-22 12:17:21
303
原创 centos7安装jdk17
从官方网站或者其他可靠的镜像源下载 Java 17 的压缩包。我已下载好的压缩包:bellsoft-jdk17.0.14+10-linux-amd64.tar.gz。
2025-07-30 12:54:22
432
原创 ubutun 操作
sudo ufw allow 8000/tcp //指定开放8000端口的tcp协议。提供了一个用户友好的界面来配置和管理iptables防火墙。(Uncomplicated Firewall)作为其防火墙管理工具。(例如,允许SSH服务):sudo ufw allow OpenSSH。命令,帮助你管理Ubuntu的防火墙。Ubuntu 默认使用。1.查看本机端口使用情况。
2025-06-24 14:21:27
228
原创 centos7 安装 postgreSQL数据库
以上步骤应该可以帮助你在 CentOS 7 上安装、启动并登录 PostgreSQL。如果你遇到任何问题,确保检查 PostgreSQL 的日志文件,通常位于。在 CentOS 7 上安装并登录 PostgreSQL 的步骤大致如下。这里假设你已经有了 CentOS 7 系统的基础知识,包括如何使用命令行界面。首先,你需要安装 PostgreSQL。这将让你进入 PostgreSQL 的命令行界面。你可以根据需要选择不同版本的 PostgreSQL,例如。同样,确保使用正确的服务名称,例如。
2025-05-19 08:37:17
1069
原创 SpringBoot 常用注解总结
用于修饰 MVC 中 controller 层的组件,SpringBoot 中的组件扫描功能会识别到该注解,并为修饰的类实例化对象,通常与 @RequestMapping 联用,当 SpringMVC 获取到请求时会转发到指定路径的方法进行处理。在Java中,特别是在使用Spring框架时,自动注入是一种依赖注入的方式,它允许Spring容器自动将依赖项注入到组件中。可用于将Web请求路径映射到处理类的方法上,当作用于类上时,可以统一类中所有方法的路由路径,当作用于方法上时,可单独指定方法的路由路径。
2025-03-02 01:43:17
492
原创 tcp为什么要三次握手四次挥手
三次握手确保双方初始序列号被正确同步,避免数据错乱。,不能处理剩余数据。实际场景中,服务器可能需要时间处理数据后再关闭,因此通常需要四次。丢失,服务器会一直等待数据,导致资源被占用。但这是特例,协议设计需兼容最通用的情况。防止旧连接的报文干扰新连接(如延迟的报文被新连接误接收)。通过第三次握手,客户端可以判断这是否是历史连接,并发送。,需独立关闭两个方向的数据流,并处理未完成的数据传输。:确保双方数据完全传输完毕,并安全关闭连接。后,另一方可能还有数据需要发送。,继续发送剩余数据,最后再发送自己的。
2025-02-22 12:23:30
381
原创 zabbix笔记
http://192.168.124.130/zabbix/
2024-10-26 16:56:45
128
原创 https免费证书获取
注意如下出现此错误时,需要先建立snap 软连接后,再安装certbot。1. 进入你的linux系统,先安装snapd,4.建立certbot软连接。3.安装 Certbot。2. 启动snapd。
2024-05-12 00:09:47
469
1
原创 centos7 安装nacos
1、cd /lib/systemd/system ,新建nacos.service文件:vim /lib/systemd/system/nacos.service。java的安装路径底下的javac:javac: /usr/local/java/jdk1.8.0_144/bin/javac。最后执行 systemctl start nacos.service 命令,启动完成,开机自启设置成功。systemctl start nacos.service #执行nacos启动命令。
2024-04-09 07:47:40
589
原创 观察者模式
百度百科的定义:观察者模式(有时又被称为模型-视图(View)模式、源-收听者(Listener)模式或从属者模式)是软件设计模式的一种。在此种模式中,一个目标物件管理所有相依于它的观察者物件,并且在它本身的状态改变时主动发出通知。这通常透过呼叫各观察者所提供的方法来实现。此种模式通常被用来实现事件处理系统。观察者设计模式定义了对象间的一种一对多的组合关系,以便一个对象的状态发生变化时,所有依赖于...
2024-04-01 21:43:37
767
3
原创 Java项目配置文件加载顺序
1.web.xmlweb.xml 的加载顺序是:context-param -> listener -> filter -> servlet -> spring,同类型节点之间的加载顺序是根据对应 mapping 的顺序从上到下依次进行的。2.spring 配置文件...
2024-04-01 21:43:21
487
2
原创 2021-08-06
yarn的简介:Yarn是facebook发布的一款取代npm的包管理工具。yarn的特点:速度超快。 Yarn 缓存了每个下载过的包,所以再次使用时无需重复下载。 同时利用并行下载以最大化资源利用率,因此安装速度更快。 超级安全。 在执行代码之前,Yarn 会通过算法校验每个安装包的完整性。 超级可靠。 使用详细、简洁的锁文件格式和明确的安装算法,Yarn 能够保证在不同系统上无差异的工作。 yarn的安装:下载node.js,使用npm安装npm install -
2024-04-01 21:42:57
595
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人