logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

Python函数中 *args 和 **kwargs

的语法,但它们接收的参数类型不同。示例1:接收多个 key-value。五、补充:参数解包(常见用法),在函数内部会变成一个。示例2:更真实一点的函数。在 Python 里,,在函数内部会变成一个。示例1:接收多个参数。示例3:构造对象信息。

#python#开发语言
Java WebSocket客户端--java.net.http.HttpClient

2. 在这个异步版本中,主线程不会阻塞等待连接建立或消息收发。为了确保主线程不会在异步操作完成前退出,我们仍然会使用一个。1. 在同步模式下请求 WebSocket 服务端。来等待整个通信过程结束。

#java#websocket#.net
BIO(Blocking I/O) 和 NIO(Non‑Blocking I/O) 两种不同的 I/O 模型

简单理解:客户端请求 → 服务器线程处理 → 读数据 → 阻塞等待。

#nio#java
JDK 动态代理 和 CGLIB 动态代理

JDK 动态代理是基于接口实现的,通过 Proxy 和 InvocationHandler 在运行时生成代理类;而 CGLIB 是基于继承实现的,通过生成目标类的子类并重写方法进行增强。Spring AOP 默认优先使用 JDK 动态代理,如果没有接口则使用 CGLIB。

#java#开发语言
Redis 分布式锁自动续期机制

二、使用 Redisson 分布式锁。watchdog线程每10s检查。这是 Redisson 的设计。Redisson 会启动。三、什么时候不会自动续期。设置TTL = 30s。TTL重新设置为30s。四、为什么要有自动续期。我分两种情况说清楚。五、面试常问的一个点。

#redis#分布式#数据库
synchronized 的原理(简单版)

每个对象都可以关联一个 Monitor,当线程进入同步代码块时,相当于获取这个对象的 Monitor;如果获取不到,就会进入等待队列,等锁释放后再竞争。,都可以保证多线程访问共享资源时的线程安全,但它们在实现方式和功能上有一些区别。,通过这些机制在保证线程安全的同时尽量减少线程阻塞,提高并发性能。,里面会记录锁的信息,比如锁状态、线程 ID 等。代码块时,就会释放锁,并唤醒等待队列中的线程重新竞争

生产级 Spring Boot 网关完整实现方案

既然是生产环境,直接按 Spring Boot 3.x + Spring Cloud Gateway + Redis Reactive + Micrometer + Prometheus + JWT(JJWT 0.11.5) 的标准来写。利用 Redis Cluster 的 Hash Tag,保证同一个用户的限流数据始终落在同一个 Slot,避免跨 Slot 问题。如果这是准备上线承载真实流量的生

#java#gateway
生产级 Spring Boot 网关简单实现方案

本方案基于构建,彻底移除所有模拟逻辑,替换为生产环境可用的真实组件。(分布式限流与防重放)、(无状态认证)、(签名与加密工具)、(代码简化)。

#wpf
Java JVM 篇常见面试题

JDK = JRE + 开发工具。JRE = JVM + 核心类库。,并在不同操作系统上运行。

#jvm#java#开发语言
    共 20 条
  • 1
  • 2
  • 请选择