自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

削尖螺丝刀的钉文

Life is for living

  • 博客(57)
  • 资源 (1)
  • 问答 (1)
  • 收藏
  • 关注

原创 [ 英语 ] 马斯克抱水槽“入主”推特总部中那句 Let that sink in 到底是什么梗?

这么多 Native Speaker 点赞的内容好像全世界都知道就我一个文盲不懂一样...

2022-10-27 11:12:35 11775 9

原创 [ 设计模式 ] 彻底搞懂建造者模式(生成器模式) —— 透彻理解

    看完这张图后来一个对 Builder 的实现类,到 Director 完成构造,然后末尾附上几句 雷同解释,有种似懂非懂,飘飘然是欲仙又欲shi的感觉(此处可省1w字)~     如果觉得没飘够的可以继续飘一会,反之请忘掉上面的一切吧,跟随刀哥脚步以迅雷不及掩耳盗驴般的速度,绕左门而进,深入探索如何真正成为一名合格的 “建造者” !

2021-05-26 09:22:50 2269 15

原创 1024程序员节:庆祝程序员的奋斗历程

在计算机领域,“1024” 通常指的是 2 的 10 次方,即 1024,这是一个重要的计算单位。而互联网程序员,有许多人都走过了从代码的世界到创始人的成功之路,阿刀就收集了一些程序员大佬们的小故事,在这个特殊的日子里同大家分享,让我们现在就出发,一起走进程序员大佬们的蜕变历程 ~这些互联网程序员和创始人的背景故事展示了他们的坚韧、创新和坚持,以及他们在互联网革命中的杰出贡献。每年1024程序员节,互联网社区都会充满欢声笑语,人们分享着他们的编程技巧和经验,以及对互联网的热爱。

2023-10-24 20:27:03 200

原创 [ JVM ] 常用参数 & 优化参考

算机中三个关键指标cpu:因单位时间有限,所以由于业务逻辑不合理而出现瓶颈等...内存:数据可直接使用的暂存空间,GC会回收垃圾,但是GC配置不合理也有可能造成OOMIO(存储+网络):存储数据时持久化的IO过程,分布式多机部署时网络的IO过程。

2023-06-28 11:38:13 906

原创 [ Mysql ] 事务 非 事物

事务即并发,并发即事务 ]特点——原子性、一致性、持久性、隔离性。原子性是基础,隔离性是手段,一致性是约束条件,而持久性是我们的目的。原子性:一个事务中是可以包含很多SQL语句的,那么原子性就规定了,这个事务中的所有SQL语句必须全部执行成功才能提交,反之全部回滚,提交失败。因为有任何一条语句的异常都会导致这条事务不完整。一致性:数据库在进行事务操作后,会由原来的一致状态,变成另一种一致的状态。

2023-06-27 00:02:03 329

原创 [ 经验分享 ] CSDN铁粉系统之 —— 什么是铁粉?如何获得铁粉?

首先什么是铁粉?铁粉指的是在过去一段时间内对博主产生高质量互动的具有一定水平的粉丝。他们积极阅读、购买专栏或进行其他形式的互动,并且其原力等级达到一定要求 —— 具体为在过去N个月内对博主有高质量互动并具备一定水平的粉丝。这一规则旨在区分真正有价值的粉丝和所谓的“僵尸粉”。那么为什么设置铁粉呢?随着用户关注的增加,博主的粉丝数量可能会快速上升。但我们需要明确这些粉丝中哪些是有价值的,哪些是真正与博主有高质量互动的粉丝。

2023-06-07 14:18:02 647

原创 [ Term ] 你真的了解 UTC 时间吗?它和 GMT 时间的区别是什么?

GMT(Greenwich Mean Time)和UTC(Coordinated Universal Time)是两个不同的时间标准,但它们非常相似并且通常被混淆使用,那他们之间的区别在哪呢 ?

2023-06-01 11:07:38 11782 6

原创 [ 英语 - 特别收录系列 ] 语法重塑专栏 之 时态 (Tense) —— 英语兔学习笔记(3)

哎,一篇笔记被人问的有种催更的感觉,着实让我有点潸然泪下了,对不起各位爱学习的观众姥爷了(这不立马就用午休的时间补上一篇的学习内容)。 总之承蒙厚爱,感谢感恩! 感觉自己快要变成一个英语分享博主了 (不是很情愿), 此刻心里五味杂陈 ......

2023-03-14 13:09:56 3331 6

原创 [1024 活动] 开谈笔记

哈哈,又是一年 1024,正想着今年写些什么来纪念好呢,个人笔记的总结?还是过去生活的琐碎?直到不经意间打开了官方 1024主题直播,然后顺手记下了四位大佬的语录才突然发现,哎哟,这新鲜干燥的内容不就来了嘛?

2022-10-24 21:57:42 464

原创 解决 Pocess finished with exit code 1 Class not found 和 Command line is too long. Shorten the command

解决 Pocess finished with exit code 1 Class not found 和 Command line is too long. Shorten the command 问题

2022-08-09 11:08:19 1423

原创 我的创作纪念日

一般像这种稍微 “特殊” 一点的官方内容,我都是抱着猎奇的心态看一看便关闭了。所以在打开内容的那一刻我就预感到了结局。但这次我的预感明显错了,为什么?原因有二,我先说其一吧,我想你仔细看上方的图也能看到了 —— “周年纪念勋章” !?...........................................................................................................................

2022-06-20 23:51:28 283 4

原创 [ 英语 - 特别收录系列 ] 语法重塑专栏 之 动词分类 —— 英语兔学习笔记(2)

语法体系很多种, 最终还是对语言的描述,这不是一个精确的科学,而是一个总结出来的广义上的参照物,你完全也可以自己发明一些专业名词来描述一门语言,但这没意义,我想说的是,不要去死记和类似法律一样的研究这些东西,重点是在宏观层面掌握主要的一些概念,并加以运用,在后期不断的语料输入和练习中得到提高.........

2022-06-05 21:42:44 668

原创 [ 英语 - 特别收录系列 ] 语法重塑专栏 之 英语学习的核心框架 —— 英语兔学习笔记(1)

重塑英语语法,这里是关于英语兔的学习笔记,废话不多说,下面开始直入主题,从框架综述开始拆分拆分简单句(Simple Sentence)拆到最细的【简单句】,核心概念就是 【什么 + 怎么样】,而 什么 和 怎么样 分别对应两个关键的【句子成分 (Clause Elements)】 ,即 —— 【主语(subject) 】+ 【谓语(predicate)】 —— 换句话说,几乎所有句子结构拆分到不能拆的最底层逻辑,都是 【主语(subject) 】...................

2022-05-30 00:00:10 3031 9

原创 [ Druid ] 源码拆解 —— 2. 连接是如何创建的 ?

我们之前分析源码的时候,说道了源码中关键的两个方法,分别是createAndStartCreatorThread() 和 createAndStartDestroyThread(),他们分别代表了连接的创建和销毁逻辑,我们上次从整个流程提炼出来,并对销毁逻辑做了拆解,这次我们再补齐对连接的创建逻辑的内容:创建连接任务的主要流程如下:[ 创建链接的核心流程 ]0.入口...

2022-05-17 23:43:36 449

原创 [ Java ] 到底什么是 SPI ?

昨天在和我的小伙伴探讨Druid源码的时候,他提出了一个问题,问题是这样描述的:DruidDataSource#getConnection中的 init 执行 DruidDriver.getInstance 的时候是如何把其他驱动注册的,也就是下面这里: public void init() throws SQLException { if (inited) { return; } ...

2022-05-15 23:21:14 359

原创 [ 并发编程 ] 产生死锁的 —— 四大必要条件 和 解决方案

什么是死锁 ? 一般 “死”字我们生活中都是避讳的,而这字偏偏又搭上一个 “锁” 字,就好像好像你永远也解不开你暗恋对象心中的那把锁一样...好了,意思大概这么个意思,就是死锁是让人很头疼的东西,但是女神的死锁解不开,并发编程中的锁却是有办法可解的...我们来看看对死锁比较广泛的一个解释:死锁是指两个或两个以上的...

2022-05-14 17:26:06 511

原创 [ Druid ] 源码拆解 —— 3. 连接池到底是如何做到 收缩的 ?

上篇文章从 Druid 的入口了解了它从初始化到创建获取链接,然后到最终销毁的过程,但还有一块没有细说,那就是 Shrink ,它的英文本意有一层缩水的意思,没错就像你新买的牛仔裤洗完就缩水了。但是这里的缩水明显更加智能,它是池化的一项必备技能,你可以在各种池化工具中看到它的身影 。同时上篇文章中有提到各种参数的初始化,我们这里再从 Druid 官方文档 来看看,主要的配置参数都有哪些: 配置 缺省值 ...

2022-05-13 12:30:14 394

原创 [ Druid ] 源码拆解 —— 1. 初始化过程的全局概览

说到数据库连接池,一定绕不过的坎就是 JDBC, 本文对源码的拆解阅读,默认读者已经了解JDBC,此处只做简单概括,略微回忆,如果已经掌握请直接跳至Druid源码拆解的部分:JDBC (全称: Java Database Connectivity)—— 它代表了 Java数据库连接,是你代码逻辑到一切数据库的直接桥梁。我们可以简单鸟瞰一下JDBC的架构和对应的API核心组件。JDBC API提供以下接口和类 :DriverManager:此类管理数据库驱动程序列表

2022-05-12 10:20:36 829

原创 [ 英语 ] 如何解决那些让人恼火的介词?

介词 —— 从下面这张英语中出现频率最高的词可以看到,绿色部分大部分都是介词,由此可看出,介词是一个学习性价比很高的词 ( 无法单独存在,主要用来体现时间、空间、方式、逻辑{原因;目的;对象...}...关系的 前置词 )我们首先来看看介词的构成:简单介词: on / in / at ... 短语介词(视作介词;同样无法脱离整句,单独表达完整意义): by way of 通过 ... 方式 at the end of 在...的最后 along with 和...一起.

2022-05-04 16:00:31 860

原创 最全JAVA字符串格式化-String.format()的使用 [记录贴]

总结的比较完整,不转载,索性留下机票记录 (这里指留下主要对应表格)https://blog.csdn.net/lonely_fireworks/article/details/7962171/ 转  换  符 说    明  示    例 %s 字符串类型 "mingrisoft" %c 字符类型 'm' %b 布尔类型 true %d 整数类型(十进制) 99 %x 整数类型

2022-04-26 14:10:45 535

原创 [ ElasticSearch ] 螺丝刀学习笔记之 —— ElasticSearch(7.0UP学习概览)

在此1024广大猿人欢度佳节之际,作为广大猿族的一员怎能不拿出点东西庆祝庆祝呢?这不,压箱底的两篇学习笔记其中之一 —— ElasticSearch学习概览,就此 JI 出 ~~ , 欢迎各位猿友交流指正。 什么是ES?ES是一种开源、RESTful(隐藏了Lucene的复杂性)、可扩展的基于文档的搜索引擎,它构建在Lucene库上。用户通过JSON格式的请求,使用CRUD的REST API就可以完成存储和管理文本、数值、地理空间、结构化或者非结构化的数据。一句话简述: 实施分布式搜索.

2021-10-24 22:39:44 2349

原创 [ JVM ] 螺丝刀学习笔记之 —— 重学JVM概览

这里是螺丝刀本人在学习儒猿JVM专栏时,结合自己理解对一些重点概览做的提炼总结,方便学习和记忆,欢迎感兴趣的同学一起学习探讨。JVM是如何运行JAVA文件的?Java文件在打包成jar或者war后会变成Class文件,在容器里面调用JVM,时候就会加载class文件加载的过程: 加载 —— 连接(校验,准备(在这里会设置内存空间,并给static赋默认值,finalstatic直接赋值放在常量池,这个必须记住),解析) —— 初始化(在这里会调用静态方法) —— 使用 —— 销毁加载方式:.

2021-10-24 22:20:27 1670

原创 如何在另一台电脑克隆自己的同一个GitHub中已设好秘钥的私有仓库?

描述: 我们都知道GitHub的私有仓库是有设置秘钥的,那一堆跟着教程来复杂繁琐的操作早已忘记。今天本人突然要到另一台电脑克隆本人自己的git私有仓库,发现报权限错误了,于是就开始了如题所示的探索之路…解决方案:大道至简,找到之前那台已经配置好秘钥的电脑中的秘钥地址,把里面的信息全部copy出来,赋值在新的一台准备克隆自己私有地址的电脑上的秘钥文件夹里(具体步骤如下所示):查看秘钥文件夹: 在git bash 中 执行 cd ~/.ssh 命令,进入秘钥文件夹(ls命令可看到里面的东西.

2021-10-18 22:17:05 1587 1

转载 一文带您了解微服务的前生今世

一、微服务的现状及未来 1.服务架构的演变 1.1 单体架构   单体架构应该是我们最先接触到的架构实现了,在单体架构中使用经典的三层模型,即表现层,业务逻辑层和数据访问层。   单体架构只适合在应用初期,且访问量比较下的情况下使用,优点是性价比很高...

2021-07-09 14:48:43 246

原创 解决IDEA报 Cannot resolve symbol问题

如果你再网上所有主流的解决方案(如pom设置啊,maven缓存清空啊等)都没成功的话,那就试试这个吧。把.idea文件夹删除关闭IDEA,然后重新开启项目,重新把当前项目加载成Maven项目执行IDEA的Reload All Maven Projects(也就是那个Maven选项中的那个刷新按钮)...

2021-07-08 10:16:46 1928

原创 [ Redis ] 从一致性哈希算法说起,到 RedisCluster 集群的介绍

前言: 哨兵管理下的主从复制只做到了对一台Redis的高可用,本质上只存有一台机的数据容量。 —— 那么如果海量数据量超过了这台机器的容量呢? 你也许想到了,再对哨兵管理下的读写分离做集群。但是这个集群该怎么做呢?   最简单的做法,就是哈希分片(你可以类比HashMap) —— 原本所有数据是存在一个小规模读写分离集群上的。当数据超过这个小规模集群的时候。我们就应该做大规模集群了。这时候我们把这个小规模集群看成一个分片。配置多个这样的分片,然后通过哈希算法+对分片个数取模(.

2021-06-17 13:06:12 587 7

原创 [ Redis ] 主从复制、读写分离、哨兵、集群的原理分析和配置关注点

前言: 要理解Redis大规模集群的由来,就必然跨不过理解哨兵和主从复制的由来以及存在的缺陷,不管谁学习这几个知识点都逃不过这个顺序… 一、主从复制 + 读写分离现在的公司项目如果有Redis那么一定是集群的,再差再差也会有三台主从复制的机器来保证Redis的可用性。就算内存有256G也不能全部作为Redis存储内存,单台Redis最大使用内存不应该超过20G【主从复制作用】注:Redis哨兵管理的主从复制最低配置 —— (奇数个)三个哨兵 + 一拖二(至少三个)的主从模式,具.

2021-06-17 13:05:11 319 1

原创 [ Redis ] AOF 和 RDB 的相关介绍以及相关配置

如果Redis用作纯缓存,则可直接禁用AOF和RDB模式,从而关闭不必要的开销。 一、RDB (RedisDataBase)简介意思就是将整个Reids的数据(通过二进制格式),持久化到磁盘里,注意 —— RDB是Redis默认的持久化机制 。工作原理:fork子进程(默认bgwrite模式下是这个,这样的话就不会阻塞请求了,因为还有主线程在工作)进行当前数据的二进制文件写入磁盘。每次都是对当前所有的数据进行二进制文件写入,然后会替换掉之前老的二进制文件。(这就有个风险,如果不做.

2021-06-15 15:37:17 10431 15

原创 [ Redis ] redis.conf 文件详解

   对于Redis.conf文件的了解很重要,和JVM、Mysql主从复制、Tomcat基础配置、Nginx配置一样,往往一些细节成就高手,那么要对Redis做集群或者一些基本网络配置,那么对这个Redis.config的了解必不可少 ,笔者将分为基操实战和配置详解两部分来剖析Redis的Config文件(也可直接跳到 配置详解 部分,了解redis.conf的详情)。 [ 基操实战 ]redis.config位于redis的解压包目录下,如下图我们一般把该配置文件copy到我.

2021-06-15 15:26:17 26190 13

原创 解决IDEA配置 Maven home directory (每次修改Maven仓库路径后都会被还原为默认配置)失效问题

当前版本是IDEA2020.2,出现的问题是 —— 不管多少次手动改动MavenHomeRepository 路径都会变回原本的默认路径,如下图位置(我已经改过来了,只是之前出现的问题位置就是这)解决方案:非常简单,删除项目.mvn下的wrapper下的maven-wrapper.properties文件 即可。   ........................

2021-06-06 18:52:26 12805 57

原创 [Git] 重学Git三剑客关键总结

 核心总结 在团队中使用Git的法则1:push前一定先pull2:合并代码必须两人结对3:合并冲突,非自己的变动保持原样,和自己冲突的代码找相应的代码提交人确认如何解决冲突4:合并完成后,保证本地能编译能运行再push5:【 合并到主干的代码必须通过测试,必须通过代码review 】6:【不同的功能从主干上拉新分支进行开发工作,开发完后确认无误再合并到主干】7:分支的命名需要加上,拉取人+拉取说明8:上完线的分支要及时清理也就是说,从主线打一个分支,然.

2021-06-06 11:10:41 758

原创 [ Git ] 重学Git三剑客

[ 概览 ]《 Git三剑客 》————————————————————————————————————Git:是Linux之父开发的 分布式 版本控制系统 。GitHub: 是对Git的一个封装,提供个人/组织等代码管理、搜索等服务。GitLab: 是对Git的一个封装,提供定制化的的代码管理、持续继承持续开发等全流程服务。[ 集中式管理系统 - 如SVN等 ][ 分布式管理系统 - Git ] 由上可知分布式的版本控制,不需要时刻连接服务端,不但解耦,操作也更方便

2021-06-06 11:01:22 501 6

原创 [ ElasticSearch ] 各种常规操作方法整理

本文为SpringBoot整合ElasticSearch后,对一些基本的操作方法做的整理,话不多说,直接上Code…???? ps: SpringBoot整合ElasticSearch1.首先我们新建一个测试实体类Productpackage com.example.demo;import lombok.AllArgsConstructor;import lombok.Data;import lombok.NoArgsConstructor;import lombok.ToString

2021-06-02 20:48:53 482 18

原创 [ ElasticSearch ] SpringBoot整合ElasticSearch

此文演示在IDEA下,SpringBoot整合ElasticSearch的整体流程,供大伙儿学习测试1.IDEA下选择新建Module2.选择版本3.选择版本 + 自定义名称4.选择需要的依赖(这里打钩的都选上即可)5. 自定义名称、路径6.Pom.xml中把ES版本改为和当前要操作的ES一致(比如我的是7.13.0)代码在此:<elasticsearch.version>7.13.0</elasticsearch.version>7.在prop.

2021-06-02 20:47:06 200 1

原创 [ Redis ] 小白入门 —— Redis在真实工作中是如何使用的?

WebServer时代大多在代码中使用Jedis直连来操作Redis服务器,所以人们都会针对Jedis在项目中封装一个工具类,但是微服务集成SpringBoot时代都是使用Lettuce(底层Netty,NIO模式),我们只需要关注RedisTemplate的使用就行了,但是SpringBoot默认的RedisTemplate有两个,一个是配置好的String型的Template(因为String类型多嘛)。如果我们要方便的使用更多数据结构,就必须提到另一个Spring提供的粗糙RedisTemplate.

2021-05-29 12:13:45 598 9

原创 [ Redis ] 有趣的知识又增加了之 —— 为什么Redis的有序集合 “Sorted Set“ 取名为ZSet?

https://stackoverflow.com/questions/64020570/why-redis-zset-means-sorted-set一直以为Redis的Zset中的Z是一个我不知道的特殊单词简写,直到我好奇去查这个Z的背景才发现,原来Z就是个Z,且听我娓娓道来 ???? ???? ???? …引用国外网友的回答:Hello. Z is as in XYZ, so the idea is, sets with another dimension: the order. It's

2021-05-14 16:48:27 746 7

原创 [ Java ] 超级大白话解释 —— 强引用、弱引用、软引用、虚引用(59.99秒懂)

前言: 万能的程序猿可以指定哪些不是垃圾不能被回收,哪些是普通的垃圾可以晚点回收,哪些是超级垃圾需立马被回收…[ 强引用 ]解释: 我们日常用 “=” 号 直接赋值的对象大都属于强引用,它被认为是必须用到的对象,哪怕是抛出OOM,GC也不会回收。( 如何中断强引用? 直接赋值为 null 即可,这时GC会认为对象无引用,可直接回收 ) [ 软引用 ]注意弱引用、软引用、虚引用和强引用的直接区别就是对象都要被一个Reference类包裹。举例: SoftReference.

2021-04-25 16:41:24 1183 4

原创 [Java] 线程池的创建方式 + 关键属性设置 以及 注意事项

今天看了一篇关于线程池源码的文章,写的很棒,在此推荐给大家,同时记录一下方便自己回看【线程池之ThreadPoolExecutor线程池源码分析笔记】,因源码部分早已弄懂,所以我更多关注的是实际使用时的需注意事项。一、创建线程池时候要指定与业务相关的名字,以便于追溯问题(通过重写ThreadFactory接口实现)我们都知道,线程池中的线程最终是通过ThreadFactory产出的,那么要改线程名字,势必要去了解下ThreadFactory的源码,话不多说,下面贴出源码:public Thre.

2021-04-25 11:31:19 785 3

原创 [UML] 类图介绍 —— 程序员(灵魂画手)必备画图技能之一

统一建模语言(Unified Modeling Language,UML) 可分类成:功能模型:从用户的角度展示系统的功能,包括用例图。对象模型:采用对象,属性,操作,关联等概念展示系统的结构和基础,包括类别图、对象图。动态模型:展现系统的内部行为。包括序列图,活动图,状态图。类图说到类图,它包含的东西确实有点多,你去网上看总能看到,同样都是类图,但是好像各有各家的章法,总让人摸不着头脑。要么少个箭头要么实线变成虚线了 … 那这个类图到底有没有标准呢?别慌,有的,《大话设.

2021-04-23 22:55:10 98469 30

原创 [UML] 时序图介绍 —— 程序员(灵魂画手)必备画图技能之一

统一建模语言(Unified Modeling Language,UML) 可分类成:功能模型:从用户的角度展示系统的功能,包括用例图。对象模型:采用对象,属性,操作,关联等概念展示系统的结构和基础,包括类别图、对象图。动态模型:展现系统的内部行为。包括序列图,活动图,状态图。时序图注意时序图的关键是整体按时间流程从上到下依次递减,观看的时候也要按整体递减的顺序一行一行看,而不是专注某一列递减来看 而且这个时序图的 复杂程度完全取决于你想展示多少细节,和其他UML图一个道理。时序图.

2021-04-23 16:31:04 5655 1

一个随意调整寸照大小的压缩工具

嫌PS下载太大太繁琐,或者其他工具太麻烦。那就用这个吧,暂用空间极小不到1M,且导入图片后自由调整压缩大小(建议压缩比70%),然后另存为即可

2022-09-14

一个可自由调整多层次设置的桌面倒计时软件

一个好用的PC端桌面倒计时软件,可用于各种倒计时记录,类似番茄时钟一样的功能,同时可便签式的自定义多种倒计时。

2022-08-28

最新全国省市区行政区划码SQL(依据官方GB-T2260更新到2020.12月)

省市区三级行政区划码,父子关系通用建表语句和最新数据 (依据官方GB-T2260更新到2020.12月),方便查询。 省市区查询下拉列表,行政区划数据内外部数据对接都可使用 —— 行政区划码是统一的传输依据 。

2022-06-22

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除