diff --git a/docs/.vuepress/config.ts b/docs/.vuepress/config.ts index bb047b7b213..b8dd74387f4 100644 --- a/docs/.vuepress/config.ts +++ b/docs/.vuepress/config.ts @@ -4,7 +4,7 @@ import theme from "./theme.js"; export default defineUserConfig({ dest: "./dist", - title: "JavaGuide(Java面试+学习指南)", + title: "JavaGuide", description: "「Java学习指北 + Java面试指南」一份涵盖大部分 Java 程序员所需要掌握的核心知识。准备 Java 面试,复习 Java 知识点,首选 JavaGuide! ", lang: "zh-CN", @@ -30,6 +30,14 @@ export default defineUserConfig({ "Java基础, 多线程, JVM, 虚拟机, 数据库, MySQL, Spring, Redis, MyBatis, 系统设计, 分布式, RPC, 高可用, 高并发", }, ], + [ + "meta", + { + name: "description", + content: + "「Java学习 + 面试指南」一份涵盖大部分 Java 程序员所需要掌握的核心知识。准备 Java 面试,首选 JavaGuide!", + }, + ], ["meta", { name: "apple-mobile-web-app-capable", content: "yes" }], // 添加百度统计 [ diff --git a/docs/.vuepress/sidebar/index.ts b/docs/.vuepress/sidebar/index.ts index 7ffbbf2ce21..d26497876b6 100644 --- a/docs/.vuepress/sidebar/index.ts +++ b/docs/.vuepress/sidebar/index.ts @@ -184,7 +184,7 @@ export default sidebar({ children: [ "other-network-questions", "other-network-questions2", - "computer-network-xiexiren-summary", + // "computer-network-xiexiren-summary", { text: "重要知识点", icon: "star", diff --git a/docs/.vuepress/theme.ts b/docs/.vuepress/theme.ts index 39252b3eff1..1f1bdc32a56 100644 --- a/docs/.vuepress/theme.ts +++ b/docs/.vuepress/theme.ts @@ -12,7 +12,7 @@ export default hopeTheme({ logo: "/logo.png", favicon: "/favicon.ico", - iconAssets: "//at.alicdn.com/t/c/font_2922463_kweia6fbo9.css", + iconAssets: "//at.alicdn.com/t/c/font_2922463_twrlnf18xy9.css", author: { name: "Guide", diff --git a/docs/database/redis/redis-questions-02.md b/docs/database/redis/redis-questions-02.md index 68637261ccf..48007248a04 100644 --- a/docs/database/redis/redis-questions-02.md +++ b/docs/database/redis/redis-questions-02.md @@ -713,12 +713,20 @@ _为什么会出现误判的情况呢? 我们还要从布隆过滤器的原理 1. 采用 Redis 集群,避免单机出现问题整个缓存服务都没办法使用。 2. 限流,避免同时处理大量的请求。 +3. 多级缓存,例如本地缓存+Redis 缓存的组合,当 Redis 缓存出现问题时,还可以从本地缓存中获取到部分数据。 **针对热点缓存失效的情况:** 1. 设置不同的失效时间比如随机设置缓存的失效时间。 2. 缓存永不失效(不太推荐,实用性太差)。 -3. 设置二级缓存。 +3. 缓存预热,也就是在程序启动后或运行过程中,主动将热点数据加载到缓存中。 + +**缓存预热如何实现?** + +常见的缓存预热方式有两种: + +1. 使用定时任务,比如 xxl-job,来定时触发缓存预热的逻辑,将数据库中的热点数据查询出来并存入缓存中。 +2. 使用消息队列,比如 Kafka,来异步地进行缓存预热,将数据库中的热点数据的主键或者 ID 发送到消息队列中,然后由缓存服务消费消息队列中的数据,根据主键或者 ID 查询数据库并更新缓存。 #### 缓存雪崩和缓存击穿有什么区别? diff --git a/docs/high-availability/fallback-and-circuit-breaker.md b/docs/high-availability/fallback-and-circuit-breaker.md index 63bebb7ac03..e9aa9188d4f 100644 --- a/docs/high-availability/fallback-and-circuit-breaker.md +++ b/docs/high-availability/fallback-and-circuit-breaker.md @@ -1,6 +1,7 @@ --- title: 降级&熔断详解(付费) category: 高可用 +icon: circuit --- **降级&熔断** 相关的面试题为我的[知识星球](https://javaguide.cn/about-the-author/zhishixingqiu-two-years.html)(点击链接即可查看详细介绍以及加入方法)专属内容,已经整理到了[《Java 面试指北》](https://javaguide.cn/zhuanlan/java-mian-shi-zhi-bei.html)中。 diff --git a/docs/high-availability/high-availability-system-design.md b/docs/high-availability/high-availability-system-design.md index 3c05f2b8f30..f461f93e99b 100644 --- a/docs/high-availability/high-availability-system-design.md +++ b/docs/high-availability/high-availability-system-design.md @@ -1,6 +1,7 @@ --- title: 高可用系统设计指南 category: 高可用 +icon: design --- ## 什么是高可用?可用性的判断标准是啥? diff --git a/docs/high-availability/limit-request.md b/docs/high-availability/limit-request.md index 2d73ef2530f..812999aebcd 100644 --- a/docs/high-availability/limit-request.md +++ b/docs/high-availability/limit-request.md @@ -1,6 +1,7 @@ --- title: 服务限流详解 category: 高可用 +icon: limit_rate --- 针对软件系统来说,限流就是对请求的速率进行限制,避免瞬时的大量请求击垮软件系统。毕竟,软件系统的处理能力是有限的。如果说超过了其处理能力的范围,软件系统可能直接就挂掉了。 diff --git a/docs/high-availability/performance-test.md b/docs/high-availability/performance-test.md index 2fc9bfc980d..fe2ce94647f 100644 --- a/docs/high-availability/performance-test.md +++ b/docs/high-availability/performance-test.md @@ -1,6 +1,7 @@ --- title: 性能测试入门 category: 高可用 +icon: et-performance --- 性能测试一般情况下都是由测试这个职位去做的,那还需要我们开发学这个干嘛呢?了解性能测试的指标、分类以及工具等知识有助于我们更好地去写出性能更好的程序,另外作为开发这个角色,如果你会性能测试的话,相信也会为你的履历加分不少。 diff --git a/docs/high-availability/redundancy.md b/docs/high-availability/redundancy.md index 5cec473e54c..9d14d726675 100644 --- a/docs/high-availability/redundancy.md +++ b/docs/high-availability/redundancy.md @@ -1,6 +1,7 @@ --- title: 冗余设计详解 category: 高可用 +icon: cluster --- 冗余设计是保证系统和数据高可用的最常的手段。 diff --git a/docs/high-availability/timeout-and-retry.md b/docs/high-availability/timeout-and-retry.md index 8db69f11cb2..b5fb8ad5fda 100644 --- a/docs/high-availability/timeout-and-retry.md +++ b/docs/high-availability/timeout-and-retry.md @@ -1,6 +1,7 @@ --- title: 超时&重试详解 category: 高可用 +icon: retry --- 由于网络问题、系统或者服务内部的 Bug、服务器宕机、操作系统崩溃等问题的不确定性,我们的系统或者服务永远不可能保证时刻都是可用的状态。 diff --git a/docs/home.md b/docs/home.md index 4fe361668c6..d32e5cfef7a 100644 --- a/docs/home.md +++ b/docs/home.md @@ -13,16 +13,6 @@ title: JavaGuide(Java学习&面试指南) ::: -
- -![logo](https://oss.javaguide.cn/github/javaguide/csdn/1c00413c65d1995993bf2b0daf7b4f03.png) - -[GitHub](https://github.com/Snailclimb/JavaGuide) | [Gitee](https://gitee.com/SnailClimb/JavaGuide) - -
- -[![Banner](https://oss.javaguide.cn/xingqiu/xingqiu.png)](./about-the-author/zhishixingqiu-two-years.md) - ## Java ### 基础 diff --git a/docs/readme.md b/docs/readme.md index 115bddd4f8a..fc236da76ce 100644 --- a/docs/readme.md +++ b/docs/readme.md @@ -16,8 +16,6 @@ footer: |- 鄂ICP备2020015769号-1 | 主题: VuePress Theme Hope --- -[![Banner](https://oss.javaguide.cn/xingqiu/xingqiu.png)](./about-the-author/zhishixingqiu-two-years.md) - ## 关于网站 JavaGuide 已经持续维护 5 年多了,累计提交了 **5000+** commit ,共有 **440** 多位朋友参与维护。真心希望能够把这个项目做好,真正能够帮助到有需要的朋友!