跳到主要内容

静态站点部署(netlify)

· 阅读需 3 分钟

用到了好的静态站点部署工具,值得分享一下。

访问地址:https://www.netlify.com/(界面是英文的,但是用起来很简单,翻译一下就很容易理解)

优点

  • 支持git持续部署(当每次提交代码,它会自动执行部署程序),仅支持GitHub、GitLab、Bitbucket、Azure DevOps。

  • 手动部署(上传打包文件)

提前准备

准备好已经打包好的静态网站文件夹。dist

域名

SpringBoot三级缓存

· 阅读需 7 分钟

文字链接:https://www.zhihu.com/question/445446018/answer/3796620273

三级缓存介绍

SpringBoot中的三级缓存主要是为了解决循环依赖问题的。

  • 一级缓存(singletonObjects): 存放的是已经完全实例化和初始化的 Bean,这个 Bean 是完整的,可以随时拿出来直接用,类似成品。比如 Map<String, Object> singletonObjects就是所有生成完成的 Bean 放在这里面。
  • 二级缓存(earlySingletonObjects) 存放的是还没经过 AOP 代理的 Bean,这些 Bean 是一种“半成品”。在处理一些复杂依赖时,Spring 可能会先创建一个“半成品 Bean”防止被人重复创建,结果把引用给弄乱了。比如 Map<String, Object> earlySingletonObjects
  • 三级缓存(singletonFactories) 这是关键。三级缓存里放的是一个 ObjectFactory 工厂引用,也就是生成 Bean 的回调方法。在循环依赖时,这个工厂能够在还没完全生成 Bean 时,就提供一个“临时引用”给其他对象依赖,保证 Bean 的生成不会出错。