- 博客(117)
- 资源 (61)
- 收藏
- 关注
原创 多线程之CompletableFuture和ParallelStream应该使用哪个?
CompletableFuture 和Parallel Stream都是异步并发的利器。既然两者都可以实现异步并发,那么就带来一个问题:什么时候该使用哪个呢?哪个场景下使用哪个会更好呢?这篇文章带你看看CompletableFuture与Parallel Stream的比较,从而可以由此知道什么场景下使用哪个。
2021-09-23 17:11:36 1944
原创 IntelliJ IDEA常用的插件
Idea中好用的插件推荐,用了都说好,你还在等什么呢?别让一些机械化的操作来浪费你宝贵的时间,使用起来吧!!!
2019-09-10 18:14:22 9829 6
原创 使用OkHttp发送POST请求的几种方式
本文介绍 OkHttp 客户端的基本用法。包括 OkHttp 3.x 版本中发送Post请求的几种方式
2023-08-10 17:27:06 2479
原创 SpringCloud与SpringBoot 版本不匹配
org.springframework.cloud.client.discovery.health.DiscoveryCompositeHealthIndicator.<init>(DiscoveryCompositeHealthIndicator.java:42)
2022-04-24 19:38:33 1010
原创 JMM-Java内存模型
JMM-Java内存模型定义CPU和缓存一致性指令重排序原理JMM解决的问题定义JMM即Java内存模型(Java memory model),在JSR133里指出了JMM是用来定义一个一致的、跨平台的内存模型,是缓存一致性协议,用来定义数据读写的规则。CPU和缓存一致性现代计算机硬件架构的简单图示:多CPU:一个现代计算机通常由两个或者多个CPU。其中一些CPU还有多核。从这一点可以看出,在一个有两个或者多个CPU的现代计算机上同时运行多个线程是可能的。每个CPU在某一时刻运行一个线程是
2021-10-15 10:16:35 373
原创 JMM的happens-before的原则
本人是在并发场景下通过单例模式使用volatile关键字,在学习 volatile的 内存语义实现原理时了解到了 JMM 解决指令重排其实是定义了一项 happens-before 规则,所以我今天就喝大家来一窥究竟,来看下为什么需要指令重排序?到底happens-before原则是什么?这样设计有什么好处?
2021-09-26 11:16:38 257
原创 Redis实战之SortedSet篇(游戏充值排行榜)
缓存中间件Redis拥有许多丰富、重要且有趣的数据结构,之前文章介绍的字符串String、列表List和集合Set便是其中的佼佼者,本文以及后续篇章介绍的有序集合SortedSet和哈希Hash数据结构亦是如此,毫不夸张的说,当我们谈及Redis的应用场景时,这几种数据结构几乎都会涉及。本文我们将以命令行和代码的形式继续认识一下Redis的有序集合SortedSet。
2021-08-19 15:59:27 426
原创 Redis的使用场景有哪些?
Redis使用场景Redis常用数据类型String常用命令应用场景实现方式Hash常用命令应用场景实现方式List常用命令应用场景实现方式Set常用命令应用场景实现方式Sorted Set常用命令:使用场景:实现方式:Pub/SubTransactionsRedis使用场景发布与订阅限制网站访客访问频率监控变量在事务执行时是否被修改计数存储社交关系反spam系统用户Timeline/Feeds最新列表&排行榜消息通知队列显示最新的项目列表特定时间内的特定项目实时分析消息队列缓存手机验证码Redi
2021-08-18 14:55:57 995 1
原创 InnoDB和MyISAM存储引擎的区别
InnoDB和MyISAM区别概念InnoDBMyISAM区别1、事务2、外键3、索引4、锁5、存储文件概念InnoDBMyISAM区别1、事务InnoDB支持事务,MyISAM不支持,对于InnoDB每一条SQL语言都默认封装成事务,自动提交,这样会影响速度,所以最好把多条SQL语言放在begin和commit之间,组成一个事务。2、外键InnoDB支持外键,而MyISAM不支持。对一个包含外键的InnoDB表转为MYISAM会失败3、索引InnoDB是聚集索引,使用B+Tr
2021-08-16 16:24:13 230
原创 AtomicBoolean
AtomicBoolean的使用为什么使用AtomicBoolean?如何使用AtomicBoolean?AtomicBoolean源码分析为什么使用AtomicBoolean?我们平时一般都是使用的boolean来表示布尔变量,但是在多线程情况下boolean是非线程安全的。为什么是非线程安全的呢?我们看下面的这个例子:private volatile Boolean flag = false;publich void test() { synchronized(flag) { /
2021-07-15 17:16:50 2150 1
原创 mac下Idea提高开发效率的快捷键
作为开发人员,刚从windows转向使用mac会非常不适应,因为开发工具的快捷键变了,因此特意整理了一点点快捷键适合使用Idea开发工具的你,mac下Idea提高开发效率的快捷键!!!
2021-03-02 14:35:01 360 1
原创 JDK8新特性之Optional
Java8新特性之OptionalOptional简单介绍方法源码具体使用为什么要使用Optional?总结Optional简单介绍Optional类(java.util.Optional)是一个容器类,代表一个值存在或不存在,原来用null表示一个值不存在,现在使用Optional类可以更好的表达这个概念,并且它还可以避免空指针异常。方法源码of /** * 创建一个Optional容器 * Returns an {@code Optional} with
2021-01-19 17:54:17 508
原创 GraphQL初体验
GraphQL 是一个用于 API 的查询语言,是一个使用基于类型系统来执行查询的服务端运行时(类型系统由你的数据定义)
2021-01-11 17:16:48 600 2
原创 ArrayList底层源代码分析
一、前言ArrayList就不赘述了,线程不安全、底层数据结构是数组、查询快、增删慢等等二、源码分析ArrayList的初始容量?ArrayList的扩容规则? /** * Shared empty array instance used for default sized empty instances. We * distinguish this from EMPTY_ELEMENTDATA to know how much to inflate wh
2020-09-16 14:44:42 156
原创 深入了解Redis
前言: Redis有那些数据类型?String,List,set,zset,hash 没了?还有HyperLogLog,bitMap,GeoHash,BloomFilter 就这? 百分之九十以上的人都能回答上来那五种基本数据类型吧,但要是这样回答面试官,怕不是回家等通知啦。 一场面试少说都是半小时起步上不封顶,你这样一句话就回答了这么重要的五个知识点,这个结果是你想要的么?是面试官想要的么? 面试官如果问:Str...
2020-09-09 11:02:22 180
原创 mysql数据库建表规范以及注意事项
mysql数据库建表规范以及注意事项一、 表设计规范库名、表名、字段名必须使用小写字母,“_”分割。 库名、表名、字段名必须不超过12个字符。 库名、表名、字段名见名知意,建议使用名词而不是动词。 建议使用InnoDB存储引擎。 存储精确浮点数必须使用DECIMAL替代FLOAT和DOUBLE。 建议使用UNSIGNED存储非负数值。 建议使用INT UNSIGNED存储IPV4。 整形定义中不添加长度,比如使用INT,而不是INT(4)。 使用短数据类型,比如取值范围为0-80.
2020-08-26 17:41:42 4345
原创 Spring定时任务@Scheduled注解使用配置方式(cron表达式、fixedRate和fixedDelay)
Spring定时任务@Scheduled注解使用配置方式(cron表达式、fixedRate和fixedDelay)序言:个人推荐一个很方便的在线Cron生成器(网页版):https://qqe2.com/cron/index一、前言spring的@Scheduled定时任务相信大家都是十分熟悉。最近在项目开发过程中发现了一些问题,写篇文章,和大家分享一下。结论在最后,想直接看的可以拉到最后。二、使用@Scheduled的使用方式十分简单,首先在项目启动类添加注解@E..
2020-05-28 15:53:12 17230 2
原创 RocketMQ报错:Cannot open file /dev/shm/rmq_srv_gc.log due to No such file or directory
RocketMQ之Mac访问权限问题:Cannot open file /dev/shm/rmq_srv_gc.log due to No such file or directory导致原因:mac中/dev路径下没有创建文件夹的权限sunhuideMacBook-Pro:dev root# mkdir shmmkdir: shm: Operation not permittedsunhuideMacBook-Pro:dev root#解决办法:将bin目录下的runs..
2020-05-19 11:40:42 1690 2
原创 Nginx配置文件详解(安装|配置|说明)
一、安装Nginx准备工作:安装好gcc、 openssl-devel、 pcre-devel和zlib-devel软件库。安装命令:wget http://nginx.org/download/nginx-1.0.14.tar.gztar zxvf nginx-1.0.14.tar.gz./configure --with-http_stub_status_module --p...
2020-03-31 11:12:48 202
马士兵高并发课程实例代码
2023-07-03
互联网软件开发-爬虫实战项目-python开发语言
2023-03-16
Java后端高级面试题(详细概念+试题).pdf.zip
2021-03-03
互联网软件开发-java开发程序员-java8开发实战pdf文档
2021-03-03
dcoker容器环境的使用.doc.zip
2021-03-03
调用接口使用js实现api支付和退款.zip
2020-06-11
全世界各个国家和地区的数据库SQL脚本,中英文以及中文拼音三译(全面)
2019-11-07
shiro的所有jar包
2019-01-17
Jackson的jar包
2018-12-29
互联网软件开发-Java开发手册-阿里规范手册
2018-12-20
boot2docker
2018-12-02
互联网软件开发-毕业设计-购物系统pdf文档
2018-10-10
mybatis-spring的jar包和源码包
2018-10-05
dbcp的jar包和源码包
2018-10-05
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人