Thomson Zhu
码龄4年
关注
提问 私信
  • 博客:20,682
    社区:1
    20,683
    总访问量
  • 16
    原创
  • 2,319,419
    排名
  • 1
    粉丝
  • 0
    铁粉
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:香港
  • 加入CSDN时间: 2021-03-23
博客简介:

码工

查看详细资料
个人成就
  • 获得5次点赞
  • 内容获得1次评论
  • 获得46次收藏
  • 代码片获得181次分享
创作历程
  • 16篇
    2021年
成就勋章
TA的专栏
  • mysql
    4篇
  • aaa自定义
  • 微服务
    1篇
  • java基础
    2篇
  • 其他
    1篇
  • linux
    1篇
  • zookeeper
    1篇
  • jdk
    1篇
  • redis
    4篇
  • kafka
    1篇
兴趣领域 设置
  • 大数据
    mysqlhadoophiveredisstormsparkflinketl
  • 后端
    spring架构
  • 搜索
    elasticsearch
  • 运维
    容器jenkinsdevops自动化kubernetes网络
  • 服务器
    linuxcentos
创作活动更多

超级创作者激励计划

万元现金补贴,高额收益分成,专属VIP内容创作者流量扶持,等你加入!

去参加
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

JIRA工作流节点状态变化前弹出窗口填写日志或者备注

一、定义弹出框的页面1、进入问题管理页面,并点添加屏幕2、自定义弹出页面的名称3、点击添加后会进入配置页面,配置页面所包含的字段二、在工作流中配置页面1、进入工作流编辑页面双击需要添加弹出页面的流程2、在弹出框中页面栏选择刚刚配置的页面3、保存后,发布工作流即可,此时就可以在相应流程中弹出页面了4、在备注栏填写相关说明后,点退回不解决流程,即可在最下面活动日志的注释中看到内容...
原创
发布博客 2021.05.24 ·
1429 阅读 ·
1 点赞 ·
0 评论 ·
1 收藏

利用cglib的BeanCopier用原型模式以及享元模式完成对象的拷贝

实际上对象拷贝的工具有很多种,比如apache BeanUtils、apache PropertyUtils、spring BeanUtils。在一些业务代码中现在经常看到的都是spring BeanUtils来进行对象拷贝。大部分情况下来说已经足够了,但如果居于性能考虑,以上几种工具都是利用反射的原理来完成的,性能相比cglib beanCopier利用动态代理实现稍差一筹,这里不去对比几种工具的性能,只展示BeanCopier如何进行使用。一、非cglib下的对象拷贝方式1、原型模式就是从一
原创
发布博客 2021.03.24 ·
703 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

vmware安装centos8网络配置并配置NAT子网(解决Unit network.service not found问题)

一、配置VMware的NAT子网首先需要配置VMware的NAT子网:菜单栏-》编辑-》虚拟网络编辑器1、配置子网IP和子网掩码,并取消DHCP自动分配IP,点击应用按钮2、点击NAT设置,设置子网网关,点击确定3、修改安装的虚拟机的网络配置使用NAT模式一、配置系统静态ip1、静态ip配置    因centos8中使用NM(Network Manager)管理网络,以前我们管用的network.service不再管用,但依然可通过/etc/syscon
原创
发布博客 2021.03.24 ·
3078 阅读 ·
2 点赞 ·
0 评论 ·
14 收藏

在centos8中下载和安装openJDK

一、下载1、openJDK的二进制包下载地址:http://jdk.java.net/2、选择版本后进入选择对应操作系统的二进制包下载二、centos8下安装openjdk111、解压:tar -zxvf openjdk-11+28_linux-x64_bin.tar.gz得到目录jdk-112、查看系统是否已经存在jdk并移除 #输入以下命令查询是否有jdk的安装信息 rpm -qa |grep java rpm...
原创
发布博客 2021.03.24 ·
701 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

redis的数据类型以及使用场景

redis主要有5中数据类型:String、Hash、List、Set、Sorted Set一、StringString类型是属于redis中最基本的类型,可以认为String类型可以存储任意类型的数据,比如普通的字符串、图片、序列化对象等,每个key所存储的value最大为512M常用命令set key value [ex seconds] [px milliseconds]#设置指定的key的值(可以加ex 5表示过期时间5s)get key #获取指定的key的值mset ke
原创
发布博客 2021.03.24 ·
172 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

centos8中zookeeper3.6.1集群部署与配置配置优化

一、前言zookeeper集群中,只有超过半数节点可用才能提供服务,所以节点最好是基数。例如有3个节点,其中一个节点运行出了故障,有两台是正常的,因为超过半数可以提供服务。如果有4个节点,其中有两个节点出故障,剩余2个节点不超过半数,不能提供服务,也就是4个节点也只能处理一个节点故障。二、部署zookeeper所需要的系统环境 1. 3台机器(可用虚拟机搞或者在同一台机器指定不同端口号) 192.168.198.128 192.168.198.129...
原创
发布博客 2021.03.24 ·
1038 阅读 ·
1 点赞 ·
0 评论 ·
3 收藏

centos8中安装mysql8.0.21版本以及配置优化

一、下载解压安装包以及准备相关日志目录1、下载linux通用社区版mysql community server 8.0.21选择mysql社区版server选择对应系统版本的mysql下载可以通过以下地址直接下载:https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-8.0.21-linux-glibc2.12-x86_64.tar.xz2、解压并修改目录名称本次准备安装到/data目录,把下载好的文件直接上传到/data目录或者通
原创
发布博客 2021.03.23 ·
1296 阅读 ·
0 点赞 ·
0 评论 ·
6 收藏

居于redis + lua脚本实现的滑动窗口

一、前言我们常常使用滑动窗口实现限流操作,在单机时我们经常放在内存中实现,而在做全局接口限流时,我们除了可以通过查询接口调用记录外,还可以通过依赖redis实现的滑动窗口进行,比如限制1分钟可调用1000次,一小时可调用10000次。二、滑动窗口的基本要素和操作1、一个固定长度的循环队列2、每个时间片的时长,可以是按秒、分、时。。。3、每个时间窗口长度,由多个时间片组成一个时间窗口,也就是所需的一段时间4、当前时间的所在时间片的索引5、初始化循环队列的方法6、选择当前时间所在
原创
发布博客 2021.03.23 ·
850 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

nacos集群部署与配置

一、前言nacos是阿里开源的一个集服务发现与配置管理与一体的项目,可以帮我们微服务实现动态服务发现、服务配置、服务元数据及流量管理。本篇文章主要纪录nacos集群的搭建过程。nacos主要依赖环境为64位的jdk1.8+版本本次主要在三台虚拟机安装:server1:192.168.1.161、server2:192.168.1.162、server3:192.168.1.163二、下载、编译1、nacos项目自身相对较大,而受网络的影响从github上下载较慢,可以gitee进行下载
原创
发布博客 2021.03.23 ·
2833 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

mysql innodb存储引擎的sql查询、更新的执行过程

一、建立连接与查询1、应用程序与mysql服务端建立连接就需要用到驱动程序,在java应用程序里可通过mysql-connector-java驱动来进行连接,这个驱动会在底层与数据库进行网络连接,如我们在代码中常常会引入这个驱动包:<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version&
原创
发布博客 2021.03.23 ·
552 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

mysql的线上环境硬件配置推荐、性能压测方法以及结果分析

一、硬件配置与所能支持并发量一般我们说的负载,主要居于单台机器只部署应用或者mysql的情况,常常发现有些人在一台机器上部署了很多的应用,包括数据库也放在一起,发现某个应用配置完全没问题,但偶尔会有卡顿的情况,实际可能被其他应用占用了资源导致。1、通常情况下,线上环境应用部署在4核8G的机器上,而数据库应部署在8核16G或者16核32G,正常情况下单节点应用服务可支撑500左右的并发,当然还要根据请求的处理时长来计算,比如接口请求响应过慢就会导致并发降低2、在一个系统中,往往压力会集中在数据库上
原创
发布博客 2021.03.23 ·
3904 阅读 ·
0 点赞 ·
0 评论 ·
3 收藏

kafka分布式架构原理以及数据重复消费、数据丢失、消息顺序性、消息积压等的解决方案

一、kafka消息系统架构的变迁  kafka是一个分布式架构的系统,集群可以部署在多台机器上,每台机器可以启动一个或多个borker进程,每个broker进程是kafka集群中的一个节点,当创建topic时,可以把topic划分为一个或多个partition,每个partition存放在不同的broker上,且每个partition可以(生产者可以指定partition进行存储)存放所属topic的一部分数据。1.1、kafka0.8版本前的架构  在0.8版本前的架构如果某个broker宕机了,该
原创
发布博客 2021.03.23 ·
921 阅读 ·
0 点赞 ·
1 评论 ·
4 收藏

java内存模型(JMM)以及volatile变量、happens-before、as-if-serial相关规则说明

一、处理器与存储设备运算效率以及数据一致性1.1、处理器与存储设备运算速度差  在计算机中,绝大多数的任务处理都是处理器、内存、磁盘等配合完成,不可能单靠寄存器完成所有的任务。而这些硬件中,处理器的运行速度又是遥遥领先于内存、磁盘等的IO操作1.2、解决方案  为了解决处理器与内存的效率差的问题,现代计算机在处理器的每个内核多增加高速缓存(如下图)1.3、存在的问题  增加了高速缓存后就会存在处理器多个核间缓存一致性的问题,为了解决这个问题,处理器内核间都需要遵循一些一致性协议,如MSI/ME
原创
发布博客 2021.03.23 ·
173 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

redis线程模型以及高性能分析

前言  我们都知道redis的访问响应非常快,常常用redis来做缓存、消息队列、发布订阅等,支撑系统实现高性能、高并发。但redis是如何具有这样的能力的呢?一、redis的线程模型  redis是一个单线程的文件事件处理器,在redis的线程模型中,redis的文件事件处理器包含了五个部分的内容:多server socket、IO多路复用程序、socket事件队列、文件事件分派器、三种事件处理器(连接应答事件处理器、命令请求事件处理器、命令回复事件处理器),而redis之所以认为是单线程的,是因为
原创
发布博客 2021.03.23 ·
111 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

mysql根据父节点查询所有的子节点以及根据子节点往上查询所有父节点(普通sql语句查询)

一、初始化部门表结构、数据1、部门表结构CREATE TABLE `department` ( `id` int NOT NULL AUTO_INCREMENT COMMENT '自增id', `name` varchar(255) NOT NULL COMMENT ' 部门名称', `parent_id` int NOT NULL COMMENT '父id', PRIMARY KEY (`id`)) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLL
原创
发布博客 2021.03.23 ·
2197 阅读 ·
1 点赞 ·
0 评论 ·
8 收藏

redis的过期、内存淘汰策略以及所使用的算法

一、redis过期策略  当我们通过set命令保存某些数据的时候,可以指定过期时间,使缓存到时间后失效。但当redis中的key数量随着时间推移逐渐增长,我们常常发现某批量的key到时间应当过期删除了,但实际发现内存并没有得到释放,这就涉及到redis过期策略问题,redis的过期策略有两种:定期删除以及惰性删除。1、定期删除  (1)redis每隔100ms就会随机抽取一些设置了过期时间的key检测是否过期,如果过期了就删除掉。也就是说redis并不是每次都检查所有的有过期时间的key,那样会引发很
原创
发布博客 2021.03.23 ·
200 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏
加载更多