上一页 1 ··· 30 31 32 33 34 35 36 37 38 ··· 53 下一页

2023年9月21日

Nginx printf打印输出到终端和打印格式

摘要: 把Nginx改成非守护进程方式运行daemon off; printf打印格式size_t本质类型是long unsigned int,printf使用%ld。 阅读全文

posted @ 2023-09-21 08:26 王景迁 阅读(330) 评论(0) 推荐(0)

Nginx高性能原因

摘要: 1. 在服务提供方式上,基于事件模型异步方式来提供服务。2. 在连接处理机制上,通过异步非阻塞方式来减少工作进程在I/O调用上的阻塞延迟,使用I/O多路复用来实现高性能监听套接口。3. 使用内存池批量申请内存和回收内存,减少内存碎片。 阅读全文

posted @ 2023-09-21 08:23 王景迁 阅读(84) 评论(0) 推荐(0)

2023年9月19日

kubelet删除pod异步操作

摘要: 基本流程 1. kube-apiserver把Pod设置为Terminating状态。2. 从Service中异步删除Endpoint。3. 异步执行preStop Hook。4. 异步发送SIGTERM信号。5. 等待terminationGracePeriodSeconds(默认值为 30 秒) 阅读全文

posted @ 2023-09-19 22:15 王景迁 阅读(53) 评论(0) 推荐(0)

2023年9月17日

责任链模式

摘要: 为请求创建一个对象链,每个对象依次处理请求并传给链中的下一个对象。责任链中每个对象都拥有同一个父类(或接口)。 package main import ( "fmt" "strings" ) type Handler interface { Handle(content string) next(h 阅读全文

posted @ 2023-09-17 10:32 王景迁 阅读(12) 评论(0) 推荐(0)

2023年9月16日

模板方法模式

摘要: 在接口中定义算法步骤,子类实现算法步骤。 拉起容器时既可以通过docker,也可以通过containerd。 package main import "fmt" type containerHandle struct { c containerHandler } type containerHand 阅读全文

posted @ 2023-09-16 22:34 王景迁 阅读(19) 评论(0) 推荐(0)

迭代器模式

摘要: 迭代器能在不暴露复杂数据结构内部细节的情况下遍历其中所有的元素。 package main import "fmt" type Iterator interface { hasNext() bool getNext() *User } type Collection interface { crea 阅读全文

posted @ 2023-09-16 20:45 王景迁 阅读(13) 评论(0) 推荐(0)

设计模式7大原则

摘要: 开闭原则对扩展开放,对修改关闭。 依赖倒置原则面向接口编程。 单一职责原则一个类、接口、方法只负责一项职责。 接口隔离原则接口中方法尽量少。 迪米特法则尽量降低类与类之间的耦合。 里氏替换原则引用父类的地方能使用其子类。 合成复用原则尽量使用合成/聚合的方式,不是使用继承。 阅读全文

posted @ 2023-09-16 20:24 王景迁 阅读(9) 评论(0) 推荐(0)

k8s限速队列源码分析

摘要: channel问题 channel是go协程间通信的主要方式。channel预设容量,很难评估,不支持动态扩容。k8s的client-go提供了基于切片的线程安全的并发队列,解耦生产者与消费者,提供了去重、限速、重试加入队列等功能。 k8s controller处理事件官方例子 生产者 // 创建一 阅读全文

posted @ 2023-09-16 16:10 王景迁 阅读(441) 评论(0) 推荐(0)

k8s controller选主

摘要: controller选主代码实现 controller多实例可能状态1 抢锁成功,作为Leader跑业务2 抢锁失败等待3 释放锁,结束 k8s官方例子go.mod和主流程 module controller-by-leader-election go 1.19 require ( github.c 阅读全文

posted @ 2023-09-16 11:05 王景迁 阅读(171) 评论(0) 推荐(0)

调整节点部署pod数上限

摘要: 默认单节点部署pod数上限是110,超过时会调度失败。 vim /var/lib/kubelet/config.yamlmaxPods: 300systemctl restart kubelet 阅读全文

posted @ 2023-09-16 09:27 王景迁 阅读(80) 评论(0) 推荐(0)

上一页 1 ··· 30 31 32 33 34 35 36 37 38 ··· 53 下一页

导航