程序设计语言中的 一等公民,二等公民,三等公民

本文介绍了程序设计语言中的一等公民、二等公民和三等公民的概念,详细解释了它们在参数传递、子程序返回及变量赋值方面的区别。

一等公民

一般来说,如果某程序设计语言中的一个值可以作为参数传递,可以从子程序中返回,可以赋值给变量,就称它为一等公民

二等公民

可以作为参数传递,但是不能从子程序中返回,也不能赋给变量

三等公民

它的值连作为参数传递都不行(比如label)

转载于:https://www.cnblogs.com/ysherlock/p/9029590.html

### Kubernetes 中的一等二等三等公民概念及其区别 Kubernetes 是一种容器编排工具,其设计核心围绕着资源调度和服务管理展开。为了更好地管理和分配集群中的资源,Kubernetes 定义了不同级别的 Pod 类型,这些级别通常被称为“一等公民”、“二等公民”和“三等公民”。以下是它们的具体定义和区别: #### 一等公民 (Guaranteed) 一等公民是指那些具有最高优先级的 Pod,它们被赋予了严格的资源保障[^1]。具体而言: - **资源请求与限制一致**:Pod 的 CPU 和内存请求值等于限制值。 - **优先级最高**:当集群资源不足时,Kubernetes 将优先保证一等公民 Pod 的运行状态。 - **驱逐机制**:如果需要释放资源,较低优先级的 Pod(即二等三等公民)会被驱逐以腾出空间。 这种类型的 Pod 非常适合对性能稳定性要求较高的场景,例如在线交易系统或实时数据分析平台。 #### 二等公民 (Burstable) 二等公民指的是那些拥有一定资源保障但并非完全固定的 Pod。特点如下: - **资源请求小于限制**:Pod 请求的资源量低于最大允许使用的资源量。 - **动态扩展能力**:在资源充足的情况下,可以超出初始请求值使用更多资源;但在资源紧张时,则可能受到限制。 - **次优保护**:虽然不如一等公民那样受严格保护,但仍优于无任何担保的三等公民。 此类配置适用于一些偶尔需要额外计算力的应用程序,比如批量处理作业或者缓存服务。 #### 三等公民 (BestEffort) 三等公民代表最低优先级的 Pod,几乎没有任何形式上的资源承诺[^1]: - **零资源声明**:既未指定资源请求也没有设置上限。 - **最容易受影响**:一旦发生争抢情况,这类实例将是第一批被淘汰的对象。 - **灵活性强**:尽管缺乏安全保障,但由于开销最小而非常适合执行短期任务或是实验性质的工作负载。 总结来看,“最佳努力”的策略使得该类别的 pod 成为消耗剩余容量的理想选择。 ```yaml apiVersion: v1 kind: Pod metadata: name: example-pod spec: containers: - name: container-name image: nginx resources: requests: memory: "64Mi" cpu: "250m" limits: memory: "128Mi" # 对于 Burstable 或 Guaranteed 设置此参数很重要 ``` 以上 YAML 片段展示了如何通过 `resources` 字段调整 Pod 所属类别。 --- ###
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值