- 博客(10)
- 收藏
- 关注
原创 HotSpot虚拟机
对象的创建本文中讨论的对象限于普通JAVA对象,不包括数组和Class对象。当虚拟机遇到一个new指令时,首先检查这个指令的参数是否可以在常量池中找到该类的符号引用,并检查这个符号引用代表的类是否已经被加载,解析,和初始化过。如果没有则必须先执行相应的类加载过程。内存分配在类加载检查通过之后,虚拟机在堆中为新生对象分配内存。一般通过如下两种方式指针碰撞(Bomb The Pointer)假设堆内存是绝对规整的,已经用过的和未用过的各处于一边,中间放着以一个指针作为分界点的指示器,那么分配内存就是把
2022-07-13 15:28:12
501
原创 Kubernetes 运维指南
Node的管理Node的隔离和恢复通过kubectl cordon 和 uncordon来进行隔离和恢复调度Node扩容在新的节点是安装Docker及kubelet,kube-proxy服务后,通过制定Master URL为当前Kubernetes集群的Master地址,最后启动这些服务,通过kubelet默认的自动注册功能,新的Node节点会自动加入到集群中。集群环境共享与隔离(Namespace)在一个Kubernetes集群中,可以通过命名空间和Context的设置来对不同的工作组进行划分
2021-09-02 16:56:54
593
原创 AWK入门
简介awk是一种编程语言,用于在linux/unix对文本和数据进行扫描与处理。数据可以来自标准输出,文件,管道。(以下以centos7 自带gawk为例讲解)工作流程逐行扫描文件,从第一行到最后一行,寻找匹配特定模式的行,并在这些行上执行用户操作。Awk的基本结构由模式匹配和处理过程组成。pattern {action}Awk读取文件的每一行时,将比对是否与给定的模式相匹配,如果匹配则执行处理过程否则不出来。如无指定处理过程,则把匹配的行输出到标准输出即默认的处理动作是print打印行。BE
2021-09-01 21:33:53
341
原创 Kubernetes网络原理
问题思考Kubernetes的网络模型是什么Docker 背后的网络基础是什么Docker自身的网络模型和局限Kubernetes 的网络组件之间是怎么通信的外部如何访问Kubernetes的集群开源组件Kubernetes 网络模型Kubernetes网络模型设计的一个基础原则是:每个Pod都用有一个独立的IP 地址。假设所有的Pod都在一个可以直接连通的,扁平的网络空间中,即无论Pod在哪个Node,它们都可以直接通过对方的IP进行访问。IP-per-Pod在Kubernetes
2021-08-29 11:26:37
209
原创 Postgresql -Standby数据库的搭建
数据库服务器通常允许存在一个与主库同步的在线备数据库服务器,当主数据库服务器出现故障,备数据服务器就可以快速提升为主服务器并提供服务。Postgresql 中提供读写全功能的数据成为Primary database 或 master database。warm stanby server :备份数据库在主从同步数据时不能提供只读服务hot stanby server :备份数据库在主从同步数据时能提供只读服务原理pg_xlog 目录中始终维护这一个WAL 日志文件,这个日志文件作用在于记录数据
2021-08-27 22:03:21
985
原创 Docker架构
docker引擎历史架构Docker首次发布时,Docker引擎由两个核心组件组成Docker daemon : 单一的二进制文件、包含Docker客户端、Docker API、容器运行时、镜像构建LXC :提供了对命名空间 Namespace 和控制组 CGroup 等基础工具的操作能力。他们是基于Linux内核的容器虚拟化技术。...
2021-08-18 18:41:54
138
原创 Deployment 、DaemonSet、StatefulSet更新策略
Deployment如果Pod是使用Deployment创建的,那么用户可以实时的修改Deployment 内容并应用,K8S 会自动完成Deployment的更新,如果更新过过程中发生了错误,还可以用Rollback 操作恢复Pod的版本在Deployment的定义中,可以通过spec.strategy 制定Pod 更新策略。目前支持以下两种更新策略:Recreate : 重建,spec.strategy.type=Recreate 表示Deployment会在更新Pod时先杀掉所有正在运行的P
2021-08-17 17:08:51
3002
原创 Kubernetes-Service
定义Kubernetes Service 定义了这样一种抽象:一个 Pod 的逻辑分组,一种可以访问它们的策略 —— 通常称为微服务。 这一组 Pod 能够被 Service 访问到,通常是通过 Label Selector实现的。一个 Service 在 Kubernetes 中是一个 REST 对象,和 Pod 类似。 像所有的 REST 对象一样, Service 定义可以基于 POST 方式,请求 apiserver 创建新的实例。例如,假定有一组 Pod,它们对外暴露了 9376 端口,同时
2021-08-17 07:44:34
377
原创 PostgreSQL逻辑结构管理(二)
表继承表继承是PG中特有的概念。字表会继承父表中的所有字段。查询数据时,查询父表会带出子表数据,反之不行。如果只希望查询父表数据,可以使用ONLY关键字如 select * from ONLY parent;注:1.父表的检查约束和非空约束会被子表继承。其他约束(如唯一约束,主键,外键)则不会被继承。2.一个子表可以从多个父表继承,当同名字段出现在多个父表中(或者父表和子表中),这些字段会被融合(此时字段类型必须相同,否则会抛出一个错误),融合的字段拥有所有父字段所有的检查约束。3.使用SEL
2021-08-15 20:47:40
219
原创 JVM自动内存管理-垃圾回收算法和垃圾收集器
垃圾回收算法标记-清除算法(Mark-Sweep)这是最基础的收集算法,分为标记和清除两个阶段。首先标记出所有需要回收的对象,在标记过程完成后统一回收。标记过程详见上篇博文。缺点1、效率问题:标记和清除的效率不高2、空间问题: 标记清除后会产生大量不连续的内存碎片。复制算法为了解决效率问题而产生,它将可用内存按容量划分成为大小相等的两块,每次只使用其中的一块。当这一块的内存用完了,就将还存活的对象复制到另外一块上面,然后再把已使用过的内存空间一次清理掉。这样每次都是对整个半区进行内存回收
2021-07-14 18:09:46
364
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人