ThreadLocal也叫“线程本地变量”、“线程局部变量”: 其作用域覆盖线程,而不是某个具体任务; 其“自然”的生命周期与线程的生命周期“相同”(但在JDK实现中比线程的生命周期更短,减少了内存泄漏的可能)。 ThreadLocal代表了一种 线程与任务剥离 的思想,从而达到 线程封闭…
让代码性能更高 需要 Map 的主键和取值时,应该迭代 entrySet() 当循环中只需要 Map 的主键时,迭代 keySet() 是正确的。但是,当需要主键和取值时,迭代 entrySet() 才是更高效的做法,比先迭代 keySet() 后再去 get 取值性能更佳。 反例: Map<String, String> map = ...; for…
1 黑/白名单IP限制访问配置 nginx配置黑白名单有好几种方式,这里只介绍常用的两种方法。 1、第一种方法:allow、deny deny和allow指令属于 ngx_http_access_module ,nginx默认加载此模块,所以可直接使用。 这种方式,最简单,最直接。设置类似防火墙iptable,使用方法: 直接配置文件中添加:…
过去一年里,ChatGPT 和 Google Bard 这样的东西出现,为大众带来了生成式人工智能,似乎每个人都在梦想和计划如何在他们的项目甚至日常生活中利用人工智能。 如果您是 Spring 开发人员,您可能想知道如何在 Spring 应用程序中实现生成式 AI。如果是这样,那么接下来这个视频一定适合您。 A BiliBili video 该视频介绍了…
PV&PVC 持久卷 官方文档 1. PV&PVC介绍 存储的管理是一个与计算实例的管理完全不同的问题。PersistentVolume 子系统为用户 和管理员提供了一组 API, 将存储如何供应的细节从其如何被使用中抽象出来。 为了实现这点,我们引入了两个新的 API 资源: PersistentVolume 和…
上一个章节我们已经清楚地的认识的pv,pvc的数据绑定原理,及pv,pvc与pod的绑定方法,那么对于有状态服务部署其实已经非常简单的了,有状态服务本身就是有实时的数据需要存储,那么现在数据存储的问题已经解决了,现在就来一个statefulset的实例部署。 StatefulSet 需要无头服务 来负责 Pod 的网络标识,所以先认识Headless…
StorageClass 存储类 官方文档 上一节演示了 PVC的自动化实现方式:利用volumeClaimTemplates 这一节将讲解PV的自动化: 利用StorageClass实现,可以根据PVC需求,自动构建相对应的PV持久化存储卷,进一步简化运维管理成本。 1. 理论…
Spring Framework 是一种流行的开源企业级框架,用于创建在 Java Virtual Machine (JVM) 上运行的独立、生产级应用程序。而Spring Boot 是一个工具,可以让使用 Spring 框架更快、更轻松地开发 Web 应用程序和微服务。随着 Spring Boot 的不断发展,开发人员必须跟上最新的升级和变化。…
我相信很多小伙伴在初次接触 Spring Security 时,一定会被这个问题所困扰,例如如下两段配置: http.authorizeRequests() .antMatchers("/admin/**").hasAuthority("admin") .antMatchers("/user/**").hasAuthority("user")…