定期备份数据库很重要,我之前一直没有这个习惯,因为自己做的都是小项目,而且开发者一般都是自己。 近期与其它同事合作,发现还真会有同事把远程数据库全删了这种情况......所以借这个机会学习和记录一下怎么备份MySQL 为MySQL数据库设置定时备份功能可以通过编写备份脚本并结合操作系统的定时任务工具
分类: 服务端开发
文档问答系统后端部署手册 本手册为针对Linux操作系统 + GPU服务器上的部署手册。 GPU服务器上部署本程序会踩很多坑,本人就曾经一个弄两天还没部署成功,最后成功后,没想到十几天后因为服务器断电坏了,所以所有东西需要重新部署,又把所有坑踩了一遍。 这次我吸取教训,部署的同时写个部署手册,后续系
《动手学微服务》系列文章将专注微服务中的常见思想、常用技术和常见架构。本系列的特点是不仅在理论上对微服务的知识进行梳理,还会有一系列的动手实践,不仅在平时学习会有帮助,也有助于面试。本人也是微服务的小学徒,为了巩固所学而创建此专栏,欢迎大家持续关注。 前言 在《动手学微服务(一):实战MySQL读写
《动手学微服务》系列文章将专注微服务中的常见思想、常用技术和常见架构。本系列的特点是不仅在理论上对微服务的知识进行梳理,还会有一系列的动手实践,不仅在平时学习会有帮助,也有助于面试。本人也是微服务的小学徒,为了巩固所学而创建此专栏,欢迎大家持续关注。 为何需要读写分离?从一个业务场景说起 我们以用户
Spring AI是受Python项目启发的AI应用开发框架,核心在于提供抽象能力、简化开发,支持多模型(如OpenAI、通义)及向量数据库,屏蔽底层交互细节。Spring Cloud Alibaba AI基于其适配国内通义大模型,支持对话、文生图、文生语音等功能,提供便捷的Spring Boot集成。动手体验显示,通过简单配置依赖与API-Key,即可快速实现文本问答、图像生成、语音合成等模型对接,代码简洁(如ChatClient一行调用)。使用小结指出其简化复杂AI应用开发的优势,但也存在响应时间优化空间及模型选择灵活性待提升问题,未来将持续适配VectorStore、RAG等场景,助力国内Java开发者高效构建AI应用。
防重幂等的概念 防重幂等指的是我们的业务需要防止两条相同的数据重复提交导致脏数据或业务错乱。需要注意的是,重复提交属于小概率事件,这和并发压测不是同一个概念。 我们的目标是通过防重幂等的设计,让系统支持业务失败或异常快速释放限制。业务处理成功后,会在指定时间限定内限制同一条数据的提交。本文将介绍如何
提到日志,我们一般只会想到使用 @Slf4j打印的日志,实际上我们系统中的日志还可以细分为系统日志、登录日志和操作日志。本文将讲述如何在SpringBoot中使用和开发这三种日志系统。 关键词:Logback、Slf4j、p6spy、AspectJ、SpringEvent、线程池、Async 这里我
本文详细记录了Spring Boot中国际化与Validator校验的配置及协同使用。首先通过i18n目录配置多语言资源文件(如messages.properties、messages_en_US.properties),结合Yml配置和自定义LocaleResolver实现请求头语言解析。封装MessageUtils工具类,支持异常信息与日志的国际化输出。随后集成Hibernate Validator,通过ValidatorConfig配置快速校验模式,并封装ValidatorUtils工具类。利用@Validated注解或编码方式实现实体校验,结合国际化资源文件(如@Size注解引用length.not.valid键值)实现动态错误提示。最后通过分组校验(AddGroup/UpdateGroup等)满足不同场景需求,提升开发效率与用户体验。
本文详细介绍了如何使用Sa-Token框架整合JWT实现登录鉴权和权限授权,并采用Redis作为数据持久层。文章首先说明了必要的Maven依赖和yml配置,包括token名称、有效期、JWT密钥等关键参数。随后通过自定义SaTokenConfig类实现拦截器功能,注入JWT模式、权限接口和Redis自定义DAO层。重点分析了登录验证流程,包括密码校验、token生成与Redis存储机制,以及基于注解和API的权限功能实现。文章还深入探讨了Sa-Token的源码架构,包括多级缓存策略、上下文持有类和拦截器原理,为开发者提供了完整的实战指南。
单元测试的好处 单元测试的好处: 为重构项目保驾护航 提高代码质量:做单元测试需要隔离外部依赖,促使工程做组件拆分,减少代码耦合度。 减少bug:确保各个单元逻辑正确 快速定位bug 测试驱动开发(TDD): 最早接触TDD理念是在伯克利的CS61B中,这门课有一个章节专门教你写单元测试,并鼓励通过
1 / 2
下一页