从0搭建最小微服务Demo
该实战教程逐步实现了基于Spring Cloud的微服务架构。
内容涵盖创建父项目、管理子模块、构建微服务项目micro-user
和micro-post
,并介绍数据库创建、实体类定义、Mapper层、服务接口实现和API接口创建。
此外,教程强调了使用Nacos作为服务注册中心和配置中心的重要性,以及如何搭建Spring Cloud Gateway网关和配置路由信息。最后,将学习使用Feign实现微服务间的远程调用,并在Nacos上配置Feign配置文件。
此部分适用于对微服务架构感兴趣的初学者和开发者,通过实际操作,快速掌握微服务架构搭建和关键组件应用。
使用security搭建认证授权过程详解
这篇文章详细介绍了如何构建一个基于Spring Security的数据库驱动的权限管理系统。
首先,作者创建了包含用户、角色、权限等在内的五张数据库表,并设置了相应的字段,如用户ID、用户名、密码等。
然后,作者使用Spring Initializr创建了一个Spring Boot项目,并添加了必要的依赖项,如MySQL的JDBC驱动、MyBatis Plus的启动器等。
文章还介绍了如何使用MyBatis Plus的代码生成器来自动生成Mapper、Entity等MyBatis所需的文件,从而简化开发流程。
此外,文章还涵盖了如何添加Redis和Fastjson依赖,配置Redis,并创建了RedisTemplate来处理Redis的键值序列化。
同时,还介绍了如何配置Spring Security,包括禁用CORS和CSRF保护,并使用token持久化认证记录。
文章最后部分着重介绍了如何实现认证和授权。作者自定义了认证token,并定义了认证token的provider。此外,还介绍了如何实现登录过滤器、登录处理器、token登录过滤器,以及如何配置security。
总的来说,这篇文章提供了一个详细的步骤指南,用于构建一个基于Spring Security的数据库驱动的权限管理系统,适合对Spring Security和数据库驱动权限管理系统感兴趣的开发者阅读和学习。
redis的实战应用
这篇文章是一个关于如何使用Redis进行性能优化的Spring Boot项目的教程。
文章从搭建一个Spring Boot项目开始,包括创建数据库表、连接数据库,并使用代码生成器简化开发。
教程中还探讨了如何实现秒杀功能,搭建Redis集群,并学习分布式锁的运用。
此外,文章还优化了秒杀逻辑,并实施了缓存策略来解决缓存穿透等问题。
通过这个教程,读者将掌握使用Redis进行性能优化的实用技巧。
MIT 6.828操作系统实验
《MIT 6.828操作系统实验》是一门以实践为核心的课程,源自MIT的知名操作系统课程。
课程旨在通过动手实验,深化学生对操作系统设计与实现的理解。
在这里,我分享了自己在学习过程中的笔记,其中记录了完成课程的五个实验作业。
这些笔记将有助于读者更好地跟随课程进度,深入掌握操作系统的核心概念。
JVM场景实战
这篇文章是关于Java虚拟机(JVM)的场景实战。
文章主要介绍了如何使用不同的命令行工具来监控和管理JVM,包括top
、jps
、jinfo
、jstat
和jstack
。
文章通过具体的示例展示了这些工具的使用方法,并解释了它们在监控JVM性能、内存使用、线程状态等方面的作用。
编译原理dfa | slr1
dfa这篇文章深入探讨了编译原理中的正则表达式转换为NFA(非确定有限自动机),然后将其转换为DFA(确定有限自动机)的过程。
文章详细介绍了如何利用正则表达式绘制NFA图,并将其转换为DFA。
此外,还讨论了如何对DFA进行最小化,并最终生成相应的C++代码。
slr1这篇文章详细介绍了在C++中构建LR(0)项集规范族和SLR(1)分析表的过程。
文章从定义文法的数据结构开始,讲解了如何进行初始化操作,闭包函数和状态转移函数的实现细节,以及如何计算first集合和follow集合。
文章还详细介绍了如何构建LR(0)的DFA图,包括定义结构、计算闭包和定义状态转移函数等步骤。
最后,文章介绍了如何构建SLR(1)分析表,包括定义结构、判断归约-归约冲突、判断移进-归约冲突和构建slr1状态转移表等步骤。
文章还提供了构建特定语言抽象语法树和中间代码的示例,并附有相应的代码实现。