Debian 爱好者社区 为您找到相关结果 811

Linux下多线程程序为什么消耗大量虚拟内存

最近游戏已上线运营,进行服务器内存优化,发现一个非常奇妙的问题,我们的认证服务器(AuthServer)负责跟第三方渠道SDK打交道(登陆和充值),由于采用了curl阻塞的方式,所以这里开了128个线程,奇怪的是每次刚启动的时候占用的虚拟内存在2.3G,然后每次处理消息就增加64M,增加到4.4G就不再增加了,由于我们采用预分配的方式,在线程内部根没有大块分内存,那么这些内存到底是从哪来的呢?让人百思不得其解。 探索 一开始首先排除掉内存泄露,不可能每次都泄露64M内存这么巧合,为了证明我的观点,首先,我使用了valgrind。 valgrind --leak-check=full --track-fds=yes --log-file=./AuthServer.vlog & 然后启动测试...阅读全文

博文 2015-01-28 10:35:39 debian.cn

kubelet 中垃圾回收机制的设计与实现

kubernetes 中的垃圾回收机制主要有两部分组成:一是由 kube-controller-manager 中的 gc controller 自动回收 kubernetes 中被删除的对象以及其依赖的对象;二是在每个节点上需要回收已退出的容器以及当 node 上磁盘资源不足时回收已不再使用的容器镜像;文主要分析 kubelet 中的垃圾回收机制,垃圾回收的主要目的是为了节约宿主上的资源,gc controller 的回收机制可以参考以前的文章 garbage collector controller 源码分析。kubelet 中与容器垃圾回收有关的主要有以下三个参数:--maximum-dead-containers-per-container: 表示一个 pod 最多可以保存多少个...阅读全文

博文 2021-02-05 17:48:22 知乎

从 Debian 安装 Proxmox VE,并配置网络和双硬盘

文记录如何从 Debian 安装 Proxmox VE,以及配置 IPv4 和 IPv6 网卡,为硬盘分区。 预配置系统装好后,从 NOCIX 后台面板取得 登陆用户名 和 密码。 用户名是 customer密码是一串随机生成的字符串 使用 su 切换到 root 还需要输入密码,这样频繁操作比较麻烦。 免密登陆 root安装 sudo 实现免密 su 12apt updateapt install -y sudo 修改 /etc/sudoers 文件注意:只能用 visudo 交互式来修改 sudoers 文件 这是为了防止被脚修改,就别想用 echo 来改了 visudo 会验证配置的格式,如果不验证,而你写的配置有问题,那么你无法切换到 root,而只有 root 用户才能修改...阅读全文

博文 2021-03-01 20:20:31 驱蚊器喵的插座

为何 Kubernetes 如此受欢迎?

,Kubernetes 将继续更加流行,并仍然是开源中最大的成功案例之一。 作者简介: Anurag Gupta - Anurag Gupta 是推动统一日志层 Fluentd Enterprise 发展的 Treasure Data 的产品经理。 Anurag 致力于大型数据技术,包括 Azure Log Analytics 和如 Microsoft System Center 的企业 IT 服务。文转自https://opensource.com/, 中文版来自Linux.cn...阅读全文

博文 2017-11-07 23:58:26 debian.cn

使用 setfacl 管理文件的访问控制列表ACL

absolute path names # file: opt/test # owner: root # group: root user::rwx user:code:r-- //可以看到code单独的权限为r-- group::rwx mask::rwx other::rwx 注意:code 的权限并不是只根据ACL配置来决定的,它是由code用户基权限与配置的ACL权限的“与”运算决定的,即other:rwx 与 code:r-- = code:r-- 可以使用code用户,测试是否可写。在写文件时,会出现-- INSERT -- W10: Warning: Changing a readonly file提示。 除了对单个用户进行设置外,还可以对用户组、有效权限(mask)进行设置。 如对用户组...阅读全文

AWS EKS 添加IAM用户角色 - SRE运维博客

集群配置权限的集群创建者或管理员角色,请在 AWS CloudTrail 中搜索 CreateCluster API 调用。然后,检查此 API 调用的 UserIdentity 部分。 识别需要权限的 IAM 用户或角色。 确认已识别的 IAM 用户或角色有权在 AWS 管理控制台中查看所有集群的节点和工作负载。 使用 aws-auth ConfigMap 将 IAM 用户或角色映射到 RBAC 角色和组 {{< notice info "重要提示:" >}} 在连接 Amazon EKS API 服务器之前,安装并配置最新版的 AWS CLI。 {{< /notice >}} 获取 AWS CLI 用户或角色的配置: aws sts get-caller-identity 输出将返回...阅读全文

博文 2022-12-19 21:15:27 博客园

漫画赏析:Linux 内核到底长啥样

显示的图形界面嗳,对,图形界面(X Window)一般就在 7 号终端;tty5 和 tty6 是空的,这表示这两个终端没人用。等等,tty1 呢? tty tty(终端)是对外沟通的渠道之一,但是,不是每一个进程都需要 tty,某些进程可以直接通过其他途径(比如端口)来和外部进行通信,对外提供服务的,所以,这一层不是完整的一层,只是个跃层。 好了,我们有落下什么吗? 这小丑是谁啊?啊哈,我也不知道,或许是病毒?你说呢?【文转自 Linux.中国,原始链接在这里】...阅读全文

博文 2021-01-28 17:50:24 debian.cn

玩转 AWS 的必备工具

AMI全过程一般用时费力不易配备,并且容易错误。因此 大家必须一个专用工具来自动化技术全部建立AMI的全过程,与此同时叙述建立AMI的编码能够储存而且根据再配备重复使用,来很大地优化和管理方法AMI建立的全过程。 Packer就这样一个自动化技术建立AMI的专用工具。如下图所显示,Packer根据JSON文件模板来叙述一个建立AMI的全过程,如何配置AMI都由编码叙述。客户只需根据改动这一软件更新来随后实行一个简洁的指令来自动生成订制的AMI。那样订制AMI的全过程则能够直接进入版号智能管理系统,便捷消费者查看和跟踪订制全过程的转变 。...阅读全文

玩转 AWS 的必备工具

再用AWS的建立镜像工具转化成一个订制的AMI。那样手动式建立的AMI全过程一般用时费力不易配备,并且容易错误。因此 大家必须一个专用工具来自动化技术全部建立AMI的全过程,与此同时叙述建立AMI的编码能够储存而且根据再配备重复使用,来很大地优化和管理方法AMI建立的全过程。 Packer就这样一个自动化技术建立AMI的专用工具。如下图所显示,Packer根据JSON文件模板来叙述一个建立AMI的全过程,如何配置AMI都由编码叙述。客户只需根据改动这一软件更新来随后实行一个简洁的指令来自动生成订制的AMI。那样订制AMI的全过程则能够直接进入版号智能管理系统,便捷消费者查看和跟踪订制全过程的转变 。...阅读全文

Golang 中的 channel 通道详解

channel通道golang的并发模型是序列通信处理CSP(communicating sequential process)——使用通信来共享内存 ,避免goroutine因竞争共享内存频繁加锁产生的性能问题。基数据结构golang中提供了一个特殊的类型channel实现goroutine之间的通信。channel类似于队列,先进先出。channel数据结构源码在src/runtime/chan.go下。chan 使用 hchan 表示,它的传参与赋值始终都是指针形式,每个 hchan 对象代表着一个 chan。hchan 中包含一个缓冲区 buf,它表示已经发送但是还未被接收的数据缓存。buf 的大小由创建 chan 时的参数来决定。qcount 表示当前缓冲区中有效数据的总量...阅读全文

Golang Context 探究

在用 Golang 开发过程中,我们一定能在代码里很多函数或方法都会传递 context, 也会经常遇到这样的报错 context deadline exceeded。你有想过或去探究过 context 到底是什么吗,为什么会遇到上述的报错。在这里我们就分析一下 context 是什么及用途。 首选 Golang 中的 context 值得是 context.Context 接口,Golang 在 1.7 版中引入标准库的接口。context 主要用来在 goroutine 之间传递上下文信息,包括:取消信号、截止时间、key-value 等。 Context 定义 Context 接口定义如下 1 2 3 4 5 6 7 8 9 10 type Context interface...阅读全文

博文 2021-02-25 09:27:27 lxkaka