- 博客(106)
- 资源 (7)
- 收藏
- 关注
原创 RabbitMQ(二) - RabbitMQ与消息发布确认与返回、消费确认
SpringBoot与RabbitMQ整合后,对RabbitClient的“确认”进行了封装、使用方式与RabbitMQ官网不一致;
2023-08-05 00:35:03 2450
原创 RabbitMQ(一) - 基本结构、SpringBoot整合RabbitMQ、工作队列、发布订阅、直接、主题交换机模式
通过官网,业务开发相结合,理解RabbitMQ使用场景
2023-08-04 01:14:14 1348
原创 Docker(一)-安装、架构、业务开发常用命令、Dockerile、镜像卷、镜像仓库
当client 通过pull命令去Docker daemon拉取镜像image时,首先查看images中存不存在对应的镜像, 如果服务端没有, 那么就会去Docker REgistry镜像仓库中拉取一个image镜像到本地(如果仓库中没有,那么通过命令buid创建一个镜像),然后通过run命令创建容器。指定挂载点,该指令使容器中的一个目录具有持久化存储的功能,该目录可被容器本身使用,也可共享给其他容器。当容器中的应用有持久化数据的需求时可以在 Dockerfile中使用该指令。
2023-08-20 21:55:05 697
原创 RaabitMQ(三) - RabbitMQ队列类型、死信消息与死信队列、懒队列、集群模式、MQ常见消息问题
这是RabbitMQ最为经典的队列类型。在单机环境中,拥有比较高的消息可靠性。经典队列可以选择是否持久化(Durability)以及是否自动删除(Auto delete)两个属性。Durability有两个选项,Durable和Transient。Durable表示队列会将消息保存到硬盘,这样消息的安全性更高。但是同时,由于需要有更多的IO操作,所以生产和消费消息的性能,相比Transient会比较低。
2023-08-06 17:36:00 1236
原创 MQ(一)-MQ理论与消息中间件简介
Producer和Consumer他们的运行状况互不干涉,没有Consumer,Producer一样正常运行,反过来也一样。也就是说,推送Producer和Consumer正常工作的,只有发布的这些事件。若是想搭建监控中心、监控多个SpringBoot应用的运行信息, 因为跨服务、无法通过SpringBoot事件机制完成、所以需要一个中间服务、负责转发接收和转发这些SpringBoot的应用信息;SpringBoot会将自己应用过程中发生的每一个重要的运行步骤都通过事件发送出来,全都在一个内部服务进程内;
2023-08-03 14:46:50 166
原创 PostgreSQL 简洁、使用、正排索引与倒排索引、空间搜索、用户与角色
PostgreSQL 功能比MySQL强大一些, 语法上接近, crud学起来很快;同样拥有唯一索引,普通索引,哈希索引, 另外多了GIN,GIST索引的新特性, 业务场景更加广泛了;oracle是要钱的, PostgreSQL是免费的, 未来严格的企业场景中,Oracle占比会越来越少,逐渐被PostgreSQL替代;Mysql + PostgreSQL 以后是潮流,开发者必须要懂这两块;以后还有进阶内容,需要不断学习;
2023-07-28 19:29:00 1741
原创 HJ10 字符个数统计 NC68.跳台阶 HJ17.坐标移动 HJ20.密码验证合格程序 HJ23.删除字符串中出现次数最少的字符
描述编写一个函数,计算字符串中含有的不同字符的个数。字符在 ASCII 码范围内( 0~127 ,包括 0 和 127 ),换行表示结束符,不算在字符里。不在范围内的不作统计。多个相同的字符只计算一次例如,对于字符串 abaca 而言,有 a、b、c 三种不同的字符,因此输出 3。输入描述:输入一行没有空格的字符串。输出描述:输出 输入字符串 中范围在(0~127,包括0和127)字符的种数。示例1输入:abc输出:3。
2023-07-19 22:40:08 114
原创 HJ5 进制转换 、NC61 两数之和、HJ3 明明的随机数
题目描述写出一个程序,接受一个十六进制的数,输出该数值的十进制表示。输入描述:输入一个十六进制的数值字符串。输出描述:输出该数值的十进制字符串。不同组的测试用例用\n隔开。示例1输入:0xAA输出:170好久没做编程题了,感觉回到了刚学变成的时候,Java API 太强大了,包罗万象;通过答案一:使用JavaAPI Integer.valueOf(xx, 进制);
2023-07-18 18:24:28 455
原创 Redis通讯协议Resp
RESP是REdis Serialization Protocol的简称,也就是专门为redis设计的一套序列化协议.这个协议其实在redis的1.2版本时就已经出现了,但是到了redis2.0才最终成为redis通讯协议的标准。
2023-07-02 21:16:52 631
原创 jdk20-虚拟线程简单了解
jdk的平台线程和操作系统的线程处于两钟不同的状态,前者属于用户态, 后者属于内核态, 虽然jdk的平台线程和os的线程存在映射关系, 但是操作系统调度线程后,需要从内核态切换到用户态,若JDK创建大量平台线程,这个状态切换过程是会耗费时间;jdk实现虚拟线程、虚拟线程是用户进程中,属于用户态,由JDK调度,因此不存在状态切换,性能上会有所提高,这种在操作系统中好像被称为“协程”。虚拟线程由JDK进行调度, JDK中每个平台线程可以运行不同的虚拟线程;一个虚拟线程在不同时间段可在多个平台线程上中运行;
2023-05-11 10:43:31 982 1
原创 Dubbo学习记录(二十)-服务调用【六】 - 服务提供者处理请求的调用流程
同志们,我们只有一条出路那就是胜利!还有另一条出路,死亡,死亡不属于工人阶级!
2022-05-08 16:28:00 843 2
原创 Dubbo学习记录(十九)-服务调用【五】 - 服务消费者调用流程分析;
同志们,我们只有一条出路那就是胜利!还有另一条出路,死亡,死亡不属于工人阶级!
2022-05-04 15:56:04 1115 16
原创 Dubbo学习记录(十八)-服务调用【四】-服务消费端启动Netty客户端、Cluster扩展点
同志们,我们只有一条出路那就是胜利!还有另一条出路,死亡,死亡不属于工人阶级!
2022-05-03 11:50:40 381 4
原创 Dubbo学习记录(十七)-服务调用【三】- 服务消费端Invoker的包装
同志们,我们只有一条出路那就是胜利!还有另一条出路,死亡,死亡不属于工人阶级!
2022-05-02 17:46:27 576 1
原创 Dubbo学习记录(十六)--服务调用【二】 - Invoker的调用、ProxyFactory、Protocol、Filter,Exchanger, Transporter扩展点
我们只有一个结果,那就是胜利, 还有另外一个结果, 就是死亡, 死亡不属于工人阶级。
2022-05-01 21:36:49 1111
原创 AES,RSA, SHA1简单工具类
一些简单工具类AES算法工具类: <dependency> <groupId>cn.hutool</groupId> <artifactId>hutool-all</artifactId> <version>5.7.18</version> </dependency>扒拉过去直接使用:/** * @a
2022-01-28 15:43:57 3459 2
原创 Redis使用 ,异常处理, 杂七杂八的小结
Redis常用小结缓存一致性问题所有操作都应该先操作DB,再操作Redis;先更新DB,再删Redis; 只能减少不一致发生的概率;需要设置过期时间;先添加DB,再添加Redis;查询先查Redis, 查不到,再查DB, 查不到就得防止缓存击穿, 查到就放入缓存, 查不到就创建一个对象放入缓存,防穿透缓存并发虽然使用缓存速度比DB快,但有些接口, 因为业务逻辑复杂, 不得不多次查询Redis, 像每次与Redis交互差不多需要50ms,如果不可避免的需要交互10次,甚至更多, 这样算下来,
2022-01-28 14:44:16 2656 3
原创 Redis核心数据结构ZSET、GeoHash 、 Stream--排行榜、消息Pull推送、附近搜索、布隆过滤器 、IM聊天室
ZSET、Geo 、 Streamredis zset数据结构常用命令排行榜步骤一、初始化1个月的历史数据步骤二:定时刷新数据步骤3:排行榜查询接口GeoHash命令附近酒店搜索实现关注Pull推送PULL 与PUSH的差别pull 技术方案redis zset数据结构zset 是 set 的一个升级版本,它在 set 的基础上增加了一个顺序属性,它和 set 一样,zset也是 string 类型元素的集合,且不允许重复的成员,不同的是每个元素都会关联一个 double类型的 score。集合是通
2021-10-03 23:29:31 4227 9
原创 Redis核心数据结构List应用场景-商品列表、缓存击穿、PV阅读量、抢红包、推送帖子、普通分布式锁、Redis可重入锁与红锁
List应用场景Redis之List一、 Redis list命令实战二、商品列表高并发的淘宝聚划算实现技术方案SpringBoot+Redis实现商品列表功能二、缓存击穿什么是缓存击穿解决缓存击穿问题缓存击穿实现三、抢红包微信抢红包的技术实现原理SpringBoot+Redis实现抢红包PV阅读量二级缓存的高并发微信文章的阅读量PV技术方案SpringBoot+Redis实现高并发PV阅读量四、推送帖子发微博、帖子、文章push消息基于push技术,实现微博个人列表基于push技术,实现微博关注列表优化
2021-09-21 16:27:24 642 6
原创 Redis数据结构Set应用场景--黑名单校验器、京东与支付宝抽奖、微博榜单与QQ群的随机展示、帖子点赞、关注与粉丝、微关系计算、HyperLogLog的入门使用
Set应用场景set命令使用淘宝黑名单一、黑名单过滤器业务场景分析二 、解决的技术方案三、SpringBoot+redis模仿实现校验器京东京豆抽奖一、京东京豆抽奖的业务场景分析二、京东京豆抽奖的技术方案三、SpringBoot+Redis 实现京东京豆抽奖支付宝抽奖二、支付宝抽奖的技术方案SpringBoot+Redis 实现支付宝抽奖微博榜单与QQ群的随机展示一、随机展示业务场景分析二、随机展示的redis技术方案三、 SpringBoot+Redis 实现高并发随机展示微博榜单的随机展示业务场景分析S
2021-09-12 11:56:52 496 12
原创 Redis数据结构Hash应用场景-存储商品、购物车、淘宝短链接、分布式Session、用户注册、发微博功能
Hash应用场景HashHash应用场景redis存储java对象常用String,那为什么还要用hash来存储?SpringBoot+redis+hash存储商品数据短链接场景1:淘宝短信SpringBoot+Redis《短链接转换器》代码购物车SpringBoot+Redis模拟购物车京东购物车分布式Session一、Session有什么作用?二、Springboot实现用户登录session管理功能三、存在的问题四、SpringSession+redis解决分布式session不一致性问题五、分析Sp
2021-09-11 13:33:25 3540 8
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人