![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
面试
文章平均质量分 85
码农九珍
这个作者很懒,什么都没留下…
展开
-
从一次netty 内存泄露问题来看netty对POST请求的解析
背景最近生产环境一个基于 netty 的网关服务频繁 full gc观察内存占用,并把时间维度拉的比较长,可以看到可用内存有明显的下降趋势出现这种情况,按往常的经验,多半是内存泄露了问题定位找运维在生产环境 dump 了快照文件,一分析,果然不出所料,在一个 LinkedHashSet 里面, 放入 N 多的临时文件路径可以看到,该 LinkedHashSet 是被类 DeleteOnExitHook 所引用。DeleteOnExitHookDeleteOnExitHoo原创 2021-08-24 14:45:31 · 710 阅读 · 1 评论 -
利用注解+反射消除重复代码,你学会了吗?
我们工作一定年限(3-5年),很多同学抱怨,业务开发没有什么技术含量,用不到设计模式,平时写代码都是CRUD,要么就是API调用,平常最多写一个单例模式,其他高级特性和设计模式根本没有用武之地今天举一个在工作中很常用的例子,假设银行提供了一些 API 接口,对参数的序列化有点特殊,不使用 JSON,而是需要我们把参数依次拼在一起构成一个大字符串按照银行提供的 API 文档的顺序,把所有参数构成定长的数据,然后拼接在一起作为整个字符串。因为每一种参数都有固定长度,未达到长度时需要做填充处理字符原创 2021-08-20 19:56:49 · 171 阅读 · 0 评论 -
如何做一个逆波兰计算器
这是我参与8月更文挑战的第十三天,活动详情查看:8月更文挑战一、什么是逆波兰式(后缀表达式)逆波兰表达式又叫后缀表达式,中学时候学的那种表达式叫中缀表达式。例如,5×(6+3)÷3-1 , 3×(4÷(2+1)×2)-3例子中的这两个式子,就是中缀表达式。下面这两个就是后缀表达式:563+×3÷1- , 3421+÷2××3-二、要求1)输入一个逆波兰表达式(后缀表达式),使用栈(Stack),计算其结果2)支持小括号和多位数整数,因为这里我们主要讲的是数据结构,因此计算器进原创 2021-08-19 21:19:22 · 102 阅读 · 0 评论 -
基于AOP和HashMap原理学习,开发Mysql分库分表路由组件!
作者:小傅哥 博客:https://bugstack.cn>沉淀、分享、成长,让自己和他人都能有所收获!:smile:一、前言什么?Java 面试就像造火箭:rocket:单纯了!以前我也一直想 Java 面试就好好面试呗,嘎哈么总考一些工作中也用不到的玩意,会用Spring、MyBatis、Dubbo、MQ,把业务需求实现了不就行了!但当工作几年后,需要提升自己(要加钱)的时候,竟然开始觉得自己只是一个调用 API 攒接口的工具人。没有知识宽度...原创 2021-08-18 16:40:53 · 137 阅读 · 0 评论 -
作为有经验的程序员如果不懂Lambda表达式就说不过去了吧,建议收藏!!!
最近刚好有空给大家整理下JDK8的特性,这个在实际开发中的作用也是越来越重了,本文重点讲解下Lambda表达式Lambda表达式Lambda 表达式,也可称为闭包,它是推动 Java 8 发布的最重要新特性。Lambda 允许把函数作为一个方法的参数(函数作为参数传递进方法中)。使用 Lambda 表达式可以使代码变的更加简洁紧凑。1. 需求分析创建一个新的线程,指定线程要执行的任务public static void main(String[] args) {原创 2021-08-18 14:56:09 · 111 阅读 · 0 评论 -
不懂Ribbon原理的可以进来看看哦,分析SpringBoot自动装配完成了Ribbon哪些核心操作
前面详细的给大家介绍了SpringBoot的核心内容,有了这部分的基础支持的话,我们再来分析SpringCloud中的相关组件就很容易了,本文我们来给大家开始介绍Ribbon的相关内容,首先来介绍下Ribbon项目在启动的时候完成了哪些操作。一、项目案例准备 首先我们搭建案例环境,通过【RestTemplate】来实现服务调用,通过【Ribbon】实现客户端负载均衡操作。1.Order服务 我们的Order服务作为服务提供者。创建SpringBoot项目,并添加相关依赖..原创 2021-08-18 13:55:26 · 156 阅读 · 0 评论 -
动态规划你学会了吗?
动态规划一直被认为是最难理解的一种算法思想,什么重叠子问题、动态转移方程、最优子结构等等,一听就高深莫测,没有往下学习下去的动力。接下了我会更新一系列的文章来把动态规划这个算法思想尽量去讲明白,希望对你在以后的学习生活中提供一些帮助。没有关注的同学先点个关注吧。一、初识动态规划废话不多说,我们直接先上一个经典的例子。那就是耳熟能详的斐波那契数列问题。我们先来看一下问题的定义。斐波那契数列的定义如下: 斐波那契数列指的是这样一个数列 0,1, 1, 2, 3, 5, 8, 13, 21,原创 2021-08-13 13:23:50 · 197 阅读 · 0 评论 -
程序员在小公司捞钱,还是去大公司卷?
经常有很多读者问我大公司和小公司的程序员差别在哪?程序员能去小公司吗?大公司、小公司我都待过,今天就和大家说说我的经历,先从小公司说起。之前文章说过,我的第一份工作是在一家北京的小公司做程序员,全公司一共 6、7 个人,最开始大家都挤在一间十几平米的屋子里,到我两年后离职的时候,条件改善了,搬到了一个两居室里。公司里算上我一共 3 个程序员,其他人都是销售。销售出去接项目,程序员负责开发项目。小公司做项目,要求你啥都得干,我在公司的两年多里,我参与的几个项目都是我一个人完成的。比原创 2021-08-12 15:04:43 · 316 阅读 · 0 评论 -
Java 14 新功能介绍(细节狂魔)
Java 14 早在 2019 年 9 月就已经发布,虽然不是长久支持版本,但是也带来了不少新功能。Java 14 官方下载:https://jdk.java.net/archive/Java 14 官方文档:https://openjdk.java.net/projects/jdk/14/Java 14 新功能:305: instanceof 类型判断(预览) 343: 打包工具(孵化) 345: G1 支持 NUMA(非统一内存访问) 358: 更有用的 NullPointer..原创 2021-08-12 14:36:19 · 139 阅读 · 0 评论