- 博客(290)
- 资源 (9)
- 问答 (1)
- 收藏
- 关注
原创 【SpringCloud】12、Spring Cloud使用OpenFeign实现服务调用
OpenFeign目前是Spring Cloud的二级子项目。它是一个声明式、模板化的HTTP客户端,仅在Application Client中使用。声明式调用是指,就像调用本地方法一样调用远程方法,无需感知操作远程HTTP请求。学习完OpenFeign后可以不使用RestTemplate进行调用。Spring Cloud的声明式调用,可以做到使用HTTP请求远程服务时能就像调用本地方法一样的体验,开发者完全感知不到这是远程方法,更感知不到这是个HTTP请求。
2024-01-17 11:05:33 100
原创 【SpringCloud】11、Spring Cloud Gateway使用Sentinel实现服务限流
Sentinel 是阿里巴巴开源的一个流量防卫防护组件,可以为微服务架构提供强大的流量防卫能力,包括流量控制、熔断降级等功能。Spring Cloud Gateway 与 Sentinel 结合,可以实现强大的限流功能。
2024-01-10 14:59:57 709
原创 【SpringCloud】10、Spring Cloud Gateway全局过滤器
全局过滤器 (Global Filters) 是 Spring Cloud Gateway 提供的一种机制,允许我们在网关级别应用一系列的逻辑,比如请求/响应的预处理和后处理。
2024-01-10 13:54:42 415
原创 【SpringCloud】9、Spring Cloud Gateway跨域配置
跨域,指的是浏览器不能执行其他网站的脚本。它是由浏览器的同源策略造成的,是浏览器对 JavaScript 施加的安全限制。
2024-01-07 16:46:23 444
原创 【SpringCloud】8、Spring Cloud Gateway熔断降级
熔断降级是分布式系统中的一种保护机制,用于防止系统因异常或过载而崩溃,从而提高系统的可用性和稳定性。在 Spring Cloud Gateway 中,熔断降级可以通过 Hystrix 实现。Hystrix 是 Netflix 开源的一个延迟和容错库,提供服务降级、请求隔离、线程隔离等功能。
2024-01-07 16:45:37 885
原创 【SpringCloud】7、Spring Cloud Gateway限流配置
Spring Cloud Gateway 的限流配置主要涉及到令牌桶算法的实现。令牌桶算法可以对某一时间窗口内的请求数进行限制,保持系统的可用性和稳定性,防止因流量暴增而导致的系统运行缓慢或宕机。
2024-01-05 11:53:09 986
原创 【SpringCloud】6、Spring Cloud Gateway路由配置
Spring Cloud Gateway 的路由配置方式主要有三种:HTTP路由,LB路由和WebSocket路由。三种方式可以根据实际需求选择使用,每种方式都有其适用的场景和特点。
2024-01-05 11:42:24 830
原创 【SpringCloud】5、Spring Cloud Gateway网关路由规则
Spring Cloud Gateway 创建 Route 对象时, 使用 RoutePredicateFactory 创建 Predicate 对象,Predicate 对象可以赋值给 Route。
2024-01-04 14:34:35 457
原创 【SpringCloud】4、Spring Cloud Gateway网关服务搭建
Spring Cloud Gateway 是基于 Spring 生态系统之上构建的 API 网关,包括:Spring 5.x,Spring Boot 2.x 和 Project Reactor。Spring Cloud Gateway 旨在提供一种简单而有效的方法来路由到 API,并为它们提供跨领域的关注点,例如:安全性,监视/指标,限流等。
2024-01-04 14:22:39 722
原创 【SpringBoot】91、SpringBoot解决Mybatis-Plus生成雪花ID重复问题
只要 workerId 和 dataCenterId 不同时重复,生成的雪花 ID 就不会重复。这是因为每个 ID 都是唯一的,并且是根据特定的算法生成的
2023-12-21 15:24:00 1526
原创 MySQL数据库连接工具—MySQL Workbench
MySQL Workbench 使 DBA、开发人员或数据架构师能够直观地设计、建模、生成和管理数据库。它包括数据建模师创建复杂 ER 模型、正向和反向工程所需的一切,还提供了执行困难的更改管理和文档任务的关键功能,这些任务通常需要花费大量时间和精力
2023-11-01 16:45:22 12286
原创 【tio-websocket】15、学习tio的第1步—tio-study
tio-study 是用于学习 t-io 的示范工程,tio-study 是入门 t-io 最好的方式!tio-study 工程演示的是一个典型的 TCP 长连接应用工程,分为 server(服务端) 和 client(客户端) 工程,server 和 client 共用 common(公共模块) 工程
2023-11-01 14:43:57 12512
原创 【tio-websocket】14、消息来往监听—AioListener
AioListener 是消息往来监听的核心接口,它有两个子接口,ClientAioListener 和 ServerAioListener,当用 t-io 作 TCP 客户端时需要实现 ClientAioListener,当用 t-io 作 TCP 服务端时需要实现 ServerAioListener
2023-10-30 15:59:39 13290
原创 【tio-websocket】8、T-IO对半包和粘包的处理
t-io对数据的解码是在DecodeRunnable中完成的,一个TCP连接对应一个DecodeRunnable,半包粘包的处理也都在DecodeRunnable中完成的
2023-10-25 11:20:05 16462
原创 【tio-websocket】13、消息编码、解码、处理—AioHandler
TioHandler是处理消息的核心接口,它有两个子接口,AioClientHandler和AioServerHandler,当用t-io作TCP客户端时需要实现AioClientHandler,当用t-io作TCP服务器时需要实现AioServerHandler
2023-10-25 10:54:56 16516
原创 【tio-websocket】12、应用层包—Packet
Packet 是用于表述业务数据结构的,我们通过继承 Packet 来实现自己的业务数据结构,对于各位而言,把 Packet 看作是一个普通的 VO 对象即可。
2023-10-25 10:47:43 16611
原创 【tio-websocket】11、群组成员内置排序规则
和给 List 数组排序一样,我们需要实现一个比较器,来给群组成员实现排序规则,使得群组里的元素是有序放置的。
2023-10-25 10:29:50 16169
原创 【tio-websocket】10、单条TCP连接上下文—ChannelContext
每一个 tcp 连接的建立都会产生一个 ChannelContext 对象,这是个抽象类。如果你是用 t-io 作 TCP 客户端,那么就是 ClientChannelContext如果你是用 t-io 作 TCP 服务器,那么就是 ServerChannelContext。
2023-10-24 15:39:16 16828
原创 【tio-websocket】9、服务配置与维护—TioConfig
TioConfig就是解决以上场景的:配置线程池、监听端口,维护客户端各种数据等的
2023-10-24 15:28:52 17137
原创 API 接口参数签名的几种方案
在涉及跨系统接口调用时,我们容易碰到以下安全问题:请求身份被伪造、请求参数被篡改、请求被抓包,然后重放攻击
2023-09-26 09:27:32 28037 2
原创 【SpringBoot】90、SpringBoot中@Value(“${...}“)的使用细节
@Value 注解可以用来将外部的值动态注入到 Bean 中,注入配置文件中的配置参数、注入文件资源、注入URL资源等,我们还可以使用自定义注解实现统一注入管理
2023-09-20 15:25:46 30458
原创 【Redis GEO】3、地理位置类型的性能优化及使用限制
在使用 Redis 的地理位置类型时,为了提高查询性能和降低资源消耗,需要进行一些优化和性能考虑
2023-09-20 14:28:56 30272
原创 【Redis GEO】2、地理位置类型的应用场景
Redis 的地理位置类型(Geo)在实际应用中有着广泛的应用场景。下面将介绍几个常见的应用场景,并详细说明如何使用地理位置类型来实现。
2023-09-20 14:23:24 30089
原创 【Redis GEO】1、地理位置类型的基本用法
地理位置类型是 Redis 提供的一种特殊数据类型,用于存储和处理地理位置信息。它结合了经度(longitude)和纬度(latitude)信息,能够高效地处理地理位置相关的查询和计算
2023-09-20 14:06:44 30163
原创 使用新版Maven-mvnd快速构建项目
目前我们项目的构建方式多数是 maven、gradle,但是 maven 相对 gradle 来说,构建速度较慢,特别是模块相对较多的时候,构建速度更加明显。但是我们将项目由 maven 替换为 gradle 相对来说会比较麻烦,成本较高。于是我们可以选择 mvnd 来构建项目,可以使得构建项目速度更快,而且项目无需任何改动。
2023-09-14 11:17:16 32281
原创 巧用Lambda表达式获取对象属性名告别魔法值
在我们日常开发中,使用 MyBatis-Plus 写 SQL 执行的时候,难免会用到表字段,虽然 MyBatis-Plus 提供了 LambdaQueryWrapper 帮助我们使用 Lambda 方式调用对象属性名,但有的时候还是不免用到魔法值,当对象的属性名更改了之后,我们难免会漏掉,引发生产事故
2023-09-13 15:09:21 32592 2
原创 【VUE】8、VUE项目中集成vue-i18n实现前端国际化
i18n 是 internationalization 这个单词的缩写,取了首字母i和结尾字母 n,中间一用有 18 个字母,所以组合起来就所写成 i18n,这是一个用于给 vue 国际化的插件, 它可以轻松地将一些本地化功能集成到你的 Vue.js 应用程序中
2023-08-15 10:52:01 36126
原创 【SpringBoot】89、SpringBoot中使用@Transactional进行事务管理
事务是一组组合成逻辑工作单元的操作,虽然系统中可能会出错,但事务将控制和维护事务中每个操作的一致性和完整性。
2023-08-15 10:27:33 36200
原创 【VUE】7、VUE项目中集成watermark实现页面添加水印
在网站浏览中,常常需要网页水印,以便防止用户截图或录屏暴露敏感信息后,方便追踪用户来源。
2023-08-11 15:59:43 37848 3
原创 【SpringBoot】88、SpringBoot中使用Undertow替代Tomcat容器
Undertow是由Red Hat公司开发的一个轻量级的Web服务器,它是基于NIO(Non-Blocking IO)技术实现的,因此它的性能非常出色。Undertow提供了全面的HTTP和HTTPS支持,并且支持WebSocket、Servlet、SPDY等多种协议和技术。它还提供了易于使用的API和内置的安全性特性,如SSL/TLS等。Undertow是一个灵活、可扩展的Web服务器,它可以与其他技术、框架和工具无缝集成。
2023-08-11 15:25:32 36571
原创 【SpringBoot】87、SpringBoot中集成Redisson实现Redis分布式锁
Redisson 是架设在 Redis 基础上的一个 Java 驻内存数据网格(In-Memory Data Grid)
2023-08-11 15:04:28 35927
原创 【Sa-Token】9、Sa-Token实现在线用户管理功能
尽管框架将大部分操作提供了简易的封装,但在一些特殊场景下,我们仍需要绕过框架,直达数据底层进行一些操作。
2023-08-09 09:40:48 39587
原创 【SpringBoot】86、SpringBoot中集成Quartz根据Cron表达式获取接下来5次执行时间
本篇文章根据集成 Quartz 根据 Cron 表达式获取接下来的 5 次执行时间,在配置定时任务时,可以清晰地知道自己的 Cron 表达式是否正确,对于 Quartz 不熟悉的同学可以先看看我之前的文章。
2023-08-04 11:43:00 35817
原创 【SpringBoot】85、SpringBoot中Boolean类型数据转0/1返回序列化配置
在 SpringBoot 中,前端传参数 0,1,后端可自动解析为 boolean 类型,但后端返回前端 boolean 类型时,却无法自动转换为 0,1,所以我们需要自定义序列化配置,将 boolean 类型转化为 0,1
2023-07-31 10:56:18 36899
原创 【uni-app】1、分页组件z-paging介绍与使用
一个uni-app (opens new window)分页组件,全平台兼容,支持自定义下拉刷新、上拉加载更多,支持虚拟列表,支持自动管理空数据图、点击返回顶部,支持聊天分页、本地分页,支持展示最后更新时间,支持国际化等等
2023-07-19 17:17:15 45174 1
原创 【微信公众号】17、SpringBoot整合WxJava实现短key托管(短链接管理)
短key托管类似于短链API,开发者可以通过GenShorten将不超过4KB的长信息转成短key,再通过FetchShorten将短key还原为长信息
2023-07-17 22:51:35 35705 1
原创 【微信公众号】16、SpringBoot整合WxJava生成带参数的二维码
为了满足用户渠道推广分析和用户账号绑定等场景的需要,公众平台提供了生成带参数二维码的接口。使用该接口可以获得多个带不同场景值的二维码,用户扫描后,公众号可以接收到事件推送
2023-07-17 22:35:17 35966 4
原创 【微信公众号】15、SpringBoot整合WxJava实现openApi管理
本接口用于清空公众号/小程序/第三方平台等接口的每日调用接口次数
2023-07-17 22:15:50 35503
原创 【tio-websocket】7、什么是半包和粘包?
粘包和半包问题是数据传输中比较常见的问题,所谓的粘包问题是指数据在传输时,在一条消息中读取到了另一条消息的部分数据,这种现象就叫做粘包
2023-07-17 11:14:43 35601
MySQL Workbench菜单汉化文件
2023-11-01
Java转PDF.zip
2020-08-11
consul_1.4.1_windows_amd64.zip
2020-04-08
网页打印工具:clodop
2020-04-08
一款网页图片预览插件:viewer
2020-04-08
Tomcat服务监控工具probe
2020-04-08
MySQL查询最大连胜数据--解答
2021-10-15
TA创建的收藏夹 TA关注的收藏夹
TA关注的人