大脑补丁
码龄10年
  • 1,051,566
    被访问
  • 136
    原创
  • 9,753
    排名
  • 396
    粉丝
  • 32
    铁粉
关注
提问 私信

个人简介:怕什么真理无穷,进一寸有一寸的欢喜。

  • 加入CSDN时间: 2012-12-27
博客简介:

五道口

博客描述:
闲暇定终身
查看详细资料
  • 6
    领奖
    总分 2,018 当月 12
个人成就
  • 博客专家认证
  • 获得714次点赞
  • 内容获得577次评论
  • 获得2,327次收藏
创作历程
  • 2篇
    2022年
  • 8篇
    2021年
  • 32篇
    2020年
  • 6篇
    2019年
  • 37篇
    2018年
  • 50篇
    2017年
  • 1篇
    2016年
成就勋章
TA的专栏
  • Java
    23篇
  • 多线程编程
    17篇
  • InfluxDB
    5篇
  • Kafka
    5篇
  • 开发工具
    9篇
  • 设计模式
    21篇
  • Redis
    3篇
  • HBase
    7篇
  • Spring Cloud
    2篇
  • 开源技术
    1篇
  • Git
    4篇
  • Android
    16篇
  • Python
    11篇
  • Linux
    3篇
  • React Native
    1篇
  • PHP
    1篇
  • WebService
  • Mysql
    4篇
  • SqlServer
    1篇
  • 服务器
    2篇
  • Oracle
    1篇
  • Scala
    1篇
兴趣领域 设置
  • 大数据
    mysqlredis
  • 后端
    spring架构
小黑板
学习要以我为主,为我所用。不怕慢,就怕停
  • 最近
  • 文章
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

kafka数据和日志目录迁移教程

简介Kafka在运行的过程中,存储在磁盘上的数据会逐渐扩大,甚至会撑爆系统盘,在线上环境我们通常会把kafka的数据存储目录和日志存储目录迁移到磁盘中,或者扩容kafka的存储磁盘。本文将一站式解决kafka的磁盘存储或扩容问题。
原创
发布博客 2022.04.17 ·
2264 阅读 ·
1 点赞 ·
1 评论

Redis5.0.x集群搭建

本文将介绍Redis5.0三主三从集群搭建以及集群配置。
原创
发布博客 2022.02.03 ·
1493 阅读 ·
0 点赞 ·
0 评论

Linux通过UUID挂载和卸载硬盘

前言本文介绍下Linux系统如何通过UUID的方式挂载硬盘,以及相关的注意事项。注意事项:挂载前一定想好挂载位置,不能是系统盘挂载路径如果已经有文件或者文件夹,挂载新硬盘后将全部清空基于上述两点,推荐硬盘挂载在一个新建的目录下,然后再将日志等占用硬盘的内容,写入到此文件夹下。一.找到需要挂载的磁盘执行命令:lsblk -l发现vdc 就是需要挂载的盘。接下来将讲解如何通过UUID挂载硬盘。二.格式化磁盘执行命令:mkfs.ext4 /dev/vdc磁盘的目录在/dev下,
原创
发布博客 2021.11.14 ·
2168 阅读 ·
0 点赞 ·
1 评论

新版kafka Manager(CMAK)安装部署教程

简介截止至2021年9月1日,新版kafka manager(CMAK)最新版本为v3.0.0.5(2020年6月21日发布),支持kafka v0.8.1.1~ v2.4.0之间的多个版本,但实测是可以支持kafka v2.7.1版本的。旧版kafka manager安装请参考我的文章《Kafka Manager部署和使用》本教程所讲述的环境版本如下:环境版本操作系统centos 7JDK11.0.12kafka2.7.1kafka manager(CMA
原创
发布博客 2021.08.30 ·
1662 阅读 ·
3 点赞 ·
6 评论

Centors下搭建Kafka集群教程(v2.7.1)

本文讲解了`kafka v2.7.1`版本集群搭建,讲述了详细的配置以及避免了会出现的坑,在文章中,教大家如何搭建和测试每一个步骤和环节,确保能够及时发现问题,节省大家Debug时间,文章中的内容本人都亲测,确保大家一把通过。
原创
发布博客 2021.08.30 ·
189 阅读 ·
0 点赞 ·
0 评论

Centors下搭建Zookeeper v3.5.9集群(支持kafka2.7.1集群)教程

前言:本文将介绍搭建Zookeeper集群,用以支持kafka最后一个需要Zookeeper做注册中心的版本。当然,你也可以用此集群作为Dubbo的注册中心。提示: kafka v2.6版~v2.7.1版需要zookeeper v3.5.8+以上版本支持。kafka v2.8及以上版本将不需要Zookeeper作为注册中心了。点击查看kafka官方介绍一.下载Zookeeper1.如何选择zookeeper安装包线上服务器使用,选择stable版本中的最新版。原因:最新版经常有bug,不建
原创
发布博客 2021.08.26 ·
218 阅读 ·
0 点赞 ·
0 评论

涛思数据 TDengine 征稿—工业物联网下的应用

前言本文正在参与“拥抱开源|涛思数据TDengine 有奖征稿”,活动链接。跟涛思数据曾在boss直聘上有过一面之缘,因为都是做物联网方向的,所以了解了一下。本文将讲讲TDEngine吸引开发者的地方以及TDengine在工业物联网上的应用前景。一.为什么要用时序型数据库物联网不同于互联网, 互联网是人与人之间的互联,能够产生的数据量确实也很大,但物联网就更有甚之了,万物之间相联,产生的数据量肯定要比人与人之间的联系产生的数据的数据量大出几个数量级。物与物相联产生的数据如何存储,才能更方便的管理呢
原创
发布博客 2021.07.05 ·
337 阅读 ·
0 点赞 ·
0 评论

MySQL数据库优化图文教程

本文将全面讲解Mysql的性能优化,包括数据查询优化、数据库结构优化、插入数据优化、服务器优化等,一文学会MySQL全部常用的优化策略。一篇新手直接拿来即用的MySQL优化教程。
原创
发布博客 2021.05.14 ·
236 阅读 ·
1 点赞 ·
4 评论

Windows下批量克隆Git项目脚本

简介本文分享一个批量下载Github或Gitlab上的脚本,当有几十个项目时,可以一次性批量下载所有仓库代码。一.完整脚本chcp 65001@echo off:克隆到本地目录,目录下不能存在与项目名相同的文件夹SET folder=C:\xWorkspace\:Git分组,没有分组可设为空,将`yourGroup`替换成你自己的组名SET group=yourGroup:同目录下,存放GIt项目名列表的txt文件,文件中的不同项目要换行SET projectNames=%grou
原创
发布博客 2021.04.18 ·
1039 阅读 ·
4 点赞 ·
5 评论

Mysql磁盘碎片整理教程

本文来讲解下Mysql磁盘碎片的整理,为什么数据库会产生碎片,以及如何清理磁盘碎片,还有一些清理磁盘碎片的注意事项。本文介绍了Mysql的磁盘优化及注意事项、磁盘碎片形成的原因、不同的数据库引擎采用不同的优化方案
原创
发布博客 2021.02.04 ·
1015 阅读 ·
3 点赞 ·
1 评论

Java中死锁之代码演示和检测

本文将通过Java代码演示一个死锁程序,并用JDK自带的工具`jstack`工具,来验证下是否真正的有死锁发生。明白了死锁发生的机制,我们可以想办法避免死锁发生,第一种方法是注意加锁顺序。第二种避免死锁的方式是,设置超时时间,如果超过一定时间,自动释放锁。在程序运行时,我们可以通过`jstack`工具,查看程序运行状态,是否有死锁。
原创
发布博客 2020.12.14 ·
544 阅读 ·
0 点赞 ·
0 评论

Java线程属性详解

本节来介绍下Java中线程的属性,即线程的编号(ID)、名称(Name)、守护线程(Daemon)、优先级(Priority),讲解下这些属性各自的作用,以及开发中需要注意的事项。其实除了线程名称属性,其他属性在编码过程中,是无需人为指定的。线程的ID、优先级和守护线程更多的是用作只读属性使用,并不需要手动修改默认配置。
原创
发布博客 2020.11.14 ·
177 阅读 ·
0 点赞 ·
0 评论

Java中yield()方法作用讲解

①.`yield()`方法只是提出申请释放CPU资源,至于能否成功释放由JVM决定。由于这个特性,一般编程中用不到此方法,但在很多并发工具包中,`yield()`方法被使用,如`AQS`、`ConcurrentHashMap`、`FutureTask`等。②.调用了`yield()`方法后,线程依然处于`RUNNABLE`状态,线程不会进入堵塞状态。
原创
发布博客 2020.11.08 ·
4855 阅读 ·
6 点赞 ·
1 评论

Java中join()方法原理及使用教程

本节介绍了`join()`方法的使用方法,分析了`join()`方法的源码,并且找到了两种`join()`方法的等效替换方法,然后我们讲解了使用`join()`方法时,讲解了为什么要响应主线程的中断,维护好多线程的数据一致性,并给出了代码示例。希望通过本文,可以彻底吃透`join()`方法。
原创
发布博客 2020.11.07 ·
11435 阅读 ·
15 点赞 ·
3 评论

Java中sleep()方法和wait()方法的异同点

①.`wait()`、`notify()`方法必须写在同步方法中,是为了防止死锁和永久等待,使线程更安全,而`sleep()`方法不需要有这个限制。②.`wait()`方法调用后会释放锁`sleep()`方法调用后不会释放锁。③.`sleep()`方法必须要指定时间参数;`wait()`方法可以指定时间参数。④.两个方法所属类不同,`sleep()`方法属于`Thread`类;`wait()`属于`Object`类中,放在`Object`类中是因为`Java`中每个类都可以是一把锁。
原创
发布博客 2020.11.07 ·
1230 阅读 ·
3 点赞 ·
0 评论

Java如何正确停止线程(三种场景)

本文将讲解Java中三种场景下如何正确的停止线程,分别是普通情况、堵塞状态、循环中堵塞状态,三种情况下如何正确的停止线程。线程在三种场景下的停止方式,都是通过`interrupt()`方法来停止的,但特殊的是停止循环中的阻塞线程时,需要在循环外部增加`try-catch`代码块,捕获到中止堵塞状态异常时停止线程。
原创
发布博客 2020.11.01 ·
1153 阅读 ·
1 点赞 ·
0 评论

Java线程状态完全解析教程

Java线程有6种状态,分别是`NEW`、`RUNNABLE`、`BLOCKED`、`WAITING`、`TIMED_WAITING`、`TERMINATED`。本文讲解线程状态变化的流程以及用代码演示通过调用哪些方法可以使线程改变状态。本文详细讲解了线程的6种状态各自的定义,以及从代码层面演示并分析了各种状态的含义,讲解了线程执行的流程以及注意事项。
原创
发布博客 2020.11.01 ·
323 阅读 ·
1 点赞 ·
0 评论

设计模式之生产者消费者模式

本文通过`wait()`和`notify()`方法,实现和分析消费者和生产者模式,此模式优雅的实现了生产者和消费者的解耦,并且支持并发。通过手写一份生产者消费者模式的代码,进行讲解。学习领悟了这种设计模式,才可以真正理解`消息中间件`实现的底层思想,比如Kafka、RocketMQ、RabbitMQ等。
原创
发布博客 2020.10.31 ·
1038 阅读 ·
3 点赞 ·
0 评论

Java两个线程交替打印奇偶数(两种方法对比)

我们将通过“两个线程交替打印100内的奇偶数”,来展示下`wait()`方法和`notify()`方法的用法和优点,当然要体现出优点,自然要通过对比不使用这两个方法实现同一功能的代码,通过这几篇文章的讲解,帮你彻底搞懂`wait()`方法和`notify()`方法的用法。
原创
发布博客 2020.10.31 ·
5922 阅读 ·
8 点赞 ·
12 评论

Java多线程中notifyAll()方法使用教程

1.`notifyAll()`中`All`的含义是所有的线程,而不是所有的锁,只能唤醒等待(调用wait()方法等待)同一个锁的所有线程,这一点一定要注意。2.`notifyAll()`必须在当前线程拥有监视器锁的情况下执行,否则将抛出异常`IllegalMonitorStateException`。意思是说必须在同步代码块中,调用此方法,否则可能出现在没有得到锁的情况下,执行了此方法,导致程序异常。`wait()`和`notify()`系列方法这样设计的目的是防止死锁或永久等待发生。
原创
发布博客 2020.10.27 ·
3609 阅读 ·
4 点赞 ·
0 评论
加载更多