- 博客(70)
- 收藏
- 关注
原创 面向对象编程三大特性详解:封装、继承、多态
深入理解Java面向对象编程的核心思想与实现机制面向对象编程(OOP)是Java语言的基石,其核心是封装(Encapsulation)、继承(Inheritance)和多态(Polymorphism)三大特性。本文将详细解析这三大特性的概念、实现方式以及实际应用场景。
2025-06-05 11:12:49
480
原创 【Zabbix】安装并配置zabbix agent2
Zabbix Agent 2 是 Zabbix 代理的新版本,提供了更多的功能和更高效的数据采集能力。接下来,我们将安装并配置 Zabbix Agent 2。首先,我们需要确保服务器时间与标准时间同步,避免时间差异导致监控数据的不准确。工具,以便在服务器上手动测试与 Agent 的连接是否正常。安装 Zabbix 官方源,以便从中安装相关的软件包。,表示 Zabbix Agent 正常工作,连接成功。在 Zabbix Server 上,我们需要安装。
2024-12-11 16:22:52
1305
原创 【Linux】nothing provides libcrypto.so.10()(64bit) needed by zabbix-agent2-7.0.6-release1.el7.x86_64
安装zabbix agent2,报错nothing provides libcrypto.so.10()(64bit) needed by…
2024-12-11 15:21:04
847
1
原创 【Linux】openssl:error while loading shared libraries:libssl.so.3:connot open shared object file :no s
报错:openssl:error while loading shared libraries:libssl.so.3:connot open shared object file :no such file or directory。
2024-12-09 17:07:30
1062
原创 【Linux】openssl version mismatch. built against 30000010, you have 30200020
错误:openssl version mismatch. built against 30000010, you have 30200020这个错误通常是因为系统中安装了不同版本的 OpenSSL 库,导致程序在编译时使用了一个版本的 OpenSSL,而运行时却加载了另一个版本的库。根据错误信息,您的系统中 OpenSSL 版本为 3.0.7,而库中存在 3.2.24 版本的组件。通过以下步骤,您可以解决这个问题。
2024-12-09 17:00:46
2825
原创 【分布式】BASE理论
BASE理论(Basically Available, Soft state, Eventually consistent)是一个用于描述分布式系统的设计哲学和一致性模型,通常与ACID(Atomicity, Consistency, Isolation, Durability)原则对比。BASE理论出现在互联网和大规模分布式系统中,尤其是在NoSQL数据库和高可用系统中广泛应用。它的主要目的是在高可用性和性能之间做出折衷,尤其是在高延迟的网络环境中。BASE理论。
2024-11-12 16:09:45
1138
原创 【分布式】Raft原理
领导者选举:通过选举机制确保系统中始终有一个领导者来处理客户端请求,避免了多个节点竞争的复杂性。日志复制:领导者将客户端请求转化为日志条目并复制到所有跟随者,确保所有节点的日志一致性。安全性:Raft 保证了日志条目的一致性和系统的容错能力,即使节点故障或领导者发生变更,系统仍能保持一致性。选举超时:通过选举超时机制,Raft 保证了在领导者失效或网络分区时,系统能够快速选举出新的领导者,保持系统的高可用性。
2024-11-12 15:51:30
933
原创 【分布式】CAP理论
是分布式系统中的三个基本要求,但根据CAP定理,在分布式系统中,不能同时满足这三者。当网络发生分区时(网络分区通常是不可避免的),系统只能在。每个分布式系统根据具体的业务需求、使用场景和网络环境,都会做出不同的权衡和选择。,因为网络分区(如节点间通信延迟、断链等)在大规模系统中是常见的。因此,很多分布式系统需要在。在现实中,几乎所有分布式系统都会面临。CAP定理强调了在分布式系统中,
2024-11-12 15:32:21
790
原创 【Spring】本地事务
事务的隔离级别(Transaction Isolation Levels)定义了在并发执行的事务中,一个事务对其他事务的操作的可见性和影响。同一个对象内事务方法互相调用默认失败,因为绕过了代理对象。相当于b、c的事务不会生效,和a共用一个事务。
2024-11-11 17:25:06
344
原创 【JAVA】利用钉钉自定义机器人监控NACOS服务,实现实时下线通知
创建一个钉钉群,拉人创建在群设置中,选择自定义机器人记住webhook 和 accessKey,用于代码中配置。
2024-10-30 11:01:06
565
2
原创 【Linux】Shell脚本监控JAVA进程
shell脚本通过定时检査 Java 应用的运行状态、Actuator健康状况和 Nacos 服务的注册情况,并在异常时进行自动重启。
2024-10-30 09:45:32
654
原创 【MYSQL】读取未提交的数据
为了方便调试,更改隔离级别至读未提交,可以查询到未提交的数据。MYSQL默认的隔离级别是可重复读:读已提交了的数据。
2024-08-27 16:25:49
217
原创 【IDEA】一键重启多个服务
调整服务运行内存,Add VM options,填写合适的内存大小。点击Edit Configurations。选择配置好的Compound,一键重启。点击加号,选择Compound。添加需要重启的服务,保存。
2024-08-27 16:17:30
693
原创 【MYSQL】解决数据库Too many connections
也可以清理掉sleep的连接数。默认情况下,wait_timeout通常设置为8小时(28800秒),可以根据实际情况调整。查看 mysql 数据库中当前活动连接的客户端 IP 地址(去除端口部分)的数量。查看 mysql 服务器中的活动进程数量。修改 mysql 最大连接数。查看当前的连接数和连接状态。Linux登录mysql。
2024-06-21 17:21:44
578
原创 【NGINX】通过Nginx反向代理配置,从本地端口转发到远程API服务
【代码】【NGINX】通过Nginx反向代理配置,从本地端口转发到远程API服务。
2024-05-31 16:34:19
928
原创 【Stream】简化数据处理的强大工具
Stream是Java中的一个接口,它表示某种数据源的元素序列,并支持对这些元素进行聚合操作。与传统的迭代不同,Stream操作可以并行执行,提供了更高的性能。Java Stream API为处理集合提供了一种简洁且强大的工具。通过了解其基本用法和常见操作,我们可以编写出更高效和可读性更强的代码。在实际应用中,合理使用Stream可以显著提升代码的简洁性和运行性能。
2024-05-15 09:20:16
394
原创 【Linux】Centos9设置ActiveMq开机自启功能
检查 SELinux 配置:检查 SELinux 的配置是否会影响到 ActiveMQ 的执行。你可以通过运行 sestatus 命令来查看 SELinux 的状态,以及通过 /etc/selinux/config 文件来查看 SELinux 的配置。确保你检查了系统中是否还有其他安全性机制,并且了解它们是否会影响到 ActiveMQ 的执行。临时禁用 SELinux:尝试临时禁用 SELinux,然后重新启动 ActiveMQ,看看问题是否仍然存在。
2024-05-14 15:29:25
1158
原创 【JAVA】使用Map提升关联数据查询效率
获取每个Product的折扣ID,使用收集到的折扣ID列表,批量查询对应的折扣实体,将Product实体关联对应的折扣信息。
2024-02-01 15:45:07
220
原创 Parameter value [1] did not match expected type [java.lang.String (n/a)]
参数类型不对,查看参数类型是否和数据库一致。
2024-01-18 17:23:52
831
原创 【MYSQL】XAER_RMERR: Fatal error occurred in the transaction branch - check your data for consistency
报错: com.mysql.cj.jdbc.MysqlXAException: XAER_RMERR: Fatal error occurred in the transaction branch - check your data for consistency。
2023-12-04 10:30:01
2015
原创 springboot设置时区
问题:实体类Date类型,数据库使用的datetime类型,插入和查询的时间存在时差。注:实体类无需配置@JsonFormat。
2023-11-20 17:34:47
829
原创 控制循环break、return、continue
continue表示跳过当前这一次循环,执行循环之后的操作语句,进入下一次循环操作。return表示结束当前循环所在的方法,方法都结束了,循环也就结束了。观察上述程序运行结果,分析return和break的区别。注意:break之后的语句执行不了,所以不能编写。需求:从1输出到10,当迭代变量为7,就停止循环。break表示结束当前所在的循环体。需求:从1输出到10,不要输出4。
2023-09-21 11:21:20
554
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人