Jitwxs
码龄6年
  • 1,240,524
    被访问
  • 282
    原创
  • 1,117,002
    排名
  • 5,357
    粉丝
  • 90
    铁粉
关注
提问 私信

个人简介:关注 https://jitwxs.cn,看最新首发文章

  • 加入CSDN时间: 2016-11-23
博客简介:

Jitwxs

博客描述:
不忘初心,砥砺前行,最新首发文章移步 https://jitwxs.cn
查看详细资料
个人成就
  • 获得1,122次点赞
  • 内容获得809次评论
  • 获得3,888次收藏
  • GitHub 获得1,256Stars
创作历程
  • 18篇
    2020年
  • 51篇
    2019年
  • 114篇
    2018年
  • 139篇
    2017年
成就勋章
TA的专栏
  • 操作系统
  • Linux
    42篇
  • Windows
    8篇
  • Java 技术栈
  • Java
    40篇
  • Java Web
    27篇
  • Spring Security 5
    10篇
  • 数据库
  • MySQL
    10篇
  • Redis
    10篇
  • 算法与数据结构
    24篇
  • OJ
    27篇
  • 中间件
    7篇
  • Protobuf
    4篇
  • Nginx
    7篇
  • 云原生
    1篇
  • Docker
    3篇
  • 搜索引擎
    13篇
  • HoloLens
    12篇
  • 综合
    11篇
  • 区块链
    2篇
  • 开发工具
    33篇
  • Python
    13篇
  • 前端
    4篇
  • 程序漫谈
    9篇
  • 最近
  • 文章
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

Elasticsearch初探(4)——集群

Elasticsearch的一大优势就是能够十分轻松的进行分布式部署,本文将主要讲解Elastic的集群搭建。一、基础概念1. 1 节点类型node.masternode.data节点类型true(default)true(default)候选主节点 && 数据节点truefalse候选主节点falsetrue数据节点fal...
原创
发布博客 2018.10.09 ·
300 阅读 ·
0 点赞 ·
2 评论

用小说的形式讲解Spring(1) —— 为什么需要依赖注入

本集概要: 使用依赖注入前,代码是什么样子,有什么缺点?依赖注入是什么?为什么要使用依赖注入?Spring如何使用xml配置的方式进行依赖注入?大雄是一个刚踏入社会的95后,热爱编程的他,在毕业之后进入了一家互联网公司,负责公司内一个电商项目的开发工作。 为了让大雄更快的成长,公司安排了哆啦作为大雄的导师。春风得意在哆啦的指导下,大雄很快对这个项目的代码有了大致的了...
转载
发布博客 2018.02.03 ·
544 阅读 ·
1 点赞 ·
0 评论

SpringBoot Metrics 监控系统(1)——技术介绍

一、前言本系列将为大家介绍如何对我们的 SpringBoot 应用程序进行监控和告警,使用的技术为 Prometheus + Grafana。二者均采用 Docker 进行安装部署,实际工作中自己在生产环境搭建的可能性不大,因此我们关注的重点放在如何使用就好了。二、PrometheusPrometheus 是 Soundcloud 开发的一款开源的监控工具,其本质是一个时间序列数据库(TSDB),采用 Go 语言开发。它具有以下特点:多维度:我们可以给指标数据添加多组标 Label,在展示时候
原创
发布博客 2020.12.09 ·
1457 阅读 ·
1 点赞 ·
0 评论

如何优雅的统计代码耗时

一、前言代码耗时统计在日常开发中算是一个十分常见的需求,特别是在需要找出代码性能瓶颈时。可能也是受限于 Java 的语言特性,总觉得代码写起来不够优雅,大量的耗时统计代码,干扰了业务逻辑。特别是开发功能的时候,有个感受就是刚刚开发完代码很清爽优雅,结果加了一大堆辅助代码后,整个代码就变得臃肿了,自己看着都挺难受。因此总想着能不能把这块写的更优雅一点,今天本文就尝试探讨下“代码耗时统计”这一块。在开始正文前,先说下前提,“代码耗时统计”的并不是某个方法的耗时,而是任意代码段之间的耗时。这个代码段,可能是
原创
发布博客 2020.10.24 ·
729 阅读 ·
5 点赞 ·
2 评论

Java 浅拷贝性能比较

一、前言实际开发中,经常会遇到对象拷贝的需求,本文就结合日常开发过程中,使用到的浅拷贝技术,进行性能比较,看看谁更强。重要: 下面将会花大量篇幅,列出各种类型浅拷贝的代码,你可以直接拖到文章末尾,看性能对比结果。然后再根据你中意的对象回过头来看它的代码,避免疲劳。源码链接:https://github.com/jitwxs/blog-sample/tree/master/SpringBoot/shallow_copy首先创建一个用于拷贝的 Bean,如下所示:import lombok.Al
原创
发布博客 2020.09.20 ·
335 阅读 ·
0 点赞 ·
0 评论

Lombok 子类如何使用 @Builder

一、前言业务开发中,子类父类还算是经常用到,Lombok 的 @builder 提供的链式调用帮助我们更轻松的创建对象。但是实验后却发现子类的 @Builder 是不会包含父类的属性。假设存在父类 A:@Data@Builderpublic class A { private String aName; private String aAge;}存在子类 B:@Builder@Data@EqualsAndHashCode(callSuper = true)publi
原创
发布博客 2020.09.06 ·
1550 阅读 ·
0 点赞 ·
0 评论

Java Fail-Fast 与 Fail-Safe 特性

一、前言在 Java 的集合结构中,如果我们同时进行遍历(for-each, iterator)和集合修改(add, set, remove…)操作时,就有可能发生异常。例如,线程 T1 在对集合进行遍历,而此时线程 T2 对集合进行添加元素;亦或者线程 T1 在对集合进行遍历的过程中,进行删除元素操作。不同的集合在遇到上述这种情况时,会有不同的处理。按照处理的不同,划分为 Fail-Fast 和 Non-Fail-Fast(下文统称为 Fail-Safe)两类。前者不允许在迭代的过程中对集合进行增删操
原创
发布博客 2020.08.23 ·
507 阅读 ·
4 点赞 ·
0 评论

Windows Terminal 上手把玩指南

Windows 平台的终端一直以来的确不好用,被 mac 和 linux 吊着锤。历经了 cmd、powershell、FluentTerminal,微软最新的 Windows Terminal 终于算是进入可用状态,今天就来把玩把玩。一、安装安装前提是 Win10 系统,打开 Windows Store 并搜索 Windows Terminal 点击安装就行。我挂着梯子的时候,进不去商店,所以各位自己把握就好。二、基本了解安装完毕后,正常打开即可。如果想要折腾折腾的话,那么主要就得了解下它的配
原创
发布博客 2020.07.26 ·
814 阅读 ·
3 点赞 ·
1 评论

上传 Jar 包至 Maven 中央仓库

一、前言随着时间积累,在平常写自己的代码过程中,会有类或者是模块,比较通用,许多项目都能用得到。我们就可以把这些部分抽取成一个公共包,方便其他项目去使用。本地 install 只能保存在本地中,因此将其上传到中央仓库中,平常就能够轻松的去使用了。上传 Jar 包的过程还算简单,本文将记录这一过程,系统环境为 Windiws。另外,请使用 windows 自带的 CMD 作为整篇文章的命令行工具。不要使用 Git Bash,会有坑。二、创建工单首先你得有个 sonatype 的账号,点击这里前往注
原创
发布博客 2020.06.21 ·
804 阅读 ·
1 点赞 ·
0 评论

MySQL 常用用户权限管理命令

一、用户1.1 创建用户-- 创建用户,并允许其在任何IP登陆create user 'username'@'%' identified by 'password';-- 创建用户,并允许其在任何主机登陆,不设置密码create user 'username'@'%';-- 创建用户,并仅允许使用jitwxs.cn域名的主机登陆create user 'username'@'jitwxs.cn' identified by 'password';-- 创建用户,并仅允许使用192.16
原创
发布博客 2020.06.06 ·
470 阅读 ·
1 点赞 ·
1 评论

Java 代码性能优化之路

一、前言最近一直忙着参与公司的新项目开发,由于临期上线,正在对系统进行性能压测,在这个过程中,发现一些代码有性能优化的空间。因此决定写一篇文章,把本次以及今后,遇到的性能优化的 case 都记录下来,希望对大家们的编码水平能够有所帮助。源码链接:https://github.com/jitwxs/blog-sample/blob/master/Java/performance_optimized二、Java 基础2.1 字符串拼接在我们的系统中,存在着大量的缓存,这些缓存的 key 值根据请求
原创
发布博客 2020.05.23 ·
413 阅读 ·
3 点赞 ·
0 评论

首次排查 OOM 实录

一、前言距离上篇文章更新已经一月有余,之所以一直没更新一是工作最近比较忙,二是感觉产出不了什么对自己和他人有价值的文章。因此这段时间,主要的空闲时间在学习技术和写 GitHub,博客这边就暂时落下了。本篇文章的落成更像是一篇笔记,而不是博客。因为在一年的工作后,首次碰上了 OOM 问题,虽然导致的原因比较简单,但也算是值得纪念的,哈哈。二、问题复现代码源码:https://github....
原创
发布博客 2020.05.02 ·
384 阅读 ·
1 点赞 ·
2 评论

高性能 Disruptor——消除伪共享

一、CPU Cache存储设备往往是速度越快价格越昂贵,速度越快价格越低廉。在计算机中,CPU 的速度远高于主存的速度,而主存的速度又远高于磁盘的速度。为了解决不同存储部件的速度不对等问题,让高速设备充分发挥性能,引入了多级缓存机制。为了解决内存和 CPU 的速度不匹配问题,相继引入了 L1 Cache、L2 Cache、L3 Cache,数字越小,容量越小,速度越快,位置越接近 CPU。...
原创
发布博客 2020.04.19 ·
1529 阅读 ·
1 点赞 ·
0 评论

MemoryAnalyzer-1.10.0.20200225-win32.win32.x86_64.zip

发布资源 2020.04.18 ·
zip

Java 并发编程——线程池的异常处理机制

一、前言1.1 文章起因这篇文章的起因来源于一个 BUG,这个 BUG 和上篇文章《Java SynchronizedSet 线程不安全之坑》 有点关系。简单来说,就是在线程池中执行任务,任务本身未做异常处理,导致出现异常后任务停止。出错的原因来自对 Collections.synchronizedSet(new HashSet<>()) 的线程不安全访问,抛出了 Concurr...
原创
发布博客 2020.04.06 ·
849 阅读 ·
2 点赞 ·
1 评论

Java SynchronizedSet 线程不安全之坑

一、前言一般而言,想要构造出线程安全的 Set,我们会使用 Collections.synchronizedSet 方法,如下所示。Set<User> set = Collections.synchronizedSet(new HashSet<>());但这并不意味着,你可以安全的使用该集合的任何方法,如果没有仔细的了解过其实现的话,一不小心就会踩进坑中。最近我在...
原创
发布博客 2020.03.01 ·
2164 阅读 ·
3 点赞 ·
0 评论

Parallel Stream 的错误实践

一、前言Java8 Stream 流的出现,极大的简化了业务需求中对集合数据的加工处理操作。虽然好用,但是一旦使用不当,也会带来意想不到的结果,本文记录使用 Parallel Stream 的错误实践。List<Object> sourceList = ...;List<Object> list = new ArrayList();sourceList.strea...
原创
发布博客 2020.02.22 ·
843 阅读 ·
1 点赞 ·
0 评论

详解 Spring 定时任务的调度方式

在 Spring 中,我们可以使用 @Scheduled 方便的进行定时任务的执行,其支持以下三种调度方式:Cron、FixedDelay、FixedRate。下面分别介绍在标准模式下和异步模式下这三种调度方式的不同。一、标准模式1.1 示例准备创建一个 SpringBoot 初始程序,依赖包只需要引入 spring-boot-starter-web 即可:<dependencies...
原创
发布博客 2020.02.14 ·
746 阅读 ·
0 点赞 ·
0 评论

Navicat15 Keygen.zip

发布资源 2020.02.14 ·
zip

gRPC 在 Java 中的入门实例

一、前言经过前面三篇 Protobuf 相关文章的学习,相信大家已经对 Protobuf 有所掌握。前文说过, ProtoBuf 很适合做数据存储或 RPC 数据交换格式。可以用于通讯协议、数据存储等领域的语言无关、平台无关、可扩展的序列化结构数据格式。本节将介绍在 Java 中如何使用 gRPC 和 Protouf。gRpc 也是 Google 推出的 RPC 框架,由于师出同门,Proto...
原创
发布博客 2020.01.26 ·
1009 阅读 ·
5 点赞 ·
2 评论
加载更多