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

nsenter 及 Linux命名空间 简介

nsenter 是一个可以在指定进程的命令空间下,运行程序的命令,它位于 util-linux 包中。 nsenter 用途 nsenter 的一个典型用途是进入容器的网络名字空间,进行网络相关的排障。大多数容器,为了保持轻量,没有包含较为基础的命令,比如说 ip,ping,telnet,ss,tcpdump等,这就给容器内的网络调试来困扰。这时就可以使用 nsenter 命令仅进入到容器的网络命名空间,使用宿主机的相关命令调试容器网络。 此外,nsenter也可以进入 mnt, uts, ipc, pid, user 命令空间,以及指定根目录和工作目录。 nsenter 使用 首先看下nsenter命令的语法: nsenter [options] [program [arguments...阅读全文

博文 2020-12-15 11:22:44 debian.cn

Terraform 学习总结 — Terraform 简介

前言 在 DevOps 实践中,基础设施即代码如何落地是一个绕不开的话题。像 Chef,Puppet 等成熟的配置管理工具,都能够满足一定程度的需求,但有没有更友好的工具能够满足我们绝大多数的需求?笔者认为 Terraform 是一个很有潜力的工具,目前各大云平台也都支持的不错,尤其是使用起来简单明了。本文会简单的介绍一下 Terraform 相关的概念,然后通过一个小 demo 大家一起进入 Terraform 的世界。说明:本文的演示环境为 ubuntu 16.04。 Terraform 是什么? Terraform 是一种安全有效地构建、更改和版本控制基础设施的工具(基础架构自动化的编排工具)。它的目标是 "Write, Plan, and create...阅读全文

Kubernetes v1.21 新特性预览

Kubernetes v1.21 下个月就要发布了(v1.21.0 将于 4 月 8 日发布),本文梳理该版本来的新特性,以便你为下个月的升级做好准备。PodSecurityPolicy 弃用PodSecurityPolicy(PSP)是 Kubernetes 1.8 开始就支持的 Beta 特性,大量应用于容器的安全策略控制。但由于其 API 不够灵活、认证模型不够完善且配置更新繁琐等缺陷,PodSecurityPolicy 将在 v1.21 正式弃用[1],并将在 v1.25 中从代码库中删除。已经使用 PodSecurityPolicy 的用户建议迁移到 Gatekeeper[2]。不可变 ConfigMap/Secret 进入稳定版当集群包含大量 ConfigMap 和...阅读全文

博文 2021-03-30 20:24:36 mp.weixin.qq.com

Debian 11 "bullseye" 发布,带来内核 exFAT 支持

经过 2 年 1 个月零 9 天的开发,Debian 11.0 "bullseye" 正式发布了。该版本包括许多重大的变化,并将在未来 5 年内得到支持。Debian 11 支持的计算机架构包括:32 位 PC(i386)和 64 位 PC(amd64)64 位 ARM(arm64)ARM EABI(armel)ARMv7(EABI 硬浮点 ABI,armhf)MIPS(mipsel)64 位 MIPS(mips64el)PowerPC(ppc64el)IBM System z(s390x)这次发布中有什么新变化Debian 的这次发行再次来了比上一版本 buster 更多的软件;本次发行包括 11294 个新软件包,软件包的总数达到了 59551 个。这个发行版的多数软件包得到了更新...阅读全文

玩转 AWS 的必备工具

虽然AWS平台早已早已为使用者来了十分详细和高品质的工具箱,但在具体运用中含的软件还没有尤其方便快捷或是能满足客户的必须,因而,紧紧围绕全部AWS平台,客户及其许多专业开发设计AWS专用工具的企业发布了很多和AWS规范专用工具互为补充的第三方开发环境。这种专用工具集中化在系统软件布署管理方法自动化技术,系统架构图自动生成可视化工具,及其服务器资源监管专用工具等AWS技术栈的最底层服务项目。 系统软件布署管理方法自动化技术专用工具. 中国开发者利好消息!AWS(亚马逊云计算)中国区新用户注册即可免费使用12个月云服务产品啦!每注册一个新用户均可享受新的12个月免费云服务器数据库等产品!快来加入我们吧! 免费12个月链接: https://aws.amazon.com/cn/free...阅读全文

CentOS停止维护后,我们应该用什么操作系统?

有很多理由可以选择 Debian 作为您的操作系统——作为用户、作为开发者,甚至是在企业环境中。大多数用户称赞它的稳定性,以及软件包和发行版的平滑的升级过程。Debian 也被软件和硬件开发人员广泛使用,因为它能运行在众多架构和设备上,提供了一个公开的缺陷跟踪系统,以及面向开发人员的其他工具。如果您在专业环境中使用 Debian,您还可以享受到诸如 LTS 版本和云映像来的额外好处。对我而言,使用 Debian 的原因是它完美的易用性和稳定性。这些年来,我使用了各种不同的发行版,但是 Debian 是唯一一个能够完美使用的发行版。NorhamsFinest 在 Reddit 上写道面向用户的 DebianDebian 是自由软件。Debian 是由自由和开放源代码的软件组成的,并将始终保...阅读全文

玩转 AWS 的必备工具

虽然AWS平台早已早已为使用者来了十分详细和高品质的工具箱,但在具体运用中含的软件还没有尤其方便快捷或是能满足客户的必须,因而,紧紧围绕全部AWS平台,客户及其许多专业开发设计AWS专用工具的企业发布了很多和AWS规范专用工具互为补充的第三方开发环境。这种专用工具集中化在系统软件布署管理方法自动化技术,系统架构图自动生成可视化工具,及其服务器资源监管专用工具等AWS技术栈的最底层服务项目。 系统软件布署管理方法自动化技术专用工具. 中国开发者利好消息!AWS(亚马逊云计算)中国区新用户注册即可免费使用12个月云服务产品啦!每注册一个新用户均可享受新的12个月免费云服务器数据库等产品!快来加入我们吧! 免费12个月链接: https://aws.amazon.com/cn...阅读全文

新加坡华侨银行(OCBC) 零门槛开户 使用APP在家即可申请

者自己手机自的商店。2. 进入开户流程准备好所需材料,开始进入开户流程。1 打开APP 选择简体中文。如果没有弹出,可以点击右上角来选择语言。然后,点击 【注册成为新客户】​2 选择第二项 【持电子护照的外国人】,然后点击【开始申请】​输入介绍人代码 【 IRVU37JB 】,可以获得 15 新币,大约80元人民币的奖励。不写的话没有任何奖励。​3 国家代码点进去选择中国大陆 +86,手机号和邮箱输入自己的即可。然后,接收验证码并填写。​4 点击下一步,扫描护照条形码。这一步,把护照打开到有人像的那一页,然后在光线充足的地方使用手机扫描。 需要一些耐心,扫描可能不会很快,手拿稳多试试即可。​5 NFC 读取护照芯片。护照合上,手机背面贴在护照正面上,开始读取。缓缓移动手机,调整到可以读取的...阅读全文

21款必不可少的Ubuntu桌面应用程序

。 19. Unity Folders启动器组织整理 Unity Folders是一款恰如其名的应用程序,它让你可以在Unity启动器上创建可点击的文件夹。 如果你想不必打开Unity Dash,就可以根据类型(“游戏”、“办公”、“社交”等)管理最常用的应用程序,它再理想不过了。你可以定制文件夹图标(或根据里面的应用程序,自动生成图标),同时还可以对现有的文件夹进行编辑、重新排列、更名及其他操作。 20. Clementine音乐播放器 我在开始撰写本文时,就相信自己不会列出可替代Rhythmbox的其他任何音乐播放器,就因为很少有播放器像它那样提供强大的功能。 21. Go For It任务管理器 Ubuntu不再随一款还不错的笔记应用程序(它过去随Tomboy),但要是没有这样一种工具...阅读全文

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

2017 年会是 Serverless 爆发之年吗

务(Backend-as-a-Service,BaaS),或移动后端即服务(MobileBackend-as-a-service,MBaaS)。 现在,无服务器架构是指大量依赖第三方服务 (也叫做后端即服务,即“BaaS”) 或暂存容器中运行的自定义代码 (函数即服务,即“FaaS”) 的应用程序,函数是无服务器架构中抽象语言运行时的最小单位,在这种架构中,我们并不看重运行一个函数需要多少 CPU 或 RAM 或任何其他资源,而是更看重运行函数所需的时间,我们也只为这些函数的运行时间付费。无服务器架构中函数可以多种方式触发,如定期运行函数的定时器、HTTP 请求或某些相关服务中的某个事件。 Serverless 案例 以有服务功能逻辑的传统面向客户端的三层应用为例(一个典型的电子商务应用网...阅读全文

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

一位五年工作经验架构师的感悟

然现在的公司对我们还是很不错)。 钱,对于我而言,就是想买个安心。我用它来让父母对我的未来安心;让妻子对于未来充满信心(虽然她现在还不算很安心);让整个家庭有一定的风险抵抗能力。 安心以后,就是上路。 我记得第一段工作,是在恒生。我当时在恒生银行事业部,工作一年后,我发现自己进步很慢,在技术体系没有任何进展,公司的技术体系很旧,而且基本不进化。我自己做了一个技术的演进,使用了一种新的方式提升了平台的整体能力(当年还没有平台能力这些体系思路)。然后还期待年底被表彰下,技术人也是虚荣的,呵呵,就是期望可以来成就感。 做着做着,发现没有人可以帮助我提升,虽然当时我很弱,我的学**思路也不清晰。平时就是逛逛网站,学**的很肤浅。但是,我内心感受到:如果要是这样待下去,肯定废了,几年之后,还是同样的...阅读全文

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

互联网协议正在发生变化

在已经被广泛部署,并且被所有的主流浏览器和 web 服务器支持。 从网络的角度来看,HTTP/2 来了一些显著变化。首先,这是一个二进制协议,因此,任何假定它是 HTTP/1.1 的设备都会出现问题。 这种破坏性问题是导致 HTTP/2 中另一个重大变化的主要原因之一:它实际上需要加密。这种改变的好处是避免了来自伪装的 HTTP/1.1 的中间人攻击,或者一些更细微的事情,比如 strip headers 或者阻止新的协议扩展 —— 这两种情况都在工程师对协议的开发中出现过,导致了很明显的支持问题。 当它被加密时,HTTP/2 请求也要求使用 TLS/1.2,并且将一些已经被证明是不安全的算法套件列入黑名单—— 其效果只允许使用短暂密钥ephemeral keys。关于潜在的影响可以去看...阅读全文

Gitlab CI 配置文件 .gitlab

: 1 week dependencies GitLab 8.6 和 GitLab RUnner v1.1.1引入。 这个功能应该与artifacts一起使用,并允许定义在不同jobs之间传递artifacts。 注意:所有之前的stages都是默认设置通过。 如果要使用此功能,应该在上下文的job中定义dependencies,并且列出之前都已经通过的jobs和可下载的artifacts。你只能在当前执行的stages前定义jobs。你如果在当前stages或者后续的stages中定义了jobs,它将会报错。可以通过定义一个空数组是当前job跳过下载artifacts。 在接下来的例子中,我们定义两个artifacts的jobs,build:osx和build:linux。当test:osx...阅读全文

博文 2018-12-12 21:09:02 ci.yaml 详解(下)

阿里巴巴版 JDK 首发 GA 版 生产环境可用

区接受,确定会被移植进 OpenJDK 8u 主线,目前社区的移植工作正在 incubator 分支紧张进行当中。在不远的将来,整个 OpenJDK 8 的下游生态都可以享受这一功能特性。 除社区现有功能外,Dragonwell 在 JFR 上做了很多增强和创新。作为 JFR 在 OpenJDK 8u 社区的参与者,阿里巴巴表示会将 Dragonwell 在 JFR 方面的最新工作成果及时引入社区。在上游社区接受这些特性之前,Dragonwell 的开发者将会最先使用这些新特性。 ElasticHeap 新特性展望 据阿里巴巴内部披露,ElasticHeap 特性将很快在下一个版本开源。作为高级编程语言,Java 有垃圾回收器。随着程序运行,Java 会把用户配置的内存逐渐消耗掉。即使这些...阅读全文

博文 2019-07-11 10:24:52 debian.cn

Docker 核心原理

对 Docker 的使用大部分都比较熟悉,但是说到 docker 的实现原理很多人还是一知半解。我把在团队内部做的一次 Docker 核心原理分享总结到文章里,以供参考。 Docker 的优势 Build once, Run anywhere 上面这句话很精辟的总结了 docker 的优点。我从下面几点具体描述 docker 给开发者的能力 应用标准化 无论什么语言开发的应用,我们都能用 dockerfile 和构建脚本方便的进行应用构建打包,代码库 + 构建 + registry 统一了 CI/CD 流程,也提升了效率。 环境一致 由于应用和依赖全部构建成镜像,做到了一次构建多次交付,无论是开发,测试还是上线环境都是一致的。大大提高了开发效率 应用隔离 由于通过 docker 部署的应...阅读全文

博文 2021-02-25 09:14:23 lxkaka

DPDK Graph Pipeline 框架简介与实现原理

的介绍 graph walk 的概念简单明了,它总是有次序地去完成一系列操作: 21行:定位下一个需要处理的 node 23行:准备下一个需要处理的 node 的 objects /报文 29行:处理定位好的 node 32行:检查 graph walk 是否完成 在 graph walk 层面来看,最重要的就是第一步:定位下一个要处理的 node。DPDK 的 graph 框架利用了 circular buffer 和附的 head 和 tail 指针定位下一个 node,如果 head 不等于 tail 指针,这就代表了 circular buffer 里有需要处理的 node,而在 libgraph 库中,这些待处理的 node 也被称为 pending stream。 回到第一步...阅读全文

博文 2023-02-09 07:13:55 掘金

aptitude 与 apt

update。如果apt-file search filename输出的内容太多,您可以尝试使用, apt-file search filename | grep -w filename 只显示指定字符串作为完整的单词出现在其中的那些文件名,类似方法还有 , apt-file search filename | grep /bin/ 只显示位于诸如/bin或/usr/bin这些有/bin字段的文件夹中的文件,如果您要查找的是某个特定的执行文件的话,这样做是有帮助的。 典型应用 我是个赛车发烧友,想装个赛车类游戏玩玩。有哪些赛车类游戏可供选择呢?apt-cache search racing game出来了一大堆结果。看看有没有更多关于torcs这个游戏的信息。apt-cache show torcs...阅读全文

博文 2021-01-28 17:50:09 get 的区别与联系

Intel 为啥要给 ARM 代工

的就是台积电。 一直以来,Intel 在半导体制程工艺上都具有较大优势。这也为 Intel 在 PC 市场与 AMD 的竞争中来基础。在吃够了奔四的亏以后,Intel 洗心革面在当年设计极为出色的 P6 架构(比如奔 III 的图拉丁核心)基础上衍生出了迅驰以及酷睿等成功产品,不仅在 CPU 性能上压倒性超越 AMD,并且逐渐整合了北桥,南桥,集成显示核心等。 这个过程中,一系列第三方接口芯片商,显示核心商彻底失去了市场,一台最简化的电脑可以只剩下 Intel 的 CPU+集成电源管理芯片(如 AXP 系列)+无线芯片+RAM+存储(SSD/eMMC)+音频/触摸/显示控制等少数几块芯片。 经过这一番商业大战之后,Intel 独霸电脑芯片后,但也导致一个结果,IC 领域经历过混战幸存到现在...阅读全文

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

Debian 9.3上安装和配置 Observium 监控平台

命令退出MySQL shell: MariaDB [(none)]>\q 下载并安装Observium Observium有两个版本:开源版本和订阅版本,开放源代码版本可以免费下载,功能较少,安全修复程度较低,而订阅版本则附额外的功能和硬件支持。 您可以使用以下命令从官方网站下载Observium的开源版本: wget http://www.observium.org/observium-community-latest.tar.gz 下载后,使用以下命令提取下载的存档: tar -xvzf observium-community-latest.tar.gz 接下来,将提取的目录复制到Apache Web根目录: cp -ar observium /var/www/html/ 接下来,重命...阅读全文

博文 2017-12-30 11:35:21 debian.cn

架构师详解 Nginx 架构

线程启动和执行的流程如下:主程序 Master process 启动后,通过一个 for 循环来接收和处理外部信号;主进程通过 fork() 函数产生子进程,每个子进程执行一个 for 循环来实现 Nginx 服务器对事件的接收和处理。 一般推荐 worker 进程数与 cpu 内核数一致,这样一来不存在大量的子进程生成和管理任务,避免了进程之间竞争 CPU 资源和进程切换的开销。而且 Nginx 为了更好的利用多核特性,提供了 cpu 亲缘性的绑定选项,我们可以将某一个进程绑定在某一个核上,这样就不会因为进程的切换来 cache 的失效。 对于每个请求,有且只有一个工作进程对其处理。首先,每个 worker 进程都是从 master 进程 fork 过来,在 master 进程里面,先建...阅读全文

博文 2018-05-01 23:10:47 debian.cn

Go 语言的大版本更新:Go 2.0 安排上了

1确保提案所做的任何变更都可以帮助到尽可能多的 Go 开发者(使他们编写的代码更健壮、正确性更高等),条件2则保证了变更将给使用者来的影响降到最低。 至于条件3,如果提案不能满足该条件,它将不会被实现。即便这项提案能够解决一个很重要的问题,思路也很好,但在没有实现方案的情况下,它将会被拒绝,并需要重新起草。 下一步 在这篇文章发布时,Go 开发团队表示已经执行提案评估流程的第一步,并开始了流程的第二步,关于具体的提案可点此进行查看。 对于 Go 开发团队已经明确并通过的提案,将会继续实现(即评估流程的第3步)。开发团队表示希望在下一个发布周期的第一天(暂定于2019年2月1日)完成这些提案变更的实现,所以这次可能会在较早的时间开始进行,以留出两个月的反馈时间(2018年12月至2019年1...阅读全文

百度运维工程师挖矿实录:四个月用155台服务器挖矿赚10万判3年

万一千元,其中人民币十万元作为违法所得,予以没收;其中人民币一万一千元,折抵罚金。 三、扣押于公安机关的银色苹果牌笔记本电脑一台、TOKEN 密钥一个,发还北京百度网讯科技有限公司;苹果牌 4S 手机一部、苹果牌 6 手机一部、华为手机一部,退还被告人“安某”。 为什么总是运维人员? 这起挖矿事件虽然告一段落了,但对于众多企业来说,这也是一个提醒,因为除去企业自身的风险外,很多情况下,人为因素也为企业安全风险中来了很多挑战,企业需要正视长期存在的 IT 运维权限风险问题。 相信大家还记得前不久微盟宕机 36 小时的事情,事后,微盟拿出了 1.5 亿商家赔付计划,并表示放弃自建数据库,但这场由运维工程师恶意操作引爆的微盟 300 万商家数据删除案也让大家对数据安全有了更多的恐慌。 而百度的这...阅读全文

博文 2020-03-17 20:42:41 debian.cn

Kubernetes 部署 Nacos 1.4 集群 · 小豆丁

port: 8848 targetPort: 8848 nodePort: 30848 selector: app: nacos type: NodePort 这里使用 NodePort 方式暴露服务。当然,如果你的 Kubernetes 集群部署了 Ingress Controller,也可以配置 Ingress 路由规则,来让外部访问你的服务。 五、访问 Nacos 进行测试 本人这里的 Kubernetes 地址 IP 为 192.168.2.11,而上面配置的 Nacos Service 中指定 NodePort 端口为 30848,又由于 Nacos 默认会上前缀 /nacos,所以我们可以输入地址 http://192.168.2.11:30848/nacos 访问 Nacos 页面...阅读全文

博文 2021-02-24 10:10:29 www.mydlq.club

字节跳动开源微服务中间件 CloudWeGo - OSCHINA

发语言。早在 2016 年,基础架构团队就已经开始基于 Golang 开发内部框架 Kite,并在 2019 年围绕性能和可扩展启动重构,使其能更好地满足业务发展和技术体系演进需求。 2020 年 10 月,Kitex 正式上线。虽然是一个全新的框架,但经过一年的线上应用,目前字节跳动内部已有超过 50% 的 Golang 微服务迁移到了 Kitex。 下面是 Kitex 的一些特性: 高性能:Kitex 默认集成自研网络库 Netpoll 作为网络传输模块,性能相较使用 go net 有显著优势;除了网络库来的性能收益,Kitex 对 Thrift 编解码也做了优化,这在之前的性能优化实践文章中有介绍。关于性能数据,可参考 https://github.com/cloudwego...阅读全文

博文 2021-09-09 13:56:42 中文开源技术交流社区

五款流行开源的 HIDS 系统简单介绍

文件大小限制。4. SamhainSamhain是具有中央管理功能的开源HIDS,可帮助您检查文件完整性,监视日志文件并检测隐藏的进程。这种多平台解决方案可在POSIX系统(Unix,Linux,Cygwin / Windows )上运行。Samhain的安装非常简单,您只需要从官方网页下载tar.gz文件并将其安装在系统上即可。在此之前,您需要确保MySQL和Apache在您的服务器上运行。Samhain项目有大量详细的文档。该HIDS还通过TCP / IP通信提供集中和加密的监视功能。它与其他先前讨论过的开源HIDS的不同之处在于其隐身功能- 使其免受入侵者的侵害- 这要归功于其开发人员编写的偏执代码。而Samhain 社区 很好,比其他HIDS难安装。Windows的客户端要求安装...阅读全文

博文 2023-01-26 11:07:43 joseph

Golang Context 探究

context ctx, cancel := context.WithTimeout(context.Background(), 10*time.Millisecond) defer cancel() getMessage(ctx) } func getMessage(ctx context.Context) { // 新建 context 超时取消的 http 请求实例 req, _ := http.NewRequestWithContext(ctx, http.MethodGet, "http://127.0.0.1:8008/test", nil) client := &http.Client{} res, err := client.Do(req) if res != nil...阅读全文

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

最全的 DevOps 工具集合

人员都可以使用这款敏捷项目管理工具,围绕一个共享的,有优先级的 backlog 进行实时协作。 Trello Trello 是基于 Web 的看板风格列表制作应用程序,是 Atlassian 的子应用。 许多团队在规划各个 sprint 时都会用它。 Azure Boards 可以跟踪软件项目,并使用敏捷工具(包括 Scrum boards、看板 boards 和仪表板等)改进规划工作。同时,还有工具可以帮助你可视化工作、共享计划、跟踪进度,并确保你正在向目标迈进。 问题跟踪 问题跟踪阶段是为了提供客户响应能力,减少知识浪费,缩短反馈链路。目前业内比较常用的问题跟踪工具包括 Atlassian Jira、JetBrains YouTrack 和 ZenDesk。 Atlassian...阅读全文

博文 2021-05-26 14:35:21 博客园

提问的智慧 – 全文

reflects all my updates to it. 译文 如果你想复制、镜像、翻译或引用本文,请参阅我的 复制协议[2]。 【本章注释】 [2]这份复制协议类似于版权声明,这份声明主要说明了以下四点:(1)你们可以复制此文,可以添加本站链接;(2)但是转载需注明出处,原版本经常更新(已更新11次),转载版本不会更新;(3)不可以部分引用,或拼接此文;(4)翻译要注明出处,并且注明翻译时间和翻译版本。 免责声明 许多的项目单位都在在他们的网站附加了帮助的链接,这正是我们想要的。但按照现实情况,如果你是该网站项目负责人,请在链接附近显著位置注明:我们不提供该项目的服务支持! 我们已经领教了没有此说明来的痛苦,我们将不停地被一些白痴们纠缠,他们认为既然我们发布了帮助链接,那么我们就有责任解决世上所有...阅读全文

博文 2009-10-01 13:18:00 debian.cn

得物云原生全链路追踪Trace2.0-采集篇 - OSCHINA

的监控: RPC 调用排障,调用方除了拥有下游接口信息,也可溯源自身触发该调用的接口。 接口高耗时分析,根据指标,可还原出单位时间窗口的耗时分解图快速查看耗时组件。 3.2 关于选型的疑问 你可能会问,链路监控领域在业内有现成的 APM 产品,比如 Zipkin, Pinpoint, SkyWalking 等,为什么当时会选择 OpenTracing + Prometheus 自行埋点?主要有两大因素: 第一,在当时,CAT 无法满足全链路监控和一些定制化的报表分析,而得物交易链路五彩石项目交付也趋于尾声,贸然去集成外部一款庞大的 APM 产品在没有充分的验证下,会给服务来稳定性风险,在极其有限的时间周期内不是个理智的选择。 第二,监控组件是随着统一的基础框架来发布,同时,由另一团队牵头开...阅读全文

博文 2022-12-10 06:50:41 中文开源技术交流社区

说透IO多路复用模型_京东云开发者的博客

统资源,所以,随着客户端的增多,其性能也就越差。 而边缘触发,由于监控的是FD的状态变化,所以整体的系统通知并没有那么频繁,高并发下整体的性能表现也要好很多。但是由于此模式下,用户需要积极的处理好每一笔数据,来的维护代价也是相当大的,稍微不注意就有可能出错。所以使用起来须要非常小心才行。 至于二者如何抉择,诸位就仁者见仁智者见智吧。 行文到这里,关于epoll的讲解基本上完毕了,大家从中是不是学到了很多干货呢? 由于从netty研究到linux epoll底层,其难度非常大,可以用曲高和寡来形容,所以在这块探索的文章是比较少的,很多东西需要自己照着man文档和源码一点一点的琢磨(linux源码详见eventpoll.c等)。这里我来纠正一下搜索引擎上,说epoll高性能是因为利用mmap技...阅读全文

博文 2023-01-01 15:13:50 CSDN博客

Debian 往事: 与已故创始人 Ian Murdock 的昔日访谈

了解决一小群人的问题而开发的。或者说,也许一开始的确是因此而开发,但是随便谁都能参与改良和开发的这个特点使得这个软件往更大的方向发展,最后的成品可能是连当初的开发者都未曾想到的。所以最后你拿到手的软件功能和应用范围都是非常广泛的。Debian 自然也采取了这个方法。 我们是从一个非常基础的系统开始做起的。当初,系统只有驱动器和最简单的 Unix,以及我们加的编译器和调试器(因为这是用户感兴趣的重点)。然后我们基本就是在任其发展:比如用户喜欢业余无线电,所以他们就开发了相关软件包然后放到系统里。虽说我对业余无线电基本是一无所知,但是懂的人可以参与进来和我们一起搭建系统。Debian 还了快速运动跟中资源包,因为我们的系统是分散式的,所以一个个任务都会交给不同的人去做最后在拼凑起来。我可以很自...阅读全文

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

Debian 相比 Ubuntu 有哪些不同之处

Stable和Update。然而,用户需要把注意力主要放在三大类软件库上。 Debian系统具有的优点之一是,你可以在下面这两个极端之间作一选择:极其稳定,但缺点是版本较老;或者非常先进,但缺点是软件不大稳定,技术出现的重大变化可能让不知情用户的系统崩溃。这里的选择取决于你是升级核心组件(比如Linux内核),还是升级灾难发生时不影响其他东西的自代码库的独立式实用工具。 恰恰相反,Ubuntu的程序包来自Debian测试版或不稳定版。Ubuntu的软件库按照其他标准来加以组织,而不是由测试状态来加以组织。Main含有Canonical支持的软件,以及Ubuntu社区支持的Universe软件。Restricted含有专有驱动程序,其中Multiverse存放有版权或其他法律限制的软件。 另一个主要的...阅读全文

博文 2017-12-22 23:41:07 debian.cn

案例:Redis命令不当 引起数据库雪崩 造成数百万损失

CPU,由于它是单线程作业所以很容易跑满一个逻辑CPU,可以使用redis代理或者是分布式方案来提升redis的CPU使用率。 3.存储的Key一定要设置超时时间 如果应用将Redis定位为缓存Cache使用,对于存放的Key一定要设置超时时间!因为若不设置,这些Key会一直占用内存不释放,造成极大的浪费,而且随着时间的推移会导致内存占用越来越大,直到达到服务器内存上限!另外Key的超时长短要根据业务综合评估,而不是越长越好! 4.对于必须要存储的大文本数据一定要压缩后存储 对于大文本【+超过500字节】写入到Redis时,一定要压缩后存储!大文本数据存入Redis,除了来极大的内存占用外,在访问量高时,很容易就会将网卡流量占满,进而造成整个服务器上的所有服务不可用,并引发雪崩效应,造成各个系...阅读全文

博文 2018-10-27 10:18:18 debian.cn

理解 Linux 的虚拟内存

。 内存寻址和分配 我们知道通过虚拟内存机制,每个进程都以为自己占用了全部内存,进程访问内存时,操作系统都会把进程提供的虚拟内存地址转换为物理地址,再去对应的物理地址上获取数据。CPU 中有一种硬件,内存管理单元 MMU(Memory Management Unit)专门用来翻译虚拟内存地址。CPU 还为页表寻址设置了缓存策略,由于程序的局部性,其缓存命中率能达到 98%。 以上情况是页表内存在虚拟地址到物理地址的映射,而如果进程访问的物理地址还没有被分配,系统则会产生一个缺页中断,在中断处理时,系统切到内核态为进程虚拟地址分配物理地址。 功能 虚拟内存不仅通过内存地址转换解决了多个进程访问内存冲突的问题,还来更多的益处。 进程内存管理 它有助于进程进行内存管理,主要体现在: 内存完整性:由于...阅读全文

博文 2018-11-25 11:03:49 debian.cn

Gitlab CI 配置文件 .gitlab

GitLab's UI中添加。现在推荐的定义方法是在.gitlab-ci.yml。 这是设置一个可选值,它会显示在按钮中,点击它可以你到设置的URL页面。 在下面这个例子中,如果job都成功完成了,在environment/deployments页面中将会创建一个合并请求的按钮,它将指向https://prod.example.com。 deploy to production: stage: deploy script: git push production HEAD:master environment: name: production url: https://prod.example.com environment:on_stop 注意: GitLab 8.13中开始引入。 从GitLab...阅读全文

博文 2018-12-12 21:01:19 ci.yaml 详解(上)

RabbitMQ 高可用实现镜像队列

磁盘文件,按场景4处理,如果拷贝过来的是B节点的磁盘文件,按场景3处理。最后将新的slave节点加入C即可重新恢复镜像队列。 场景6:A先停,B后停,且A和B均无法恢复,且无法得到A和B的磁盘文件 无解。 启动顺序中有一个30s 的概念,这个是 RMQ 的时间间隔,用于检测master、slave是否可用,因此30s 非常关键。 对于生产环境RMQ集群的重启操作,需要分析具体的操作顺序,不可无序的重启,会有可能来无法弥补的伤害(数据丢失、节点无法启动)。 简单总结下:镜像队列是用于节点之间同步消息的机制,避免某个节点宕机而导致的服务不可用或消息丢失,且针对排他性队列设置是无效的。另外很重要的一点,镜像队列机制不是负载均衡。...阅读全文

博文 2018-12-30 19:21:59 debian.cn

UCloud 叶理灯 谈:Docker、K8S 和 Serverless

FaaS,有一个对标的产品叫 Lambda。 Serverless 出现的动力是,由于云计算的发展,来了如对象存储等很多丰富的中间件,Serverless 概念的提出是希望应用开发者可以不用写后端逻辑,直接把逻辑写在客户端,组合云上的一些服务来完成业务逻辑,这样就没有管理后端资源的负担了。但是后来发现很多时候还是需要后端代码的,所以就演变成如果有后端代码,就拆成函数,托管在 FaaS 服务中,这样的话,你依然是不用管理服务器的,你用的还是一个个服务,没有服务器管理负担。 这个概念在不断进步,2017 年的时候 AWS 提出了一个新的概念,重新定义了什么叫 Serverless,只要一个服务具备了四方面特性:免运维、按需付费、高可用和自动扩容,这个服务就是个 Serverless 的服务。所以...阅读全文

博文 2019-06-14 08:28:49 debian.cn

我要彻底放弃 Debian 操作系统!-Michael Stapelberg

项目)仍应由各自的所有者负责,但重要的是默认情况应该是相反的。 Debian缺乏管理重大变更的工具:很难用程序的方式处理包和存储库(请参见下一小节的内容)。最近一次发送过来要求审核的更改是一个附补丁的bug报告。我认为接受bug报告更改的流程太复杂,然后开始尝试mergebot,但只有Guido曾经表示对该项目感兴趣。 在文化方面,Debian的评论和反应都很慢。凡事都没有截止期限。有时我会收到电子邮件,通知我说我在几年前(!!)发送的补丁现在终于合并了。只有短短数周的项目拖到了数年,对我来说这是一个巨大的消极影响。 有趣的是,你可以看到缓慢的线上活动也影响到了线下的文化:我不想在第一次听到systemd后,过10年之久再讨论它。 最后,如果有人坚持拒绝合作,那么你做出的变更很容易就会被一...阅读全文

博文 2019-03-22 17:01:23 Michael Stapelberg

分布式运行时 Dapr 知多少

了答案。 从单机到分布式,是追求更快和更高的性能,但也来了更多的不确定性。比如,不确定计算机何时异常,不确定磁盘何时损坏,不确定网络通信的延迟,也不确定消息是否被正常消费。这些不确定性构成了分布式应用的挑战,简而言之: 异构的机器与网络:稳定性问题普遍的节点故障:可靠性问题不可靠的网络:一致性问题 面对这些挑战,业界提出了诸多的分布式理论、协议,如CAP定理,BASE理论,一致性协议2PC/3PC/ZAB,来保证系统的正常运行。虽然问题貌似是有了解决方案,但是应用的复杂度升高了。应用除了需要实现业务需求,还要兼顾非业务需求,集成诸如服务发现、负载均衡、失效转移、动态扩容、数据分片、调用链路监控等分布式系统的核心功能,对应用有很强的侵入性,这就是以Spring Cloud为代表的微服务框架的...阅读全文

Monit:开源服务器监控工具

服务(service)。看监控语法: check <类型> <服务名> [PATH ] [ADDRESS ] 其中类型是monit支持的监控类型,一共有:system、file、process、fifo、filesystem、directory、host、network、program。服务名必需是英文且唯一,不可以出现重复!后面的[]是根据类型需要添加的。 服务类型语法 每个服务条目由关键字组成check,后面是服务类型。每个条目需要唯一的描述性名称,可以自由选择。此名称由Monit用于在内部和与用户的所有交互中引用该服务。 目前,支持九种类型的检查语句: 进程 CHECK PROCESS 阅读全文

博文 2023-04-12 15:21:43 阿里云开发者社区

7大维度看国外企业为啥选择gRPC打造高性能微服务

gRPC是一个高性能、开源、通用的RPC框架,面向移动和HTTP/2设计,是由谷歌发布的首款基于Protocol Buffers的RPC框架。 gRPC基于HTTP/2标准设计,来诸如双向流、流控、头部压缩、单TCP连接上的多复用请求等特性。这些特性使得其在移动设备上表现更好,更省电且节省空间占用。gRPC 1.0版本是2015年面世以后的第一次版本发布,开发者可以把该版本用于生产。API现在也是很稳定的。 Bugsnag(注:一家云端bug监控服务商)每天处理数以亿计的错误信息,为了处理这些数据,考虑优先构建一个可扩展,性能强大的后端系统,并从中学到很多有挑战性的技术。最近,我们推出了新版本的仪表板,这个项目要求扩展系统,来处理服务呼叫的显著增加,这些呼叫是跟踪用户发布和会话所需的...阅读全文

博文 2018-03-19 17:51:32 debian.cn