【Java】
文章平均质量分 69
CBeann
阿里淘天Java开发工程师,CSDN博客专家,阿里云博客专家,专注于后端技术的分享。如果你迷茫,不妨来瞅瞅码农的轨迹。模拟面试简历辅导、内推加VX:CHAI956056312
展开
-
Java中9种常见的CMS GC问题分析与解决【转载】
Java中9种常见的CMS GC问题分析与解决转载 2023-07-23 14:04:07 · 147 阅读 · 0 评论 -
重试工具:Guava Retryer【转载】
重试工具:Guava Retryer转载 2023-07-16 10:31:01 · 110 阅读 · 0 评论 -
有过JVM调优经验吗【面试题】
有过JVM调优经验吗?有,然后让面试官无话可说原创 2023-07-09 14:10:52 · 509 阅读 · 9 评论 -
easy-rules规则引擎最佳落地实践
easy-rule规则引擎最佳落地原创 2022-11-26 16:06:07 · 2933 阅读 · 11 评论 -
分布式主键生成设计策略
常见的分布式主键生成策略原创 2022-09-24 21:57:15 · 2979 阅读 · 9 评论 -
短URL服务的设计以及实现
短地址与长地址原创 2022-08-21 16:34:41 · 1218 阅读 · 9 评论 -
多大数量级会出现哈希碰撞
多大数据量会出现哈希碰撞原创 2022-07-31 22:34:34 · 418 阅读 · 0 评论 -
IDEA远程debug调试设置
IDEA远程debug调试设置原创 2022-07-06 23:42:04 · 4139 阅读 · 11 评论 -
Java服务CPU100%异常排查实践总结
最近看牛客网发现了CPU 100% 怎么办这个问题,这个问题的重点是定位和解决,会用到Linux和java的的很多命令,所以写篇博客记录和总结一下。原创 2022-05-28 09:58:23 · 2605 阅读 · 3 评论 -
Postman 导入curl 、导出成curl、导出成对应语言代码【转载】
https://blog.csdn.net/qq_41767116/article/details/121463916转载 2022-04-29 17:55:35 · 367 阅读 · 0 评论 -
Skywalking的安装与使用
什么是SkywalkingSkywalking是apache基金会下面的一个开源APM项目,为微服务架构和云原生架构系统设计。它通过探针自动收集所需的指标,并进行分布式追踪。通过这些调用链路以及指标,Skywalking APM会感知应用间关系和服务间关系,并进行响应的指标统计。Skywalking支持链路追踪和监控应用组件基本涵盖主流框架和容器,如国产RPC Dubbo和motan等,国际化的spring boot,spring cloud。Skywalking提供分布式链路追踪、服务网格(Servi原创 2022-04-02 11:39:41 · 4211 阅读 · 3 评论 -
一个try-catch问出这么多花样【面试题】
源码下面代码的返回结果是1不是2,下面从字节码的角度分析一下原因public class Start { public static void main(String[] args) { int demo = demo(); System.out.println(demo); } public static int demo() { int x = 1; try { return x; } finally { x = 2;原创 2022-02-22 12:02:38 · 471 阅读 · 0 评论 -
OOM排查小案例
写作目的排查过某OOM问题吗?额。。。没有参考https://www.cnblogs.com/jiyukai/p/9292348.htmlhttps://blog.csdn.net/yinni11/article/details/82463844原创 2021-08-15 13:15:15 · 209 阅读 · 2 评论 -
谈一谈你对VOLIDATE关键字的理解【转载】
https://www.freesion.com/article/98331106579/转载 2021-07-15 19:24:08 · 140 阅读 · 0 评论 -
java实现无锁队列
okimport java.util.Random;import java.util.concurrent.ExecutorService;import java.util.concurrent.Executors;import java.util.concurrent.TimeUnit;import java.util.concurrent.atomic.AtomicInteger;import java.util.concurrent.atomic.AtomicReference;/原创 2021-06-23 21:04:49 · 1272 阅读 · 0 评论 -
详解 HashMap 中的 Hash 算法(扰动函数)【转载】
https://zhangzw.com/posts/20190925.html转载 2021-06-04 21:17:56 · 725 阅读 · 0 评论 -
场景分析:订餐下单流程分析
写作背景 毕业答辩季,又到了学妹和学长沟通感情的时候,闲聊的时候,发现xue需求背景原创 2021-05-28 17:54:26 · 657 阅读 · 0 评论 -
Spring AOP中JDK和CGLIB动态代理哪个更快?【转载】
https://www.cnblogs.com/technologykai/articles/10966087.html转载 2021-05-28 14:28:05 · 196 阅读 · 0 评论 -
RateLimiter源码分析
源码分析 源码分析有两种,一种是把源码核心的地方打上注释,一种是写一个Demo,走到哪分析到哪,我是后者。原创 2021-05-20 22:03:19 · 824 阅读 · 0 评论 -
走过的坑-Java开发
1不要在docker里存数据 千万不要在docker里装mysql,因为docker容器停了以后,里面的数据就没有了,即使有一些操作可以使得docker映射到操作系统上,但是还是十分不建议用docker存数据、日志等,因为你能保证你就配置的没问题吗。2不要在MySql中做复杂的逻辑 举一个很简单的例子,有一张站点表和站点日志表,查询站点的报道率(某站点日志表中某字段不为空的数量/某时间段的总数量),其实这个逻辑在MySQL中可以做,在Java的业务层也可以做,这个时候我推荐在Java的业...原创 2021-04-04 21:48:04 · 451 阅读 · 12 评论 -
内存溢出+CPU占用过高:问题排查+解决方案+复盘(超详细分析教程)【转载】
https://zhanghan.blog.csdn.net/article/details/109255980转载 2021-03-22 19:33:08 · 675 阅读 · 0 评论 -
Mac Idea 启动SpringBoot时间很长的解决方案[转载]
亲测有效https://blog.csdn.net/u012190514/article/details/103009938注意:没有写权限 + sudo原创 2021-03-09 13:30:24 · 469 阅读 · 0 评论 -
手写红黑树笔记
写这篇文章的目的1)心血来潮,你信吗2)红黑树确实很重要,并且在这个也是经常问的题。代码下载https://github.com/cbeann/Demooo/tree/master/java-demoo/src/main/java/myredblacktree红黑树难点红黑树性质每一个节点要么是黑色,要么是红色的。 根节点是黑色。 叶子节点(Null)是黑色。 每一个红色节点的两个子节点一定都是黑色。不能有两个红色节点相连。 任意一个节点到每一个叶子节点的路径都包含相同的原创 2021-01-03 21:12:36 · 335 阅读 · 0 评论 -
Java中数字的进制前缀
二进制的前缀为 0b八进制的前缀为 0十进制的前缀为 十六进制的前缀为 0xclass Solution { public static void main(String[] args) { Solution solution = new Solution(); solution.print(0b11); // 二进制 3 solution.print(011); // 八进制 9 solution.print(11);...原创 2020-11-24 09:53:25 · 1866 阅读 · 0 评论 -
jar包反编译,查看源代码【转载】
亲测有效https://blog.csdn.net/neverstopforcode/article/details/80913324转载 2020-10-15 21:15:31 · 1908 阅读 · 0 评论 -
强、软、弱、虚引用
强引用99%中都是强引用Object obj=new Object();软引用弱引用虚引用原创 2020-09-16 16:04:34 · 172 阅读 · 0 评论 -
在IDEA中使用Docker部署SpringBoot项目
Docker安装及使用https://blog.csdn.net/qq_37171353/article/details/94216641原创 2020-09-08 20:53:24 · 1934 阅读 · 0 评论 -
tomcat系统架构笔记
笔记EndPoint:接收socket请求并且封装成socketWrapper,并且把socketWrapper传递给Http11ProcessorProcessor:以Http11Processor为例,把socketWrapper转化为org.apache.coyote.Request和Respone,传递给CoyoteAdapterAdaptor:以CoyoteAdapter为例,把传入的org.apache.coyote包下的Request和Respone转化为我们熟悉的Reques原创 2020-08-08 22:27:04 · 139 阅读 · 0 评论 -
权限系统设计【转载】
https://www.jianshu.com/p/ddfa692d78e6转载 2020-05-13 00:19:00 · 151 阅读 · 0 评论 -
Gitlab配置webhook监听其他分支merge到主分支
想法的来源 某大佬让我实现gitlab的webhook,监听到其它分支合并到mater分支后给DY发邮件。我做过用 push 到 github触发jenkins实现自动部署,但是那个时候就是自己玩,不用考虑分支和其它。其实一旦扯到分支上,其实我个人感觉就难了。但是,还是要干的。思路(1)自信满满一开始我想简单啊,在项目里的URL添加自己阿里云的一个sout接口,选择Merge requet events,点击Add webhook。如下图所示,这不就OK了吗?因为我自己没事整...原创 2020-06-20 00:37:55 · 6346 阅读 · 1 评论 -
LocalDateTime、Date时间工具类
LocalDateTime工具类方式1这种官方的工具类挺不错,就是要看文档找,推荐这种工具包 <dependency> <groupId>cn.hutool</groupId> <artifactId>hutool-all</artifactId> <version>5.2.3</version> </dependen原创 2020-06-04 17:26:36 · 3608 阅读 · 0 评论 -
Jenkins的简单使用【图文并茂】
需求在window上写完代码后pull到github上可以自动打包并且运行jar前提Linux(能连外网)+JDK8 + Git+Github会使用Linux安装Maven1)其中配置远程镜像仓库的setting.xml在apache-maven-3.6.3/conf 目录下2)主意自己的目录问题安装Maven:https://www.jianshu.com/p/51e4e84e02cd配置Maven中央镜像:https://blog.csdn.net/qq_3717135.原创 2020-06-01 22:17:45 · 1926 阅读 · 1 评论 -
Jmeter的简单使用
Jmeter简介Apache JMeter是Apache组织开发的基于Java的压力测试工具。Jmeter安装(window)前提:Java环境要有在https://jmeter.apache.org/download_jmeter.cgi 下载解压后如图所示进入解压的bin目录下,启动Jmeter启动成功后如下图所示Jmeter进行压力...原创 2020-04-14 23:36:32 · 355 阅读 · 0 评论 -
java获取本机的外网IP地址(亲测有效)
获取本机的外网地址如果下面正确,请留下您宝贵的赞package untils;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.net.*;import java.util.Enumeration;import ja...原创 2020-04-13 01:46:17 · 12602 阅读 · 15 评论 -
没有接口实现类代理
问题的提出正常的jdk动态代理和cglib代理都是通过传入实体类实现的,dubbo的消息提供者是没有接口的实现类的,那怎么实现的?实现接口package com.proxynoimpl;/** * @author CBeann * @create 2020-03-09 17:37 */public interface IEmailService { Stri...原创 2020-03-09 17:54:15 · 1142 阅读 · 0 评论 -
计算机网络笔记
常见的状态码https://blog.csdn.net/weixin_34137799/article/details/88705818tcp 3次握手4次挥手https://blog.csdn.net/qq_38950316/article/details/81087809https://mp.weixin.qq.com/s/QnH37o9AMIeTa_gy...转载 2020-02-11 23:17:15 · 481 阅读 · 0 评论 -
认识零拷贝
注意事项(1)零拷贝的含义是数据不从内核空间拷贝到用户空间,也不从用户空间拷贝到内核空间(2)零拷贝完全依赖操作系统,操作系统提供了就是提供了,没有提供就没有提供,java本身做不了任何事情传统的IO拷贝需求java读取磁盘上的文件,并且输出出去。这个过程包含两个步骤,一个是读,一个是写图片解读三列分别为用户空间、内核空间、硬件(1)read() syscall...原创 2020-01-22 18:56:35 · 384 阅读 · 0 评论 -
json字符串和对象直接的转化
pom<dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.47</version> <...原创 2020-01-05 22:48:46 · 393 阅读 · 0 评论 -
JVM笔记
JVM模型Class Loader类加载器负责加载class文件,class文件在文件开头有特定的文件标识,并且ClassLoader只负责class文件的加载,至于它是否可以运行,则由Execution Engine决定。Method Area方法区(永久区)方法区是被所用的线程共享,所有字段和方法字节码,以及一些特殊方法如构造函数,接口代码也是再此定义。简单说,所有定...原创 2020-01-01 14:31:52 · 690 阅读 · 1 评论 -
Lambda 表达式Demoo
为什么使用 Lambda 表达式?Lambda 是一个匿名函数,我们可以把 Lambda 表达式理解为是一段可以传递的代码(将代码 像数据一样进行传递)。可以写出更简洁、更 灵活的代码。作为一种更紧凑的代码风格,使 Java的语言表达能力得到了提升。Lambda表达式和函数式编程有千丝万缕的关系readme1)接口内有且仅有一个方法,不能有多个,见下面的函数式接口2)(x,y)...原创 2019-02-02 23:10:06 · 329 阅读 · 0 评论