- 博客(22)
- 收藏
- 关注
原创 Netty知识点(1):实现UDP单播
(3)由于UDP是不保证传输完整以及安全,或者正确,重点在意效率,不需要关注接收端是否有收到报文,所以接收端能否能收到数据,是依据接收是否有回复应答报文进行判断,所以设置等待时间进行接收(阻塞),等待时间过后关闭信道,不论是否有应答。注意应答端消息处理类,由于是UDP通信,那么要进行应答回去,则需要源端口号进行通信,所以在回复消息时候需要调用packet.sender()进行获取源发送端口号,以便回复消息。由于UDP无接受端这一说,没有建立连接,所以是发送端和接收端关系,是平等的。
2025-05-15 08:29:38
122
原创 RPC远程调用服务框架实现与使用
RPC远程调用服务框架是一种用于实现分布式系统中不同节点之间进行通信和远程过程调用的技术框架。其允许程序在不同的地址空间(不同服务器)中调用远程函数或方法,就像在本地调用一样,而无需了解底层的网络细节和通信机制。前置条件(可能存在的坑):在虚拟机服务器中配置相关zookeeper,且保证可以启动,其中zookeeper可能存在连接不上,注意可能是防火墙问题也可能是telnet未开问题。其zookeeper与相关RMI结合其实就是二者代码结合。
2025-05-14 09:07:35
310
原创 【spring项目坑】启动主类失败,找不到主类
解决办法:确认该类是否成功编译并存在于 target/classes(Maven)或 build/classes(Gradle)目录中。3)检查 Main class 是否为 com.action.business.ActionBusinessApplication。如果不在就进行maven的clean操作,然后complie进行重构,再次检查target目录看是否有对应启动类。4)确认 Module 选择的是包含该类的模块。1)点击 IDEA 右上角的运行配置下拉菜单。(3)在IDEA中运行是配置错误。
2025-04-24 09:38:53
152
原创 【函数式编程】Lambda表达式基本概念与使用方法介绍
但是注意,在使用lambda表达式时候仅仅是将相关接口函数进行从重写,但是并没有对其进行调用赋值,所以真正调用方法需要在进行lambda函数重写后进行。执行流程:实现接口,重写接口方法,将对应字节码写出,再创建字节码或者子类实例,再赋值给函数如Consumer函数,创建实例,就实现具体函数体。,编译器自行推断【因为当前函数是依据一个接口进行工作,所以接口中是有相关的返回类型等,所以可以进行自行推断,这个接口叫为函数式接口】抽象方法只能有一个,但是实际可以在接口中,接口中函数进行重写,本质也是一个函数。
2025-04-19 16:25:42
271
原创 【项目常用实战】(一)项目中字符串操作,以及字符串工具类StringUtils使用
这是一个java中实际项目下字符串相关操作以及字符串工具类的知识点总结,包含样例与代码
2025-04-13 13:26:44
319
原创 【springcloud踩坑】出现未找到主类,无法启动问题
如果还是无法解决可能存在java环境变量等配置错误 ,如配置的java版本不符合等。(1)首先查看当前application启动类是否在当前所需覆盖文件下。如果在idea中进行,则使用clear和comple进行重新打包。
2025-04-07 09:43:23
165
原创 【三高微服务踩坑篇】Load balancer does not contain an instance for the service shop-products
这个是我注册对应的服务名称,实际nacos中对应名称是这个。
2025-04-03 16:07:12
212
原创 【微服务三高项目:报错记录】测试接口时候,出现报错Error creating bean with name 。。。
(3)可能存在目标类没有编译到target中,可以先进行maven依赖清除(clean),后再重新构建(compile)(1)springboot版本与springcloud版本不相匹配,导致无法加载。(2)查看是否是相关mybatis中配置,或者所写的mapper层的xml中对应数据不太正确。尤其是重点检查mapper引用路径与实际设置路径是否相同。重点检查这个报错最后一个问题!
2025-04-02 11:51:15
271
原创 【Lua基础知识】Lua基础应用知识
注意:如果一个对象为nil,那么使用type(变量)得到的是一个字符串’nil’而不是nil这个类型,所以 type(变量)==nil 答案是 false。Print(k..”-”..v) //其中两个点’..‘相当于’+’,用于连接字符串或者变量。Table1 = {key1=”value1”,key2=”value2”} //table定义。For k,v in paris(table1) do //table类型变量的遍历。A=nil //即可销毁一个变量。
2025-03-31 23:22:23
145
原创 【Nginx高可用】使用keepalived实现基础主从服务器
如何实现高可用,我们就要先了解高可用是什么?实现高可用,目的就是为了让我们能够在主服务器等服务器宕机时候,我们仍旧可以进行访问,最常见例子就是百度,能够做到99.99%的高可用性,即在100个工作单位时间内有效时间是99.99个。
2025-03-29 21:49:54
302
原创 【Nginx配置】如何做到虚拟机Nginx与本地服务做NAT端口转发,以及虚拟机内部相关端口映射
(1)首先我们进行nginx中http块的server编写,配置所监听的服务名称www.cpf.com,与监听的本地虚拟机端口80,映射到虚拟机中的具体服务端口localhost:8080。(2)我们要在VMware中虚拟网络进行配置,做端口转发,将我们本地所访问的端口2080与虚拟机中80端口做对应,以达到我们本地浏览器请求2080端口时候,其请求转发到虚拟机中80端口,以达到对虚拟机内部某个端口的访问。想做到能让Nginx进行监听端口访问活动并跳转,首先需要进行Nginx的配置文件的修改。
2025-03-27 21:08:31
362
原创 【Nginx安装踩坑】Nginx已经安装完毕,也做了NAT端口转发,但是本地无法访问
我遇到这个问题是因为防火墙没有关闭,可以使用systemctl status firewalld进行查看当前虚拟机防火墙是否在运行。使用systemctl stop firewalld,当再次查看变为dead状态即可。
2025-03-26 21:34:28
178
原创 【安装篇】Nginx在centos-7上安装以及使用
进行NAT设置后添加具体端口转发,后即可使用本地访问虚拟机nginx。后进行相对应的nginx网络配置,以实现NAT端口转发。进入虚拟机网络配置页面,我是VMware。安装完成后,进行相应的nginx配置。完成上述步骤后便可进行安装nginx。首先检查当前虚拟机是否安装yum。
2025-03-26 21:30:06
210
原创 【docker安装踩坑】出现mysql镜像安装,但是无法启动容器问题
使用docker ps查看当前容器启动,会发现其已经退出,处于exited状态,启动后依旧自动退出。在docker run时额外加上参数 --privileged问题解决,官网的解释是给容器额外的权限,看来还是权限不足的问题引起的。后发现docker ps时候,mysql镜像运行了。后重新进行启动mysql的容器。
2025-03-26 20:47:14
135
原创 【虚拟机踩坑】突然发现虚拟机重启后链接不上网络,ping 不通过8.8.8.8,但是网络配置完好,解决如下
我的问题是虚拟机网络服务未开启导致虚拟机联不通网络,解决办法将VM NAT SERVICE开启即可,如果需要自动分配ip还需要将VMnetDHCP开启。
2025-03-24 14:41:17
192
原创 【java项目坑】seata 遇到service.vgroupMapping.default_tx_group configuration item is required问题
在整体项目进行测试部署时候,发现问题出现。定义后如下,即可解决问题。
2025-03-18 19:23:29
563
原创 JAVA基础问题、面试题(7) Spring常见问题(1)
面向切面编程(AOP)是一种编程范式,旨在通过将横切关注点(例如日志记录、事务管理、安全性等)与业务逻辑分离来提高代码的模块化。AOP是OOP(面向对象编程)的一个补充,
2024-11-02 00:21:07
637
原创 JAVA基础问题,面试题(6)
1.一般队列只能保证作为一个有限长度的缓冲区,如果超出缓冲长度,就无法保留当前任务,阻塞队列通过阻塞可以保留住当时想要继续入队的任务。阻塞队列可以保证任务队列中没有任务时候阻塞获取任务的线程,使得线程进入wait状态,释放cpu资源。有阻塞队列技术可以使得当前无任务执行的线程自动进入阻塞状态,而不需要程序员手动调用wait或者sleep等控制线程休眠阻塞队列自带阻塞和唤醒功能,不需要额外处理,无任务执行时候,线程池利用阻塞队列的take方法挂起,从而维持核心线程存活,不至于一直占用cpu资源。2.
2024-10-29 23:39:12
1176
原创 23个设计模式:单例模式
单例模式的核心是类内部实现对自身实例的唯一性和对这个实例的全局访问。通常,单例类会将其构造函数设为私有,防止外部实例化,且提供一个静态方法或属性作为全局访问点。当需要使用时候才进行实例化。(相对于饿汉式可以节约节约内存,提升加载速度,同时也要进行线程安全约束)在类变量创建时候便实例化。
2024-10-24 23:32:10
132
原创 JAVA基础,面试题(3)
JDK自带三个类加载器:bootstrap ClassLoader,ExtClassLoader,AppClassLoader。(1)BootstrapClassLoader(顶层加载器)是ExtClassLoader的父类加载器,默认负责加载%JAVA——HOME%lib下的jar包和class文件。(2)ExtClassLoader(扩展类加载器)是AppClassLoader的父类加载器,负责加载%JAVA_HOME%lib/ext文件夹下的jar包和class类。(3)AppClassLoader
2024-10-19 00:43:02
1626
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人