- 博客(42)
- 收藏
- 关注
原创 如何使用命令行设置Java当前环境是最新版本的JDK
在Windows中,环境变量的设置顺序是有优先级的。如果 PATH 环境变量已经在系统级别或用户级别被设置,并且包含了其他Java版本的路径。那么即使你在当前会话中添加了新的路径,它也可能不会成为第一个被识别的路径
2024-12-27 00:08:06
254
原创 优雅安装多个JDK版本,丝滑手动安装成功
Windows系统中,第一个方法是通过系统属性设置环境变量的权限;第二个方法是通过命令来配置Java环境变量,可以使用setx命令
2024-12-26 23:55:19
355
原创 完美解决 org.springframework.boot.autoconfigure.cache.CacheAutoConfiguration
解决报错 org.springframework.boot.autoconfigure.cache.CacheAutoConfiguration
2024-09-03 21:53:19
545
原创 除了Synchronized和ReentrantLock外,有哪些别的同步机制
CountDownLatch,CyclicBarrier,Semaphore,StampedLock,Atomic类, Phaser
2024-08-23 19:59:07
318
原创 Llama 3 下载太慢的解决方案
没想到在Llama 3 官网下载速度太慢,下载到 70% - 90% 的时候,突然报错“失败 - 需要获得授权”不知道需要啥授权,如果需要授权,为啥不在一开始要?非要在下载快结束的时候要?
2024-08-01 15:36:36
733
原创 你知道这些鼎鼎大名的Java底层核心公司吗
它由最初的Classic VM开始,到推出崭露头角的Exact VM的虚拟机,是现代化高性能虚拟机的最初形态,如热点探测、两级即时编译器(GIT)、编译器与解释器的混合工作模式等,再到后来威震天下的HotSpot是一个目前使用范围最广的Java虚拟机,它是Oracle JDK和OpenJDK的默认JVM,是聊天时没有特殊指定时的缺省JVM。四、Azul VM:由Azul公司开发,是一个开源的JVM,是与特定硬件平台绑定、软硬件配合的专有虚拟机,专注于低延迟、高吞吐量的应用场景。它在通用硬件平台上表现出色。
2024-07-28 15:55:23
583
原创 synchronized底层原理剖析
synchronized 的实现依赖于对象头(Object Header)中的锁状态标志位和指向锁记录(Lock Record)的指针。当线程进入同步代码块时,会执行 monitorenter 指令,这将检查对象头中的锁状态标志位,如果为 false,则表示没有线程持有该对象的锁,此时线程会进入等待状态并尝试获取锁;总的来说,synchronized 的底层原理是通过对象头中的锁状态标志位和指向锁记录的指针来实现的,并且依赖于操作系统的互斥原语Mutex来保证线程安全。
2024-07-28 14:01:08
605
原创 完美解决IDEA性能优化方法解决卡顿
你是不是经常使用IDEA编写代码,运行的时候,经常卡顿,一动不动的?按照你自己电脑的内存大小。进行修改,以下内容为内存16G的参数模板。现在下面的方法可以来解决你的烦恼。
2024-07-24 20:01:02
2250
原创 解析 ThreadLocal 原理
原理是为每个线程创建独立的变量副本,从而实现线程数据的隔离。具体来说,ThreadLocal 通过一个 ThreadLocalMap来实现,这个 ThreadLocalMap 是一个自定义的哈希表,用于存储线程和对应的变量值。使用 ThreadLocal 时,每个线程都有自己的 ThreadLocal 实例,用于存储线程私有的数据。每个线程在调用 ThreadLocal 的 set 方法时,会将值放入当前线程的 ThreadLocalMap 中;ThreadLocal用于线程局部变量的一个工具类。
2024-06-28 21:32:13
173
原创 垃圾回收算法和 GC Roots 的对象
方法区中类静态属性引用的对。本地方法栈中 JNI 引用的对象。方法区中常量引用的对象。虚拟机栈中引用的对象。
2024-06-27 21:56:38
552
原创 完美解决 Invalid character found in method name. HTTP method names must be tokens
3. Tomcat的 header 缓冲区大小太小,server.xml 文件可以加上maxHttpHeaderSize="8192"1. 和网络协议有关系。检查你的请求方式是否为https,是的话,修改为http。2. SSL的证书到期了。
2024-05-13 12:33:46
6354
4
原创 【技术选型】大数据用什么架构好
1. 用 Elasticsearch 这种适用于大数据的数据库来存部分特别大的数据,既保证了原有项目技术架构不做较大改动可能引发的一系列问题,又保证了较快的时间交付。1. 采用妥协的方法:不上大数据技术,保留原有系统技术稳定性,减少采用大数据技术后,与老项目的交互、联调、测试等一系列排期。
2024-04-29 16:51:43
235
3
原创 【中间件】Tomcat 启动失败与解决方案
Tomcat启动失败,往往与Tomcat 本身的配置,IDEA 的配置,Web 应用的配置有关,需要凭经验仔细排查问题。
2024-04-29 16:05:57
871
原创 【微服务系列】BASE 分布式理论
1. 基本可用(Base Avalible):鼓励通过前期规划或预先的架构设计,尽量在分布式的系统中,把以前可能影响全平台的严重问题,变成只会影响平台中的一部分数据或者功能的非严重问题。3. 最终一致性(Eventually consistency):指系统中的所有数据副本经过一定时间后,最终能够达到一致的状态。2. 软状态(Soft state):是状态可以有一段时间不同步,存在异步的情况,而该状态不会影响系统整体可用性。应用场景:当某个服务没返回数据,通过定时任务,定时跑批,处理数据。
2024-04-19 11:35:42
305
2
原创 【技术选型】服务发现的选型:用 CP 好还是 AP 好
众所周知, CAP是分布式系统事务处理的重要理论。介绍一下,CAP是下面三个英语单词的首字母缩写:C (Consistency): 一致性A (Avalibility):可用性P (Partition Tolerance):分区容错性使用:在一个分布式系统中,最多只能满足这三个特性中的两个,而不能三个全部满足。
2024-04-19 00:48:13
1182
2
原创 【中间件】Kafka 原理解析与面试题
kafka 每秒处理几十万条消息,延迟只有几毫秒,每个topic 可分多个 partition , consumer group 对 partition 进行 consume 操作。Kafka 直接让操作系统的cache中的数据发送到网卡后传出给下游的消费者,中间跳过了两次拷贝数据的步骤,Socket缓存中仅仅会拷贝一个描述符过去,不会拷贝数据到Socket缓存。消息被持久化到本地的磁盘,并且支持数据的备份,防止数据丢失。kafka集群支持热扩展。1. 高吞吐、低延迟。3. 持久性、可靠性。
2024-04-19 00:12:50
439
3
原创 模拟调用 feign 接口 本地调试
Feign 是程序内部接口之间的调用过程,很难去模拟。注意接口是Get还是Post的,用 Postman 去模拟。
2024-04-11 13:10:31
783
2
原创 完美安装 Nginx
备注:这里启动的服务进程其实是4个进程,因为nginx进程在启动的时候,会附带一个守护进程,用于保护正式进程不被异常终止;作为web服务器,http模块是nginx最核心的一个模块,配置项也是比较多的,项目中会设置到很多的实际业务场景,需要根据硬件信息进行适当的配置,常规情况下,使用默认配置即可!worker_processes指定nginx要开启的子进程数量,运行过程中监控每个进程消耗内存(一般几M~几十M不等)根据实际情况进行调整,通常数量是CPU内核数量的整数倍。
2024-04-09 08:30:00
916
2
原创 【中间件】安装Zookeeper的步骤
则需要修改hosts 文件,vi /etc/hosts 增加一行 127.0.0.1 主机名(替换成你的主机名)127.0.0.1 xxxxx。用户名和密码 是 guest/guest。
2024-04-08 22:17:58
304
原创 完美解决 IntelliJ IEAD 升级到 2019.2.4 出现的 Bug
从IDEA的报错日志中,一步一步带你分析错误的原因,逐步解决问题。
2024-04-08 22:06:54
437
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人