Postgres - Listen/Notify构建轻量级发布订阅系统
概述 原先设计一个内部系统的消息模块和缓存模块时,只有一个Postgres依赖。想着没多大用户量,没必要额外安装Redis,徒增运维工夫。缓存好解决,配个UNLOGGED表即可。吭吭哧哧琢磨怎么用数据表实现消息的时候,发现PostgreSQL 提供了内置命令 LISTEN 和 NOTIFY,用于在数 ...
OpenFeign实战:Spring Cloud微服务间优雅调用指南
前言 OpenFeign 是 Spring Cloud 官方推荐的声明式 HTTP 客户端,让微服务间调用像调用本地方法一样简单。本文带你全面掌握 OpenFeign 的核心用法。 一、引入依赖 <!-- pom.xml --> <dependency> <groupId>org.springfra ...
理论都会,实战就废?7个分析模板,帮你打通任督二脉
数据分析和编程一样,是有模式的。其实大部分业务分析题,扒开外壳看内核,就那7个套路。 你遇到的那些所谓“新问题”,90%都能套进下面这7个框架。 不管你是在字节、阿里、拼多多,还是一个小创业公司做增长--数据就是数据,逻辑永远不会骗你。 模式1:连接+筛选 = 精准找人找事 业务场景: 春运期 ...
Spring AI 1.1.4 正式发布,又新增一个新功能!
大家好,我是R哥。 Spring AI 1.1.3 才发布多久啊: Spring AI 1.1.3 正式发布,19 个新特性太顶了! Spring AI 1.1.4 又发布了。。 除了 Spring AI 1.1.4,2.0.0 也来到了 M4 版本了,相信再过一阵子就要正式 GA 了,1.0.5 ...
Mybatis基础操作
Mybatis基础使用 Mybatis编程式开发 mybatis和MySQL jar包依赖 <dependencies> <!-- MyBatis 核心 --> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</arti ...
Spring Cloud Gateway实战:微服务API网关从零到一
前言 Spring Cloud Gateway 是 Spring 官方推出的 API 网关,基于 WebFlux 实现,性能卓越。本文带你从零搭建一个生产级的微服务 API 网关。 一、核心概念 Route(路由):网关的基本构建块,包含 ID、目标 URI、Predicate、Filter Pre ...
MyBatis-Plus实战:Spring Boot数据库操作效率提升10倍
前言 MyBatis-Plus(MP)是 MyBatis 的增强工具,无需编写 SQL 即可完成 CRUD 操作,极大提升开发效率。本文带你实战 Spring Boot 整合 MyBatis-Plus。 一、引入依赖 <!-- pom.xml --> <dependency> <groupId>co ...
Apache Kafka实战:Spring Boot消息队列完整指南
前言 Apache Kafka 是分布式消息队列的事实标准,本文带你实战 Spring Boot 整合 Kafka,完成生产者和消费者的完整开发。 一、Kafka 核心概念 Producer:消息生产者 Consumer:消息消费者 Broker:Kafka 服务节点 Topic:消息主题分类 Pa ...
为什么说Rust是对自闭症谱系人士友好的编程语言?
在程序员圈子里,Rust常常以学习路线陡峭而闻名。就我自己的个人理解来说,之所以说它“学习路线陡峭”,很大程度上都来源于以下三点: Rust有很多语法糖,而且官方把这些语法糖给设置成了默认的最佳实现的语法,还写进了教程。最经典的就是for循环语句。Rust的for循环公式如下所示: for 变量 i ...
Gin 框架进阶系列(零)
Gin 框架进阶系列(零) 一个从路由到部署的 Gin 实战系列,带你用 Go 构建生产级 Web 服务。 目录 基础篇 第一个路由 — 项目初始化,启动第一个 HTTP 服务 路由详解 — 路径参数、路由分组 请求处理 — 数据绑定、参数验证、ShouldBind 核心篇 中间件机制深入 — 洋葱 ...
ESP32 实现在线动态安装库和自动依赖安装-使用uPyPI包管理平台
做 MicroPython 嵌入式开发的你,是不是每天都在被这些问题折磨?写好的代码一运行就报错,翻遍半天发现少装了一个依赖文件;更崩溃的是,一个库要带好几个附属文件,漏一个就全盘报废。 ...
Docker容器化部署实战:从零构建Spring Boot微服务镜像
前言 Docker 是现代微服务架构的基石。将 Spring Boot 应用容器化,可以实现一次构建,处处运行。本文带你从零完成 Spring Boot 应用的 Docker 容器化部署。 一、为什么需要 Docker 环境一致性:开发、测试、生产环境完全一致 快速部署:秒级启动,秒级扩容 资源隔离 ...
Kotlin协程实战:比Java线程更优雅的并发编程
前言 Kotlin 协程(Coroutines)是 Android 和服务端开发者的必备技能。相比 Java 线程,协程更轻量、更易读、更安全。本文带你从零掌握 Kotlin 协程的核心用法。 一、协程 vs 线程 线程:操作系统调度,创建成本高(约1MB栈内存) 协程:用户态调度,创建成本极低(约 ...
Python函数参数解包:*args与**kwargs深度解析
引言 在Python编程中,函数参数的处理是一个核心话题。*args和**kwargs是Python中两个强大且灵活的特性,它们让函数能够接受可变数量的位置参数和关键字参数。掌握这两个工具,不仅能让你写出更通用的代码,还能更好地理解和使用Python标准库及第三方库中的函数。 一、*args: ...
Python循环高级技巧:for-else、while-else、break/continue完全指南
Python循环高级技巧:for-else、while-else、break/continue完全指南 你以为自己懂Python循环?这些隐藏技巧可能颠覆你的认知。 引言 大多数Python开发者对for和while循环耳熟能详,但有一个"冷门"特性——else子句——却鲜为人知。同时,bre ...
Java虚拟线程实战:Project Loom让并发编程更简单
前言 Java 21 正式引入虚拟线程(Virtual Threads),这是 Project Loom 的核心成果。虚拟线程让 Java 并发编程从"难"变"简",彻底改变了高并发应用的开发方式。本文带你全面掌握虚拟线程。 一、虚拟线程 vs 平台线程 平台线程:对应操作系统线程,创建成本高(约1 ...
用300行代码手写Spring核心原理
本文将带你深入了解Spring框架的核心原理,通过300行代码的迷你版本来展示Spring最核心的特性:IoC(控制反转)、DI(依赖注入)和MVC(模型-视图-控制器)模式的实现。 mini版Spring实现思路 实现过程 自定义注解 在Spring框架中,注解是非常重要的组成部分。我们的迷你版也 ...
工业机器人都在做驱控一体,但很多企业卡在软件开发这一关
驱控一体之后,原来分开的多个系统,现在全部集中到一个系统里,软件复杂度大幅上升。这其实已经不是简单的嵌入式开发,而是一个复杂实时系统软件工程问题。 ...
MVC中的拦截器实现案例
MVC 拦截器 Spring MVC 拦截器对应HandlerInterctor接口,该接口位于org.springframework.web.servlet的包中,定义了三个方法,若要实现该接口,就要实现其三个方法: 前置处理(preHandle()方法):该方法在执行控制器方法之前执行。返回值为 ...
Java学习笔记:关键字与保留字
在Java中,关键字和保留字是两类具有特殊意义的标识符,它们被语言本身占用,不能作为变量名、方法名、类名等自定义标识符使用。理解它们的区别与用途,是掌握Java语法的第一步。 查看官网关键字和保留字: https://docs.oracle.com/javase/tutorial/java/nuts ...


