- 博客(31)
- 收藏
- 关注
原创 [Java] `JDK17` 模式变量 `Pattern variable` Variable ‘request‘ can be replaced with pattern variable
拥抱新技术,用就对了~oracle。
2023-10-08 08:30:00
804
3
原创 [bug] springboot jwt 认证错误JWT signature does not match locally computed signature. JWT validity canno
认证错误JWT signature does not match locally computed signature. JWT validity cannot be asserted and should not be trusted.
2023-10-07 21:47:03
464
原创 [leetcode 单调栈] 901. 股票价格跨度 M
设计一个算法收集某些股票的每日报价,并返回该股票当日价格的 跨度。当日股票价格的 跨度 被定义为股票价格小于或等于今天价格的最大连续日数(从今天开始往回数,包括今天)。例如,如果未来 7 天股票的价格是 [100,80,60,70,60,75,85],那么股票跨度将是 [1,1,1,2,1,4,6]。实现 StockSpanner 类:StockSpanner() 初始化类对象。int next(int price) 给出今天的股价 price ,返回该股票当日价格的 跨度。
2023-10-07 21:27:48
318
原创 [AIGC] Java序列化利器 gson
本篇文章主要介绍了Gson库,从是什么、为什么、怎么用三个方面进行了详细的介绍。在是什么部分,介绍了Gson库的作用和特点;在为什么部分,介绍了为什么要使用Gson库;在怎么用部分,介绍了如何配置Gson对象、将Java对象序列化为JSON以及将JSON字符串反序列化为Java对象等操作。本篇文章旨在帮助Java开发者更好地了解和使用Gson库,使得开发更加高效和便捷。
2023-10-07 21:03:14
588
6
转载 「提效脚本 redis」 使用Lua批量删除key
进行匹配所有的key,却没办法直接删除所有匹配的key。总体来说,这是一个用于删除 Redis 中所有已有。以删除 suggest* 开头的key为例。所以可以使用lua脚本进行增强。在redis里面可以使用。前缀的键值对的脚本。
2023-10-05 13:51:06
530
1
转载 [SpringBoot] aop 获取 request response
最近开发有一个需求需要在 aop 中获取request response ,搜索许久没有答案,故此记录📝~
2023-10-05 13:49:51
338
原创 [AIGC] Java 函数式编程
在本篇文章中,我们介绍了Java函数式编程以及常用的函数式接口。Lambda表达式和函数式接口是函数式编程的两个重要概念,可以让代码更加简洁和灵活。Java提供了一些常用的函数式接口,如Function、Consumer、Predicate、Supplier等,可以通过方法引用更加简洁地实现函数式编程。使用函数式编程,可以让你的代码更加优雅,简洁。
2023-10-04 15:58:10
285
4
原创 [中间件~大厂面试题] 腾讯三面,40亿的QQ号如何去重
如果限制在1GB内存,并且不依赖外部存储或中间件,HashSet都无法满足要求。文件分片和外部排序算法可以适应1GB内存限制,但涉及到额外的文件操作和排序步骤。使用数据库的去重功能可能需要额外的存储开销。Redis作为中间件可以满足内存限制,但需要依赖Redis服务。布隆过滤器是一种适用于大规模数据去重的高效数据结构,可以根据预期插入数量和误判率进行内存估算。这是一种简单粗暴的方法,使用内置的哈希集合数据结构。需要将40亿个QQ号全部加载到内存中,因此可能会超出1GB的内存限制。
2023-10-02 14:48:46
358
2
原创 [AIGC] “惊天神器!Java大师推荐的终极工具 Netty ,让你的代码速度狂飙!“
在现代网络技术中,高性能的网络传输和通信已经成为了一项非常重要的技能。而Netty作为一款高性能、异步事件驱动的网络应用框架,成为了Java开发者们的首选工具之一。作为一位Java大师,今天我将从三个方面(是什么、为什么、怎么用)来向大家介绍这款神器。相信通过本文的介绍,您会对Netty的强大功能和高效性能有更深入的认识和理解。
2023-10-02 14:42:27
218
原创 [AIGC] 快速掌握Netty,打造高性能IM服务器!
Netty是一个高性能、事件驱动的网络应用程序框架,基于 Java NIO (Non-blocking I/O) 开发。它主要用于开发高性能的服务器程序,例如即时通讯、游戏、物联网等。Netty 是一个高性能、事件驱动的网络应用程序框架,可以用于开发高性能的服务器程序,例如即时通讯、游戏、物联网等。使用 Netty 可以获得高性能、高可靠性、易于开发、可扩展性强、支持多种协议的优点。使用 Netty 主要需要进行以下几个步骤:创建服务器启动类,配置服务器的参数和启动程序;
2023-10-01 00:08:13
723
9
原创 [AIGC] 神奇的消息推送技术揭秘:短轮询、长轮训、sse、ws,你了解多少
短轮询是一种简单的实时消息推送方案,其中客户端通过定期向服务器发送请求来获取最新的消息。服务器在接收到请求后立即响应,无论是否有新消息。如果服务器没有新消息可用,客户端将再次发送请求。长轮询是改进的轮询方法,它在没有新消息时会保持请求挂起,直到有新消息到达或超时。相比于短轮询,长轮询可以更快地获取新消息,减少了不必要的请求。当使用时,客户端(通常是浏览器)与服务器之间建立一种持久的连接,使服务器能够主动向客户端发送数据。
2023-09-29 17:35:43
489
1
原创 [中间件] Java中间件大师揭秘:RabbitMQ + MySQL 异步任务,一个队列实现多种任务消费
在软件开发中,我们经常面临处理多种异步任务的挑战。当任务类型不断增加时,管理多个队列和消费者变得复杂而繁琐。然而,通过将多种任务类型放入同一个队列中进行消费,我们可以获得一系列重要的好处。本文将深入探讨为什么要通过一个队列实现多种任务消费,并揭示其中的优势。
2023-09-27 22:23:24
500
2
原创 [中间件]巨人的肩膀!这 redisson 为你的分布式锁保驾护航!
分布式锁是一种在分布式系统中协调多个进程或线程之间访问共享资源的方法。分布式锁是指多个进程都可以访问的共享锁,通过分布式锁可以控制同一资源在同一时刻只有一个进程或线程可以对其进行访问和操作,从而实现数据的一致性和并发控制。在分布式系统中,由于存在网络延迟、节点故障等问题,需要使用分布式锁来保证数据的正确性和一致性。常见的分布式锁的实现包括基于数据库、Zookeeper、Redis等实现方式。
2023-09-26 23:07:22
125
1
原创 [AIGC] 后台开发者必看:大数据背景下的关键技能与难点
随着大数据技术的发展和广泛应用,后台开发的技能与难点也随之发生了变化。本文将针对大数据背景下,提供一些后台开发者必须了解的关键技能和面临的难点,帮助后台开发者更好地应对大数据时代的挑战。
2023-09-26 22:13:44
557
14
原创 「AIGC」Ngrok - 让本地服务暴露在公网上的神器
总之,Ngrok 是一款功能强大、方便快捷、安全可靠的内网穿透工具,可以帮助我们将本地服务暴露在公网上,方便测试、演示和分享。
2023-09-25 21:05:28
389
1
原创 [中间件] RabbitMQ交换机类型揭秘,揭示你从未听过的惊人秘密!
RabbitMQ 是一个流行的消息队列系统,提供不同类型的交换机以支持消息路由模式。本博客将介绍 RabbitMQ 中不同类型的交换机,并提供相应的 Spring Boot 示例。注意,图片源于网络,站在巨人的肩膀,以便更快成长~
2023-09-24 18:23:52
203
1
原创 [中间件~大厂必问面试题] 神秘解决异步消息黑洞问题!再也不用担心重复和丢失了!
文章主要介绍了如何解决异步消息不重复不丢失的问题。通过使用 RabbitMQ 作为消息队列,Spring Boot 作为框架,Redis 作为缓存,数据库作为持久化,从生成消息 ID、消息的持久化、消息的重试、消息的消费确认等几个方面提出了解决方案。文章详细介绍了如何实现每个方面的解决方案,从而保证了消息的准确可靠性。
2023-09-22 13:12:44
153
3
原创 [中间件] 实时流式计算:解密Java中间件中的数据处理利器
流式计算是一种处理连续数据流的计算模型。与批处理计算相比,流式计算的输入是持续不断的,数据在时间上是无界的。同时,计算结果也是持续输出的,也就是说计算结果在时间上也是无界的。流式计算具有较高的实时性要求,通常先定义目标计算,然后将计算逻辑应用于数据。为了提高计算效率,常常采用增量计算代替全量计算。可以将流式计算类比为一个源源不断产生和接收数据的扶梯。流式计算的应用场景非常广泛,例如日志分析、大屏看板统计、公交实时数据和实时文章分值计算等。
2023-09-21 22:54:20
444
5
原创 [中间件] RabbitMQ 的 Exchange 和 Queue 绑定:实现高效消息传递的关键步骤
Exchange 和 Queue 绑定是 RabbitMQ 中实现消息路由的关键步骤。通过为 Exchange 和 Queue 建立绑定关系,我们可以确保消息能够被准确路由到对应的消费者,从而实现精确的消息传递。在 Spring Boot 中,我们可以通过配置文件或配置类的方式来进行 Exchange 和 Queue 的绑定,从而实现消息的传递。
2023-09-18 13:06:26
2446
5
原创 [中间件] RabbitMQ消息队列:探索应用场景
通过使用RabbitMQ,我们可以轻松地实现任务分配和并行处理,解耦应用程序,并处理日志。在本文中,我们提供了一些示例代码,帮助您了解如何在实际项目中使用RabbitMQ。如果您想深入了解RabbitMQ或其他中间件,我们建议您查阅更多相关资料。
2023-09-17 16:58:47
813
17
原创 [AIGC] 如何使用Python绘制逼真的中秋月饼
通过使用Turtle库,可以轻松地创建各种图形,包括基本图形,如线条、圆形和多边形,以及更复杂的图形,如螺旋、树形结构和迷宫等。使用Turtle库,我们可以轻松地实现中秋月饼的绘制,并且可以根据需要进行修改和调整。在这篇文章中,我们将使用Python中的Turtle库来绘制一个逼真的中秋月饼。除了基本的绘图功能之外,Turtle库还提供了一些更高级的功能,如填充、绘制文字和保存图像等。当我们运行这段代码时,会看到一个小海龟从开始的位置开始运动,绘制一个圆形。这段代码会绘制一个红色的圆形,线条宽度为5像素。
2023-09-16 00:02:51
995
3
原创 [中间件] RabbitMQ的重要组件让消息传输更简单
以上就是 RabbitMQ 中 Exchange、Queue、Binding 和 Consumer 等重要组件之间的关系。当我们使用 RabbitMQ 时,需要深入理解这些组件之间的关系,才能更好地使用 RabbitMQ 实现消息传递。在 Spring Boot 应用中,我们可以通过RabbitMq自动化配置类和对象来创建 Exchange、Queue 和 Binding,并将它们结合在一起,实现消息的发送和接收。
2023-09-15 23:43:21
452
1
原创 「AIGC」 AI生成大数据「扫盲」
大数据是一个庞大而复杂的概念,正在成为各个行业发展的重要趋势。掌握大数据的基本概念、特点以及常用技术栈是非常必要的。只有掌握了这些信息,我们才能够更好地应对未来的发展趋势。
2023-09-12 23:16:35
220
1
原创 「中间件」RabbitMQ vs Kafka vs RocketMQ
在现代分布式系统中,中间件的角色非常重要。中间件可以帮助不同的系统之间进行通信和交互,使得整个系统更为灵活和可扩展。在这篇博客中,我们将比较三种流行的消息中间件:RabbitMQ,Kafka和RocketMQ。
2023-09-11 23:31:33
184
原创 「AIGC」从爬虫到数据挖掘:AIGC如何引领Python技术变革?
在人工智能技术逐步发展的今天,AIGC(Artificial Intelligence and Global Community)作为一门新兴的人工智能技术,正在推动着Python技术在爬虫和数据挖掘领域的快速发展。本文将围绕AIGC和Python在爬虫和数据挖掘中的应用,介绍AIGC技术对Python技术的影响,以及如何使用chatGPT技术,通过豆瓣爬虫说明Python爬虫的变化。
2023-09-10 15:48:22
607
1
原创 「中间件」如何在RabbitMQ中实现死信队列(Dead Letter Queue)机制
本文将详细介绍什么是死信队列(Dead Letter Queue),如何在 RabbitMQ 中使用 Spring Boot 实现死信队列机制,并解释为什么在消息传递中使用死信队列是一个重要的中间件概念。通过完整的示例代码,读者将能够理解并应用死信队列,提高系统的可靠性和稳定性。
2023-09-10 15:00:10
405
8
原创 「中间件」你会确保rabbitmq 的消息不丢失以及不重复吗
通过上述的步骤,我们可以确保RabbitMQ和Spring Boot之间的消息传递是可靠、安全和高效的。虽然这些步骤会增加我们的开发成本,但是它们是实现分布式系统的必要手段。在实际生产环境中,我们应该根据实际需求进行选择和调整,以达到最优的性能和可靠性。
2023-09-05 23:16:12
267
1
原创 「中间件」Redis分布式缓存关键知识
本文介绍了Redis与Spring Boot集成的基本步骤和常见应用场景。通过将Redis与Spring Boot集成,可以实现高效、可靠的应用程序。我们可以使用RedisTemplate类来操作Redis,并实现缓存、分布式锁、计数器、消息队列等功能。掌握Redis与Spring Boot集成的技术,对于开发高效、可靠的应用程序非常有帮助。
2023-09-03 12:35:47
313
原创 「中间件」rabbitmq 消息队列基础知识
ACK:当消费者成功处理一条消息时,它会发送一个ACK给RabbitMQ,通知RabbitMQ该消息已被处理。如果消费者无法处理消息,则可以拒绝消息,或者将消息重新放入队列。消费组(Consumer Group):相同的队列可以有多个消费组,每个消费组可以同时消费该队列中的消息。在消费消息时可以根据消息中的userId来判断是否是当前用户需要处理的消息,如果是再进行处理。消息:RabbitMQ中的消息是传递的基本单位,它由消息头和消息体组成。队列(Queue):队列是消息的缓冲区,用于存储待处理的消息。
2023-09-02 12:53:39
1480
11
Java面试题:为您准备的全面面试准备资源
2023-09-26
深入探索CRUD:工作中用到的Git命令的思维导图
2023-09-26
Python全栈从零入门:一份全面的思维导图
2023-09-26
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人