gentlezuo
码龄7年
关注
提问 私信
  • 博客:159,768
    159,768
    总访问量
  • 41
    原创
  • 623,659
    排名
  • 21
    粉丝
  • 0
    铁粉

个人简介:热爱技术,喜欢思考与分享

IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:四川省
  • 加入CSDN时间: 2018-01-01
博客简介:

gentlezuo的博客

查看详细资料
个人成就
  • 获得54次点赞
  • 内容获得14次评论
  • 获得173次收藏
创作历程
  • 9篇
    2021年
  • 15篇
    2020年
  • 19篇
    2019年
成就勋章
TA的专栏
  • 大数据
    2篇
  • linux
    1篇
  • java
    27篇
  • 算法题
  • 数据库
    9篇
  • 设计模式
    2篇
  • 工具
    3篇
  • 分布式
    2篇
  • java并发编程
    1篇
  • springcloud
    7篇
  • 算法
    1篇
创作活动更多

如何做好一份技术文档?

无论你是技术大神还是初涉此领域的新手,都欢迎分享你的宝贵经验、独到见解与创新方法,为技术传播之路点亮明灯!

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

Linux CGroup cpu memory cpuset子系统简介

cgroup的作用,应用范围Linux cgroups的全称是Linux Control Group。它最主要的作用,就是限制一个进程组能够使用的资源上限,包括CPU、内存、磁盘、网络带宽等等。另外,Linux cgroups还可以对进程进行优先级设置、审计,以及将进程挂起和恢复操作。cpumemdevicecpuacctcpuset...
原创
发布博客 2021.09.20 ·
1417 阅读 ·
0 点赞 ·
0 评论 ·
4 收藏

druid连接池RemoveAbandanded导致的性能问题

DB driuid连接池 removeAbandanded 配置导致CPU使用率飙高单机压测发现请求QPS不高也很吃CPU,通过观察火焰图和热点代码发现是获取DB连接池的问题。DB连接池底层使用了driuid,并且将removeAbandanded默认配置为true。在com.alibaba.druid.pool.DruidDataSource#getConnectionDirect中有一段逻辑if (removeAbandoned) { StackTraceElem
原创
发布博客 2021.09.19 ·
869 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

如何执行压测

文章目录压测是什么压测的目的压测的要求压测的分类压测的过程明确压测目的梳理压测链路准备压测数据构造压测环境执行压测压测的保护机制清理数据总结复盘压测常见问题压测是什么压测是一种测试方式,通过不断对被压服务施加压力的来测试服务的性能极限,寻找瓶颈。压测的目的压测的目标关系到压测方案的确定和实施。一是压测的场景(接口,接口组),二是压测的目标探寻服务的性能上限,可通过压测结论进行限流,保护自身的服务大促前,判断目前的机器配置、服务逻辑是否能满足业务的要求,如果不满足需要进行优化(加机器,加缓存,代
原创
发布博客 2021.09.19 ·
696 阅读 ·
1 点赞 ·
0 评论 ·
8 收藏

web开发安全

文章目录越权水平越权案例防御手段垂直越权XSS持久型攻击(持久型攻击)案例反射型攻击案例DOM型攻击防御手段XSRF服务请求伪造SQL注入命令注入文件上传web开发安全问题越权越权是指操作主体能够访问逾越期权限的资源。比如A操作了B的订单,非管理者查看了管理者才能访问的数据。越权可以分为水平越权和垂直越权。水平越权水平越权又被称之为数据越权,如上述所说的A操作了B的订单数据。案例如下所示,攻击者可以取消任意一个订单 cancelOrderByOrderId(String orderId){
原创
发布博客 2021.07.18 ·
314 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

java日志总结系列4-log4j2配置及常见问题

java日志总结系列4-log4j2配置及常见问题java日志总结系列1-日志规范文章目录java日志总结系列4-log4j2配置及常见问题log4j2配置日志常见问题log4j2配置配置可参考 https://logging.apache.org/log4j/2.x/manual/configuration.html几个注意的点Logger是一个树形结构,最上层是Root,一个日志如果没有匹配的logger,最终会走到Root,即使匹配到了一个Logger,没有配置additivity,也会
原创
发布博客 2021.05.29 ·
266 阅读 ·
0 点赞 ·
0 评论 ·
3 收藏

java日志总结系列3-大型日志收集处理系统

java日志总结系列3-大型日志收集处理系统文章目录java日志总结系列3-大型日志收集处理系统日志系统架构一些问题总结之前说到日志可以存储到磁盘,但是有如下问题:微服务架构下,一个服务部署在不同的机器上,排查问题时需要登录不同的机器grep日志,显然不是一个好的做法。4根据日志的内容制作报表,配置告警不易实现…因此通常大型服务日志都是存储在一个日志系统中,该日志系统包含日志收集功能、日志存储功能、日志查询功能、其他根据日志数据开发的功能,例如告警等。日志系统架构日志系统需要解决如下几件
原创
发布博客 2021.05.29 ·
1875 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

java日志总结系列2-日志框架

最近在进行日志标准化治理,准备做一番总结。本章讲述日志框架、日志实现。理清日志门面:SLF4J、JCL日志实现:JUC、log4j、logback、log4j2、slf4j文章目录java日志总结系列2-日志框架日志门面SLF4JJCL日志具体实现log4jlogbacklog4j2jucslf4j-simple项目中SLF4J搭配日志实现`SLF4J+logback``SLF4J+log4j``SLF4J+JUC``SLF4J+log4j2``其他`使用SLF4J替换其他日志框架总结注意事项jav
原创
发布博客 2021.05.29 ·
280 阅读 ·
1 点赞 ·
2 评论 ·
2 收藏

java日志总结系列1-日志规范

最近在公司做日志标准化治理,准备总结一些日志相关的文档。文章目录java日志总结系列1-日志规范日志级别日志内容日志注意事项java日志总结系列1-日志规范日志是系统的重要组成部分,用于记载系统的执行记录、审计、排查问题、数据采集等。日志需要持久化,通常日志仅仅需要持久化到磁盘,或者存储到ES,有些场景也需要将日志存储到MySQL中,例如重要的请求日志、用户抽奖的执行记录、提现操作等。本系列主要讲述java系统中存储到文件、ES中的日志。日志级别由高到低可分为error、warn、info、de
原创
发布博客 2021.05.28 ·
517 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

数据迁移:双写调研

注:没有实践过,完全是为了学习目的目的:将A库中N张表中的数据迁移到B库的M张表中,在B库中做分表操作。在迁移过程中要求不停服。方案方案:双写具体流程在B库中建表,在代码中实现双写的开关以及功能(读老库,增删改老库和新库)由于只读老库,所以新库中的功能实际上未对外提供数据,即使期间新库数据存在问题,依旧不影响服务功能新增操作:老库和新库都新增,因此新增的数据新老库是一致的。(新老库自动生成的主键不一致问题,可以先插入老库,得到id,再插入新库,插入数据带上id)删操作:删除操作幂等,
原创
发布博客 2021.02.10 ·
2181 阅读 ·
3 点赞 ·
1 评论 ·
11 收藏

OGNL简介

Ognl文章目录Ognl数据结构访问属性实例属性静态属性赋值调用方法实例方法静态方法操作符集合操作构造访问投影选择选择第一个选择最后一个索引机制官方文档例子Ognl (Object-Graph Navigation Language)是对象图导航语言,用于访问一个容器中的对象的属性,调用对象的方法。主要是为了方便访问对象的属性和方法。应用Struts2arthas中,命令参数数据结构OgnlContext是一个容器,本质是一个Map,key是String类型的值,value是对象。因此它具
原创
发布博客 2020.11.29 ·
2268 阅读 ·
2 点赞 ·
1 评论 ·
5 收藏

一次MySQL join执行错误分析

一次MySQL join执行错误分析文章目录一次MySQL join执行错误分析分析总结分析练习一道MySQL题目按平均成绩从高到低显示所有学生的所有课程的成绩以及平均成绩分析:要获得学生的学号,姓名,因此需要student表要获得所有课程的成绩,需要score 和course表使用join获取所有课程的成绩,使用group by获取平均成绩使用order by desc排序sql:SELECT st.s_id "学号", st.s_name "姓名", avg( sc.s_s
原创
发布博客 2020.09.05 ·
665 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

单元测试进阶Mockito

Mockito文章目录Mockito简介使用准备工作创建mock对象验证mock对象是否执行了某些操作打桩参数匹配器验证方法的调用次数/最多/最少/从不等返回值为void的方法调用时抛异常打桩验证执行顺序验证没有任何交互检查是否还有没有验证的交互简化Mock创建,注解驱动连续打桩回调打桩doReturn()、doThrow()、doAnswer()、doNothing()、doCallRealMethod()系列方法的运用监视真实的对象resetdetail自定义失败打印信息laambda支持原理限制简
原创
发布博客 2020.08.29 ·
2115 阅读 ·
4 点赞 ·
0 评论 ·
10 收藏

HBase运行机制概览

HBase运行机制概览
原创
发布博客 2020.08.21 ·
288 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Junit单元测试简要总结

Junit单元测试文章目录Junit单元测试简介常用注解使用参数化测试其他简介单元测试在开发中占据很重要的地位,它能发现问题,提高效率,在java中应用最广泛的单元测试框架就是Junit,它被集成在了多个框架或者工具中,例如IDEA、Spring等。通常我们使用注解的方式使用Junit。常用注解注解描述@Test注解于方法上,表示作为测试案例@Before注解于方法上,在每一个注解案例运行前,都会执行此方法@After注解于方法上,在每一个注解案例执行后,都
原创
发布博客 2020.08.21 ·
1415 阅读 ·
1 点赞 ·
0 评论 ·
3 收藏

HBase基础笔记

文章目录优质博客特点架构HMasterHRegionServer对外提供的接口zookeeper数据模型存储shell命令脚本使用hbase脚本java api操作表操作数据优质博客https://juejin.im/post/5c666cc4f265da2da53eb714http://hbasefly.com/https://hbase.apache.org/book.htmlhbase是一个运行与、于hadoop上的分布式,可扩展,多版本,大数据存储的非关系型数据库。具有广泛的使用场景。
原创
发布博客 2020.08.15 ·
413 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

springcloud-链路追踪skwalking

文章目录简介原理简介搭建下载服务端配置数据持久化方式MySQL数据自动清理告警配置客户端UI简介在一个微服务中,链路追踪能够准确监控所有调用链路,从而定位慢调用,失败调用。简介skywalking是分布式系统的应用程序性能监视工具,专为微服务、云原生架构和基于容器(Docker、K8s、Mesos)架构而设计。发起者是吴晟,现在是Apache项目。官方文档原理简介skywalking分为四个部分:探针,平台后端,存储,UIProbes,探针,探针因使用的语言不同而不通,收集数据并且格式
原创
发布博客 2020.08.01 ·
1464 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

SpringCloud-链路追踪sleuth

文章目录版本说明简介术语Zipkin示例启动zipkin依赖配置文件验证使用rabbitmq进行链路数据传输(可选)日志收集(可选)Elasticsearch+Kibana+Logstash在分布式系统中,链路将总是十分重要。版本说明组件版本说明zipkin2.12.9rabbitmq3.7.15erl10.4rabbitmq依赖elasticsearch6.5.3使用7.x会与zipkin冲突kibana6.5.3使用7.x会与zi
原创
发布博客 2020.08.01 ·
316 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

SpringCloud配置中心nacos

文章目录配置nacos使用mysql持久化解决不支持mysql8.x的问题登录问题依赖配置文件发布于获取配置发布获取启动类集群搭建nacos配置配置文件nacos的配置功能比springcloud原生的要强大,更简洁。配置nacos使用mysql持久化创建一个mysql数据库,例如create database nacos将nacos/cofn/nacos-mysql.sql中的sql语句在该数据库中执行。修改nacos/conf/application.properties,在文件之后追加
原创
发布博客 2020.08.01 ·
488 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

SpringCloud注册中心nacos

文章目录nacos简介下载安装服务注册于发现依赖配置文件启动类集群配置部署nacosapplication.yaml其它参考为什么要使用nacos?nacos简介nacos=consul+config,既可以作为配置中心,还可以作为注册中心,并且具有web ui,可以在线优雅的进行配置,服务下线,监控等。减少组件的集合。Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据及流量管理。单论注册的功能来来说,它与co
原创
发布博客 2020.08.01 ·
240 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

SpringCloud注册中心Consul

文章目录简介下载安装单机版搭建依赖配置文件启动类效果集群搭建consul参数agent参数vs others参考既然eureka不再维护,那么我们可以考虑其他的组件,比如consul。consul生态很好。简介Consul的主要特点是:服务发现:Consul的客户可以注册服务,并且其他客户可以使用Consul来发现给定服务的提供者。使用DNS或HTTP,应用程序可以轻松找到它们所依赖的服务。运行状况检查:Consul客户端可以提供任意数量的运行状况检查,这些检查与给定服务(“是Web服务器返回2
原创
发布博客 2020.08.01 ·
181 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏
加载更多