资源元信息 资源对象 Spec 部分用来描述期望的状态 Status 部分用来描述观测到的状态 元数据 Labels 标签主要用来筛选资源和组合资源 Annotations 描述资源,系统或者工具用来存储资源的非标示性信息 阿里云负载器的证书 ID nginx 接入层的配置信息 上一次 kubectl 操作的资源的 json 的描述 OwnerRe…
为什么需要 Pod 容器的本质 一个视图被隔离、资源受限的进程 容器里 PID = 1 的进程就是应用本身 管理虚拟机 = 管理基础设施;管理容器 = 管理应用本身 Kubernetes 云时代的“操作系统” 容器就是这个操作系统的软件安装包 进程组 有的应用由多个进程组成,这些进程共享应用的资源,相互协作以达到应用的功能。 容器管理多进程的应用 …
前言 Spring Boot Admin 是一个优秀的 Spring Boot 应用监控,可以查看应用的各项性能指标,修改日志级别(生产环境利器,不用动不动就上 Arthas),dump 线程等功能。如果是微服务可以使用 Eureka 来做服务的注册与发现,单体应用的话直接往 Spring Boot Admin 的 Server 端注册就行。 这里…
什么是 Kubernetes 企业级的容器编排平台。 Kubernetes 这个单词是希腊语,它的中文翻译是“舵手”或者“飞行员”。联想一下 Docker 的集装箱,不难想到 k8s 是想成为运送集装箱的轮船,来管理集装箱,也就是管理容器。 “k8s”,是通过将8个字母“ubernete ”替换为“8”而导致的一个缩写。(这种缩短名称的方式还是第一…
容器与镜像 什么是容器? 操作系统里的进程 进程之间可以相互看到、相互通信; 使用的是同一个文件系统,可以对同一个文件进行读写操作; 使用相同的系统资源。(文件系统也算系统资源吧?) 存在的问题 进程被其他进程影响,高级权限的进程可以攻击其他进程; 不同进程对相同文件的使用可能存在冲突; 抢占系统资源,影响其他进程。 如何给应用提供独立的运行环境 …
CNCF 云原生基金会,2015 年,由Google、Redhat 以及微软等大型云计算厂商以及一些开源公司共同牵头成立。 Kubernetes 是 CNCF 托管的第一个开源项目。 云原生 为用户指定了一条低心智负担的、敏捷的、能够以可扩展、可复制的方式最大化地利用云的能力、发挥云的价值的最佳路径。 能够最大化地发挥云的能力,使得我们开发的软件和…
利用Mybatis拦截器,全局处理入库字段 场景 需要对某张表的个别字段删除全部空格、替换半角括号,但是项目里入口比较多,不止有前端录入,还有接口接收的数据。即使现在全部入口处理了,后续新增入口也不能保证。所以需要统一处理,一劳永逸。 实现 EnableCustomInterceptor 标识实体类入库时会使用自定义拦截器(mybatis) @Ta…
全局日志记录traceId 单体应用为了更方便的排查问题,使用过滤器+日志框架的MDC功能,实现每个请求产生的日志,都包含一个UUID。 定义过滤器 @Component @Order(1) public class TraceFilter extends OncePerRequestFilter { public static final Str…
Spring Boot多任务并发处理 创建公共线程池 @ConfigurationProperties(prefix = "common-thread-pool") @Data @Slf4j @Configuration @EnableAsync public class CommonThreadPoolConfig imple…
Open Feign Feign Feign声明式WebService客户端,旨在使编写Java Http客户端变得更容易,通过注解来使用。 Open Feign Open Feign是SpringCloud在Feign的基础上进行了封装,使之支持SpringMVC的注解和HttpMessageConverters(Http请求/响应与Java对象…