
Halo 開源項目學習(七):快取機制
- 2022 年 4 月 29 日
- 筆記
基本介绍 我们知道,频繁操作数据库会降低服务器的系统性能,因此通常需要将频繁访问、更新的数据存入到缓存。Halo 项目也引入了缓存机制,且设置了多种实现方式,如自定义缓存、Redis、LevelDB 等,下面我们分析一下缓存机制的实现过程。 自定义缓存 1. 缓存的配置 由于数据在缓存中以键值对的形 …
Continue Reading
基本介绍 我们知道,频繁操作数据库会降低服务器的系统性能,因此通常需要将频繁访问、更新的数据存入到缓存。Halo 项目也引入了缓存机制,且设置了多种实现方式,如自定义缓存、Redis、LevelDB 等,下面我们分析一下缓存机制的实现过程。 自定义缓存 1. 缓存的配置 由于数据在缓存中以键值对的形 …
Continue Reading
基本介绍 Halo 项目中,当用户或博主执行某些操作时,服务器会发布相应的事件,例如博主登录管理员后台时发布 "日志记录" 事件,用户浏览文章时发布 "访问文章" 事件。事件发布后,负责监听的 Bean 会做出相应的处理,这种设计称为事件监听机制,其作用是可以实现业务逻辑之间的解耦,提高程序的扩展性 …
Continue Reading
基本介绍 博客系统中,用户浏览文章时可以在文章下方发表自己的观点,与博主或其他用户进行互动,也可以为喜欢的文章点赞。下面我们一起分析一下 Halo 项目中评论和点赞功能的实现过程。 发表评论 评论可以是对文章的评论,对页面的评论,也可以是对评论的评论(通常称为回复),因此项目中需要对评论的类别进行划 …
Continue Reading
基本介绍 博客最基本的功能就是让作者能够自由发布自己的文章,分享自己观点,记录学习的过程。Halo 为用户提供了发布文章和展示自定义页面的功能,下面我们分析一下这些功能的实现过程。 管理员发布文章 Halo 项目中,文章和页面的实体类分别为 Post 和 Sheet,二者都是 BasePost 的子 …
Continue Reading
基本介绍 首次启动 Halo 项目时需要安装博客并注册用户信息,当博客安装完成后用户就可以根据注册的信息登录到管理员界面,下面我们分析一下整个过程中代码是如何执行的。 博客安装 项目启动成功后,我们可以访问 //127.0.0.1:8090 进入到博客首页,或者访问 //127.0.0.1:8090 …
Continue Reading
基本介绍 Halo 项目中定义了一些实体类,用于存储博客中的关键数据,如用户信息、文章信息等。在深入学习 Halo 的设计理念与实现过程之前,不妨先学习一下一个完整的博客系统都由哪些元素组成。 实体类 Halo 中的除 BaseEntity 外的每一个实体类都对应着一个数据表,以 User 类为例, …
Continue Reading
项目简介 Halo 是一个优秀的开源博客发布应用,在 GitHub 上广受好评,正好最近在练习写博客,借此记录一下学习 Halo 的过程。 项目下载 从 GitHub 上拉取 项目源码 ,Halo 从 1.4.3 开始,最低支持的 JRE 版本为 11,本人下载的是 1.4.13 版本。 前提设置 …
Continue Reading
一、前言 小编买了一个服务器也是一直想整个网站,一直在摸索,看了能够快速搭建博客系统的教程。总结了有以下几种方式,大家按照自己喜欢的去搭建: halo wordpress hexo vuepress 手动自己写(github很多开源博客网站) Halo搭建实例浏览 这是我最近写的另外两种搭建方式,大 …
Continue Reading