一、现象springboot从2.0.2升级到 2.5.7后线上环境无法通过request.getHeader(“x-forwarded-for”)获取客户端ip地址,测试环境正常,开发环境也异常 二、结论springboot 2.5...
前言ThreadLocal能够在单个线程中传递参数,使用可以用在系统参数的传递或者在链路跟踪中传递trace相关信息,需要说明的是单单使用ThreadLocal是不会出现ThreadLocal值线程共享的,但仅仅使用ThreadLo...
condition的作用condition的使用场景其实很多,涉及到条件判断的并发场景都可以用到,比如: 阻塞队列的ArrayBlockingQueue中做队列满和空的条件判断 CyclicBarrier中做阻塞与唤醒所有线程的...
上一篇介绍了AQS独占模式的原理,参考链接AQS原理解析(一),这篇介绍一下AQS的共享模式如何实现的。 共享模式可以做什么java concurrent包中的很多阻塞类可以一次控制多个线程的挂起和唤醒,比如Semaphore、Co...
AQS是什么java concurrent包中有很多阻塞类如:ReentrantLock、ReentrantReadWriteLock、CountDownLatch、Semaphore、Synchronous、FutureTask等,...
最近在处理字符过滤,重新研究了下字符、unicode和代码点的相关知识,首先要说一下编码的基本知识unicode unicode unicode是计算机科学领域里的一项业界标准,包括字符集、编码方案等。计算机采用八比特一个字节,一个...
springCloud中最重要的就是微服务之间的调用,因为网络延迟或者调用超时会直接导致程序异常,因此超时的配置及处理就至关重要。 在开发过程中被调用的微服务打断点发现会又多次重试的情况,测试环境有的请求响应时间过长也会出现多次请求,...
做javaweb已经有一段时间,虽然算不上大牛,但也积累了一些经验,最近主导公司一个项目的架构。同时指导新人,发现了新人身上存在的一些问题。我其实还算有耐心。但他们有些问题让我很抓狂。想起我刚工作时师傅抓狂的表情,我觉得有必要给刚毕...
HashMap的原理在面试时经常问到,也有很多人分析过,自己也写一写,仅供参考,部分内容参考别人的文章 HashMap的数据结构数组和链表是最基本的数据结构,但这两个基本是两个极端 数组数组存储区间是连续的,占用内存严重,故空间复杂的...
最近的机器内存又爆满了,除了新增机器内存外,还应该好好review一下我们的代码,有很多代码编写过于随意化,这些不好的习惯或对程序语言的不了解是应该好好打压打压了。 下面是参考网络资源总结的一些在Java编程中尽可能要做到的一些地方。...