InfraPub 为您找到相关结果 435

使用 MongoDB 之前应该知道的 14 件事

本文作者从事数据库相关工作接近四十年,最近开始使用 MongoDB。在开始使用 MongoDB 之前,作者希望有些事情自己已经知道。根据一般经验,对于数据库是什么以及它们能干什么,人们会有先入为主的认识。为了给他人提供方便,本文列出了一些常见的错误。 本文要点 即使 MongoDB 没有强制要求,设计一个模式还是至关重要。 类似地,在设计模式及访问模式时设计好索引。 避免大对象,尤其是大数组。 谨慎对待 MongoDB 的设置,尤其是关乎安全和稳定性时。 MongoDB 没有询优化器,因此,对于如何安询操作的顺序,你必须格外小心。 创建一个无需身份验证的 MongoDB 服务器 很遗憾,MongoDB 在安装时默认不启用身份验证。在只从本地访问的工作站上,这没什么不好。但是,由于...阅读全文

PostgreSQL 13 正式版发布

PostgreSQL 13 已正式发布,新版本对索引和找系统进行了重大改进,大型数据库因此受益甚多,包括节省了空间并提高了索引的性能,使用聚合或分区的询的响应时间更快,使用增强的统计信息时更好的询计划(query planning)等。 除了并行化清理(parallelized vacuuming)和增量序(incremental sorting)等呼声较高的功能外,PostgreSQL 13 还为大大小小的工作负载提供了更好的数据管理体验,并对日常管理进行了优化,为应用开发者提供了更多便利,并增强了安全性。 性能提升 在先前 PostgreSQL 版本的基础上,PostgreSQL 13 可以有效地处理 B 树索引(PostgreSQL 的标准索引)中的重复数据,从而降低 B 树...阅读全文

博文 2020-10-04 20:07:23 debian.cn

Golang常见的十大算法精简版

最近有时间,都在看Go,感觉Go语言真的不错,具体自行百度。今天简单说一下算法。 什么是算法一系列的计算步骤,用来将输入数据转化成输出结果算法的意义用于解决特定的问题解决同一个问题的不同算法的效率常常相差非常大,这种差距的影响往往比硬件和软件方面的差距还要大。 算法在我们编程开发中,还是不可或缺的。下面简单来列举一下go语言常见的十大算法。 BubbleSort(冒泡序) func Sort(list []int, left, right int) { if right == 0 { return } for index,num := range list { if index < right && num > list[index + 1] { utils.SwapGo(list...阅读全文

博文 2019-09-05 09:31:10 debian.cn

Elastic search 6.0.0 正式发布 大量新特性

性就是序列 ID,它允许基于操作的分片恢复。 以前,如果由于网络问题或节点重启而从集群断开连接的节点,则节点上的每个分区都必须通过将分段文件与主分片进行比较并复制任何不同的分段来重新同步。 这可能是一个漫长而昂贵的过程,甚至使节点的滚动重新启动非常缓慢。 使用序列 ID,每个分片将只能重放该分片中缺少的操作,使恢复过程更加高效。 使用序索引更快询 通过索引序,只要收集到足够的命中,搜索就可以终止。它对通常用作过滤器的低基数字段(例如 age, gender, is_published)进行序时可以更高效的搜索,因为所有潜在的匹配文档都被分组在一起。 稀疏区域改进 以前,每个列中的每个字段都预留了一个存储空间。如果只有少数文档出现很多字段,则可能会导致磁盘空间的巨大浪费。现在,你付出你...阅读全文

博文 2017-11-15 18:11:10 debian.cn

最全 MongoDB 基础教程

否唯一。指定为true创建唯一索引。默认值为false name string 索引的名称。如果未指定,MongoDB的通过连接索引的字段名和序顺序生成一个索引名称 dropDups Boolean 3.0+版本已废弃。在建立唯一索引时是否删除重复记录,指定 true 创建唯一索引。默认值为 false sparse Boolean 对文档中不存在的字段数据不启用索引;这个参数需要特别注意,如果设置为true的话,在索引字段中不会询出不包含对应字段的文档.。默认值为 false expireAfterSeconds integer 指定一个以秒为单位的数值,完成 TTL设定,设定集合的生存时间 v index version 索引的版本号。默认的索引版本取决于mongod创建索引时运行的...阅读全文

博文 2021-02-22 07:45:45 OSChina

Gartner公布Q3全球服务器报告:出货量318.3万台

Gartner公司公布2018年第三季度全球服务器市场调报告,根据报告显示,全球服务器出货量为318.3万台,销售额193.9亿美元,同比分别增长12.5%和31.5%。本季度全球出货量与销售额位居前三位是戴尔EMC、HPE和浪潮。 2018Q3全球X86服务器出货量名 2018Q3全球X86服务器销售额名 从区域增长来看,全球除去拉丁美洲和东欧地区,其他区域市场均有增长,增速普遍达到两位数。大中华区和北美拉动了全球增长,两个地区的销售额分别同比增长44.6%和39.6%,所占市场份额提升分别为26.7%和41.7%。 从具体产品形态看,多节点、机架类服务器销售额分别同比增长75.2%和31.1%。刀片和塔式服务器继续小幅萎缩,销售额分别同比下降3.7%和4.8%。多节点服务器的增长...阅读全文

C++ 夺冠!成为 TIOBE 2022 年度编程语言

应、Hao 123 等等。具体的计算方式详见:https://www.tiobe.com/tiobe-index/programming-languages-definition/。请注意这个行榜只是反映某个编程语言的热门程度,并不能说明一门编程语言好不好,或者一门语言所编写的代码数量多少。 这个行榜可以用来考察你的编程技能是否与时俱进,也可以在开发新系统时作为一个语言选择依据。 详细榜单信息可参考 TIOBE 官网:https://www.tiobe.com/tiobe-index 《2022-2023 中国开发者大调》重磅启动,欢迎扫描下方二维码,参与问卷调研,更有 iPad 等精美大礼等你拿!...阅读全文

博文 2023-01-10 06:42:12 CSDN博客

深度解密基于 eBPF 的 Kubernetes 问题排查全景图

包括:无法准确清晰了解、掌控全局的系统运行架构;无法回答应用之间的连通性是否正确;多语言、多网络调用协议带来埋点成本呈线性增长,且重复埋点 ROI 低,开发一般将这类需求优先级降低,但可观测数据又不得不采集。2、下沉的基础设施能力屏蔽实现细节,问题定界越发困难基础设施能力继续下沉,开发和运维关注点继续分离,分层后彼此屏蔽了实现细节,数据方面不好关联了,出现问题后不能迅速地定界问题出现在哪一层。开发同学只关注应用是否正常工作,并不关心底层基础设施细节,出现问题后需要运维同学协同问题。运维同学在问题过程中,需要开发同学提供足够的上下游来推进,否则只拿到“某某应用延迟高”这么笼统的表述,这很难有进一步结果。所以,开发同学和运维同学之间需要共同语言来提高沟通效率,Kubernetes 的...阅读全文

博文 2022-03-21 09:11:51 joseph

Debian GNU/Linux 9 Stretch 宣布于 6 月 17 日发布

不过在这段时间内,开发团队还需要修复已知的BUG,各种崩溃和内存泄漏问题,整合所有最新的安全补丁,处理Debian GNU/Linux 8 "Jessie"系列版本的推送和流畅升级问题。 Niels Thykier在今天更新的邮件列表中写道:“我们计划在2017年6月17日发布。如果你想要为此进行庆祝,请考虑参加一场Debian版本发布队或者自己举办一个。用户可以访问https://wiki.debian.org/ReleasePartyStretch看更多信息。”...阅读全文

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

Go 1.8 正式发布 标准库有显著变化和性能提升

务器现在还支持正常关机了,允许服务器通过在服务所有正在运行的请求之后关闭,而最小化停机时间。 上下文(添加到Go 1.7中的标准库)提供了取消和超时机制。Go 1.8在标准库中添加了更多对上下文的支持,包括数据库/ sql和net包以及net / http包中的Server.Shutdown。 现在使用新添加的Slice函数在序包中对切片进行序更简单。例如,要通过“名称”字段对结构体片段进行序: sort.Slice(s,func(i,j int)bool {return s [i] .Name 更多新版本的添加、改进和修复内容,以及上面列出的改进的详细信息请看Go 1.8发行说明。 为了庆祝发布,世界各地的Go用户组都在本周举办发布会,这已经成为Go社区的一个传统,所以如果你错过了...阅读全文

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

CVE-2017

Desktop 12-SP2 OpenSuse 漏洞检测: 可以使用以下命令看 sudo 版本: sudo -V 漏洞修复建议 (或缓解措施): 目前阿里云官方软件源已经同步更新,可以通过以下命令更新补丁: Ubuntu/Debian: sudo apt-get update & sudo apt-get upgrade CentOS/RHEL: yum update yum update sudo 注:升级 kernel 可能会导致服务器无法启动,建议您在升级补丁时除内核升级 打开/etc/yum.conf ,输入: # vi /etc/yum.conf 在 [main] 段中,下添加一行,如下: exclude= kernel* //这里假设是除内核升级 情报来源:http...阅读全文

博文 2021-01-28 17:50:31 1000367:Sudo 本地提权漏洞

MySQL 8 第一个正式版发布:更好的性能

“隐藏”和“显示”。当对索引进行隐藏时,它不会被询优化器所使用。我们可以使用这个特性用于性能调试,例如我们先隐藏一个索引,然后观察其对数据库的影响。如果数据库性能有所下降,说明这个索引是有用的,然后将其“恢复显示”即可;如果数据库性能看不出变化,说明这个索引是多余的,可以考虑删掉。 5. 降序索引:MySQL 8.0 为索引提供按降序方式进行序的支持,在这种索引中的值也会按降序的方式进行序。 6. 通用表表达式(Common Table Expressions CTE):在复杂的询中使用嵌入式表时,使用 CTE 使得询语句更清晰。 7. UTF-8 编码:从 MySQL 8 开始,使用 utf8mb4 作为 MySQL 的默认字符集。 8. JSON:MySQL 8 大幅改进了对...阅读全文

博文 2018-04-20 10:40:18 debian.cn

Golang 面试题搜集

-go/blob/master/question/q003.md) - [判断两个给定的字符串序后是否一致](https://github.com/lifei6671/interview-go/blob/master/question/q004.md) - [字符串替换问题](https://github.com/lifei6671/interview-go/blob/master/question/q005.md) - [机器人坐标计算](https://github.com/lifei6671/interview-go/blob/master/question/q006.md) - [语法题目一](https://github.com/lifei6671/interview-go...阅读全文

Kubernetes 1.18 发布

,而我们也开始考虑利用基于kubectl exec构建的工具为开发人员提供支持。此次新增的kubectl debug命令(目前为alpha版)允许开发人员在集群当中轻松调试自己的Pod,进而获得巨大的便利性增益。这项命令将创建一个即席容器,容器运行在待检Pod旁边,同时附带有控制台以执行交互式故障。 SIG-CLI 调试程序的能力变得越来越必要,基于 kubectl exec,增加了 kubectl alpha debug 命令(目前为 alpha 阶段),使开发人员可以轻松地在集群中调试其 Pod。此命令允许创建一个临时容器,该容器在要检的 Pod 旁边运行,并且还附加到控制台以进行交互式故障除。 Windows CSI 支持 带来了用于 Windows 的 CSI 代理,目前处于...阅读全文

博文 2020-03-27 18:28:34 debian.cn

容器镜像仓库 Harbor 发布 2.0 版

以删除图像标签,而无需删除基础清单和所有其他关联的图像标签。您还可以看未加标签的图像,并可以选择将其除在垃圾收集之外。” 此版本的一些主要功能包括有: 启用 Trivy 作为默认漏洞扫描程序Harbor 组件之间的 TLS 可实现更安全的组件内流量能够为核心 Harbor 服务配置 SSLWebhook 增强功能,例如与 Slack 的交互和多端点支持增强型机器人帐户改进的错误处理框架能够在 UI 中看未标记的图像能够选择性地从图像中删除标签,而无需删除图像摘要或相关标签。 更多详细信息请看 Harbor 2.0.0 的 Changelog。...阅读全文

博文 2020-05-14 12:58:04 debian.cn

ChaosMesh 的基本功能有哪些

混沌实验场景,以及方便地将已有的混沌实验场景复用到其他应用混沌实验中,大大降低了混沌实验的成本。目前混沌实验场景提供的功能有:编串行混沌实验编并行混沌实验支持状态检步骤支持中途暂停混沌实验支持使用 YAML 文件定义和管理混沌实验场景支持通过 Web UI 定义和管理混沌实验场景具体的实验场景配置,参考具体创建 Chaos Mesh Workflow。可视化操作​Chaos Mesh 为用户提供了单独的 Chaos Dashboard 组件,即可视化支持。Chaos Dashboard 极大地简化了混沌实验,用户可以直接通过可视化界面来管理和监控混沌实验,仅需点一点鼠标就能够定义混沌实验的范围、指定混沌注入的类型、定义调度规则,以及在界面上获取到混沌实验的结果等。​安全保障​Chaos...阅读全文

Golang后端面试题目

技术一面 基础面试 一面是通过电话直接沟通。 go的调度go struct能不能比较go defer(for defer)select可以用于什么context包的用途client如何实现长连接主协程如何等其余协程完再操作slice,len,cap,共享,扩容map如何顺序读取实现set实现消息队列(多生产者,多消费者)大文件序基本序,哪些是稳定的http get跟headhttp 401,403http keep-alivehttp能不能一次连接多次请求,不等后端返回tcp与udp区别,udp优点,适用场景time-wait的作用数据库如何建索引孤儿进程,僵尸进程死锁条件,如何避免linux命令,看端口占用,cpu负载,内存占用,如何发送信号给一个进程git文件版本,使用顺序...阅读全文

博文 2020-04-13 13:13:00 2020腾讯社招

Debian升级内核开启TCP_BBR 实现网络单边加速

自从锐速发布以来,这款牛逼的单边加速神器的确为一些线路不太优秀的服务器带来了更优秀的体验。但是呢,过高的价格和不再低端售卖。导致了我们并无法实现一个免费好用的单边加速功能。 但是谷歌为我们带来了干货 新的 TCP 拥塞控制算法 BBR (Bottleneck Bandwidth and RTT)。 目前在 Linux Kernel 4.9 中加入了该算法,所以我们只要升级内核就可以爽一波了。难懂的技术说明,我们也不说了,TCP BBR 的目的就是要尽量跑满带宽,并且尽量不要有队的情况。 注: 更新内核有一定风险,请注意备份。 开启 TCP BBR 只要 Linux 发行版的 Kernel 即内核版本大于等于 4.9 即可开启,开启方法是通用的,如何升级至 Kernel 将在下面介绍。 修...阅读全文

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

Grafana v6.0.0 发布,数据展示与分析平台

query using _interval_ms variable throws error #14507 而 Grafana 在 6.0 版本的主要新特性有: Explore – 一个新的询,专注于数据探索和故障除的工作流程。Grafana Loki – 与 Grafana Labs 的新开源日志聚合系统集成。Gauge Panel – 一个新的独立仪表板。New Panel Editor UX 改进面板编辑,在不同可视化间的切换变得容易。Google Stackdriver Datasource 已经退出测试,并正式发布。Azure Monitor 插件从外部插件移植到核心数据源。React Plugin 支持(React Plugin support)为构建插件提供了更简单的方式...阅读全文

博文 2019-02-26 12:52:16 debian.cn

MX Linux 17 Beta 1 发布,基于 Debian 的发行版

-defaultlook,并为简单的合成器(Xfce 或 Compton),面板和其他“调整”类型更改提供了一站式服务; mx-conky 提供了一种简单编辑 conky 文件(颜色变化等)的方法; mx-network-assistant 将 mx-broadcom-manager 替换为通用网络故障除工具; mx-tools 现在有一个更大的接口; 更新管理器(apt-notifier),包括首选项中提供的新主题; misc 更改为大多数其他 MX 应用程序 更多内容请看 发布主页 。 下载地址:https://sourceforge.net/projects/mx-linux/files/Testing/MX17/beta1/...阅读全文

博文 2017-11-07 10:19:49 debian.cn

Polar Signals 开源 Parca 以优化代码并减少云账单 - OSCHINA

稳定分支。 我们将讨论 NGINX 版本控制方案,回顾 NGINX 1.17 开发周期内进行的更新,并探索 NGINX 1.19 的特性。 NGINX 版本控制介绍 NGINX 在 NGINX Open Source 代码存储... 1 4 为 Linux 5.16 准备的新版 Zstd 已就绪,最高带来 35% 的性能提升 正如我们上周的报道(点击看),Linux 内核即将用上最新的 Zstd 实现。如今时隔一周时间,为 Linux 5.16 内核所准备的新版 Zstd 已提交至 linux-next 的合并中,以便在接下来的几周内进行更广泛的测试,如无意外我们将在下个月的 Linux 5.16 合并窗口中看到 Zstd 的更新代码。 来自 Facebook 的 Zstd 维护者...阅读全文

博文 2021-10-09 12:23:58 中文开源技术交流社区

中国加快基于 IPv6 的互联网发展,2025 年实现全覆盖

中共中央办公厅、国务院办公厅印发了《推进互联网协议第六版(IPv6)规模部署行动计划》,计划全面推进部署 IPv6,协同推进网络实名制。 通知称,用 5 到 10 年时间,建成全球最大规模的 IPv6 商业应用网络。具体计划包括: 1.到 2018 年末,IPv6 活跃用户数达到 2 亿,在互联网用户中的占比不低于 20%,并在以下领域全面支持 IPv6:国内用户量名前 50 位的商业网站及应用,省部级以上政府和中央企业外网网站系统,中央和省级新闻及广播电视媒体网站系统,工业互联网等新兴领域的网络与应用;域名托管服务企业、顶级域运营机构、域名注册服务机构的域名服务器,超大型互联网数据中心(IDC),名前 5 位的内容分发网络(CDN),名前 10 位云服务平台的 50% 云产品;互联...阅读全文

24个含中文输入法平台的自生系统光碟

基于fredx181原创的 DebLive Bookworm obdog 桌面的英语自生系统,配以四个不同的中文输入法平台,我一共创造出以下24个含中文输入法平台的自生系统光碟(大多少于500mb): A. 8 个含中文输入法的英语自生系统光碟: (下载地址: https://sourceforge.net/projects/icakechineselanguagepets/files/DebLive_bookworm/Live_CD_eng/) 64 位元: 小企鹅 (fcitx) 输入法平台(含23个中文输入法): DLBw64_obdog_fcitx_eng_20220201.iso 智能汇流(ibus) 输入法平台(含23个中文输入法...阅读全文

博文 2022-03-06 01:40:50 icake

系统分析工具 Sysdig 详解

-pc -c topprocs_net container.name=debian.cn看在 debian.cn 容器里占用 I/O 字节最多的文件:sudo sysdig -pc -c topfiles_bytes container.name=debian.cn看在 debian.cn 容器里网络连接的名情况:sudo sysdig -pc -c topconns container.name=debian.cn显示 debian.cn 容器里所有命令执行的情况:sudo sysdig -pc -c spy_users container.name=debian.cn 应用 看机器所有的HTTP请求:sudo sysdig -s 2000 -A -c echo_fds fd.port...阅读全文

博文 2020-08-09 14:09:05 debian.cn

C++20 标准草案全票批准通过

拟constexpr 向量和字符串计时:日历、时区支持std::formatstd::spanstd::jthread 详细变化看 cppreference.com, open-std.org 和 Wikipedia。 像 Concepts/Ranges/Modules/Coroutines 这些新特性将会对开发者及 C++ 生态产生不小的影响,也为这门“高龄”编程语言增添不少魅力。 工具方面,GCC 10 编译器对 C++20 标准已基本支持,在更早的 GCC 8/9 中,目前尚待完成的是对 modules 的支持。GCC Wiki 页面概述了目前正在进行的工作。此外,Clang C++ 状态报告页面显示已完成了对大部分特性的支持,待完成的包括 concepts, immediate...阅读全文

博文 2020-09-08 10:51:13 debian.cn

Debian 如何修改默认网卡为 eth0

Debian 系统安装以后,可能会遇到网卡设备名不是常见的 eth0 的情况。我们有没有办法统一网卡设备名称呢? 在服务器环境中,统一网卡设备名是很有必要的。标准化的配置会节省我们大量的时间,这些时间可能会花在障、监控的配置、状态收集脚本的调整等。 这里我们介绍如何把 Debian 系统中的网卡从非 eth0,调整为 eth0,这个设备名是各 Linux 系统中比较通用的网卡设备名。下面我们以设备名 ens3 为例,介绍在Debian 系统中,如何修改网卡设备名为 eth0 的具体步骤。 首选,我们需要编辑 grub 的配置文件,修改启动参数。使用编辑器打开 /etc/default/grub, 找: GRUB_CMDLINE_LINUX="" 找到这行,并修改为...阅读全文

博文 2019-07-12 13:59:08 debian.cn

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

地化工作也是做得非常到位,而凭借着架构简单,开箱即用的特点,CAT 也是我们得物使用的第一个应用监控系统。 二、 0x01 第一阶段 从0~1基于CAT的实时应用监控 在得物五彩石项目交付之前,系统仅有基础设施层面的监控,CAT 的引入,很好地弥补了应用监控盲区。它支持提供各个维度的性能监控报表,健康状况检测,异常统计,对故障问题起到了积极推动的作用,同时也提供简单的实时告警的能力。 CAT 拥有指标分钟级别的聚合统计的能力,从 UI 上不难看出,它拥有丰富的报表统计能力和问题障能力。 但随着公司业务规模逐步扩大,微服务粒度也不可避免地变小,我们发现,CAT 已经逐步无法满足我们的使用场景了: 无法直观呈现全链路视图: 问题障与日常性能分析的场景也越来越复杂,对于一个核心场景,其内部...阅读全文

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

Django 3.0 发布第一个版本 开始支持异步功能

MariaDB 10.1 及更高版本;新的 ExclusionConstraint 类可以在 PostgreSQL 上添加除约束;输出 BooleanField 的表达式现在可以直接在 QuerySet 过滤器中使用,而无需先注解然后对注解进行过滤;自定义枚举类型 TextChoices、IntegerChoices 和 Choices 现在可用作定义 Field.choices 的方法。 此外还有一些小改动,详情看更新说明: https://docs.djangoproject.com/en/dev/releases/3.0 需要注意的是,Django 3.0 支持 Python 3.6、3.7 与 3.8,Django 2.2.x 系列是最后一个支持 Python 3.5 的系列。官方同时也建议...阅读全文

博文 2019-09-13 07:21:28 debian.cn

Terraform 学习总结 — Terraform 简介

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

Postgres 10 开发者新特性

是我们可以对这一列进行修改(alter),Postgres就会将这一列识别为一个序列,这样操作会简化我们数据库中的日常操作。 正如我们预料到的那样,Postgres 10存在一些不向后兼容的改动。对浮点时间戳的支持已经被抛弃了,对于低于版本8的 pg_dump也已经不再提供支持,有关复制(replication)和pg_basebackup工具的一些默认值也有所变化。版本编号由三部分改为了两部分,同时开发者的脚本不能直接运行,而是使用类似于server_version_num这种询,它返回的是一致的的可序的和可比较的(sortable and comparable)版本号。 看英文原文:Postgres 10 Features for Developers,本文转载自InfoQ.com...阅读全文

博文 2017-12-30 11:46:16 debian.cn

Stackstorm 入门介绍

一句话概况:stackstorm是一个事件驱动的自动化引擎。StackStorm 是一坨功能强大的开源自动化平台,可将通过使用插件封装API的方式,将所有应用程序,服务和工作流程连接起来。这里的所有包括了目前我们常用Gitlab、Zabbix、ELK、AWS 等服务。 Stackstorm 具有很好的可扩展性,灵活性,完美支持 ChatOps 和全操作的API实现。通过Stackstorm 可以将您现有的基础架构和应用程序环境联系在一起,以便您可以更轻松地自动化操作该环境。它特别专注于针对事件采取行动。 便利的故障除 - 触发由Nagios,Sensu,New Relic和其他监控系统捕获的系统故障,在物理节点、OpenStack或Amazon实例和应用程序组件上运行一系列诊断检,并将...阅读全文

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

在被回收前的最小存留时间,默认为 2m0s;kubelet 中容器回收过程如下: pod 中的容器退出时间超过--minimum-container-ttl-duration后会被标记为可回收,一个 pod 中最多可以保留--maximum-dead-containers-per-container个已经停止的容器,一个 node 上最多可以保留--maximum-dead-containers个已停止的容器。在回收容器时,kubelet 会按照容器的退出时间序,最先回收退出时间最久的容器。需要注意的是,kubelet 在回收时会将 pod 中的 container 与 sandboxes 分别进行回收,且在回收容器后会将其对应的 log dir 也进行回收;kubelet 中镜像回收过程...阅读全文

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

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

今天,我来为大家解读一幅来自 TurnOff.us 的漫画 “InSide The Linux Kernel” 。TurnOff.us 是一个极客漫画网站,作者 Daniel Stori 画了一些非常有趣的关于编程语言、Web、云计算、Linux 相关的漫画。今天解读的便是其中的一篇。 在开始,我们先来看看这幅漫画的全貌! Inside the Linux Kernel 这幅漫画是以一个房子的侧方刨面图来绘画的。使用这样的一个房子来代表 Linux 内核。 地基 作为一个房子,最重要的莫过于其地基,在这个图片里,我们也从最下面的地基开始看起: Filesystem 地基(底层)由一的文件柜组成,井然有序,文件柜里放置着“文件”——电脑中的文件。左上角,有一只胸前挂着 421 号牌的小企...阅读全文

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

Kubernetes常用命令大全(持续更新)

kubernetes,简称K8s,是知名的开源容器编与调度平台,它的目标是让容器化部署、资源分配简单且高效。K8s是绝对主流且流行的容器管理平台,据说在合肥运维同学不会k8s是找不到工作的。本文我们将列举常用的kubernetes命令,后续会完善内容并提升易读性。 想起十几年前,我曾在Linux伊甸园的论坛,整理过一份rpm常用命令的列表,不知有多少朋友看过? 看所有namespace的pods运行情况 kubectl get pods --all-namespaces 看具体pods,记得后边跟namespace名字哦 kubectl get pods kubernetes-dashboard-76479d66bb-nj8wr --namespace=kube-system 看...阅读全文

博文 2020-03-13 12:35:13 debian.cn

健康学习到150岁 - 人体系统调优不完全指南

去年 5 月曾经写了一篇文章介绍了下 [Lex Fridman 大佬的日常生活安](https://zhuanlan.zhihu.com/p/371254789) ,后续我也根据他的方法对自己的日常生活做了一系列规范和改进。这一年整体实行下来,效果还是非常显著的,本文的最后会对我的一些实践以及借助的工具做一些分享。...阅读全文

项目总结报告应该怎么写

个版本的数据对比,因为两个版本的数据对比可能存在版本偶然性,三个版本的数据趋势会更明显一些;2) 数据分析时可以使用Excel的一些方便功能,提高效率,如透视表、宏等。4.暴露(验证)问题数据会诚实地反映项目实际情况。通过数据分析的结果,我们会验证在指标选取环节收集的问题是否真实存在,如存在则此问题分析会出现在项目总结报告中。在数据分析时,也可能会暴露出一些我们没有明显感知的问题,这类问题也会出现在项目总结报告中。5.提出解决方案暴露问题不是最终目的,解决问题才是终极目标。所以,当发现问题时,项目经理要找存在问题的相关人员,让其针对问题提供解决方案。问题和解决方案都有了,报告内容基本完成,剩下的就是版的问题。总结报告版时一定要注意关键的信息放到最前面(遵循结论先行)。在进行分段时一定要注...阅读全文

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

] munmap(0x7f53d0000000, 13275136) = 0 [pid 19343] mmap(NULL, 8392704, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_STACK, -1, 0) = 0x7f53d04a8000 Process 19495 attached 我检了一下trace文件也没有发现大量内存mmap动作,即便是brk动作引起的内存增长也不大。于是感觉人生都没有方向了,然后怀疑是不是文件缓存把虚拟内存占掉了,注释掉了代码中所有读写日志的代码,虚拟内存依然增加,除了这个可能。 灵光一现 后来,我开始减少thread的数量开始测试,在测试的时候偶然发现一个很奇怪的现象。那就是如果进程创建了一个线程并且在该...阅读全文

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

常见开发/测试/生产环境的缩写 DEV、SIT、UAT、PET、SIM、PRD

常用开发环境、生产环境简写的含义及用途 DEV、SIT、UAT、PET、SIM、STG、PRD 缩写介绍 按开发、测试、上线的时间线序: - DEV Development 研发环境 - SIT System Integrate Test 系统集成测试环境(内测) - UAT User Acceptance Test 用户验收测试环境 - PET Performance Evaluation Test 性能评估测试环境(压测) - STG Staging 更接近生产的功能验收、测试环境 - SIM Simulation 高仿真环境 - PRD Production 正式/生产环境...阅读全文

Linux 基金会创办LFN 旨在协调开源网络生态系统

开源正在改变网络,但是由于项目太多,协调性太差,导致了整个生态系统不协调。以 Linux 基金会为首的开源平台,以及开放网络自动化平台(ONAP),NFC(OPNFV)开放平台,OpenDaylight,FD.io,PNDA和流媒体网络分析系统(SNAS)聚集在一起,创立了用于跨项目合作的 LF Networking Fund (LFN) 。他们共同协调了软件定义网络(SDN)和网络功能虚拟化(NFV)。 LFN 需要做的是提供项目之间的合作渠道,以及相关项目和整个社区的生态系统平衡。LFN平台将弥补方案之间的差距,促进跨项目协作。 Linux 基金会网络和编总经理 Arpit Joshipura 的说道:“以Linux的云本地计算基金会(Cloud Native Computing...阅读全文

博文 2018-01-25 12:50:35 debian.cn

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

RTE_GRAPH_BURST_SIZE 大小(node->size)的 object 队列,它定义了该 node 中可以容纳和处理的报文数量。如果一个 node 试图将报文队到下一个 node,但下一个 node 已经有报文在队并且已满(例如在 l3fwd 中,用户可以有多个接收队列/ node 队到同一个下一个 node pkt_cls),node 的 object 队列大小将会被动态的加倍。这意味着 node 具有批处理的优势,因为它可以累积报文。 注意:当前 API 不支持 node 的 object 队列大小在增大后再缩小 Objs 的传递 — 'home run'/normal enqueue 报文转换有两种类型,一种是正常的 enqueue,另一种是优化情况,“home run”。 Normal...阅读全文

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

Redis 命令、特性介绍与性能调优

集并返回/存储至另一个Set中,时间复杂度O(N),N为参与计算的所有集合的总member数 上述几个命令涉及的计算量大,应谨慎使用,特别是在参与计算的Set尺寸不可知的情况下,应严格避免使用。可以考虑通过SSCAN命令遍历获取相关Set的全部member(具体请见 https://redis.io/commands/scan ),如果需要做并集/交集/差集计算,可以在客户端进行,或在不服务实时询请求的Slave上进行。 Sorted Set Redis Sorted Set是有序的、不可重复的String集合。Sorted Set中的每个元素都需要指派一个分数(score),Sorted Set会根据score对元素进行升序序。如果多个member拥有相同的score,则以字典序进行升...阅读全文

博文 2018-10-27 10:37:55 debian.cn

GitLab 11.8 将开源 ChatOps

根据 GitLab CEO Sid Sijbrandij 在圣诞节来临之际,向开发者宣布,在 GitLab 11.8 发布时,将开源 ChatOps 功能。 GitLab ChatOps 的主要功能,就是开发者通过即使通讯平台发送命令,目前支持的平台包括 Slack 和 Mattermost 。Sid Sijbrandij 表示,GitLab 在未来也会加入 GitLab ChatOps 功能。 ChatOps 共有以下 5 大特点: 提供监测功能,配备相关的监工仪表盘,让运维人员更方便的进行鼓掌除。支持 JQuery 指令操作,也支持输入简单的 SQL 指令。整合角色控制权限,为每个使用者配置不同的权限。不需要进行相关的设置工作,开发者开通后即可使用。ChatOps 作为平台中的功能...阅读全文

博文 2018-12-26 09:41:53 debian.cn

巴克莱:仍预计美联储2月加息50个基点,3月加息25个基点

【巴克莱:仍预计美联储2月加息50个基点,3月加息25个基点】1月7日消息,巴克莱银行仍然预计美联储将在2月份的会议上加息50个基点,3月份加息25个基点。经济学家们认为,3月份较小幅度的加息将是对经济活动和劳动力市场放缓的越来越多证据以及通胀数据继续放缓的回应。这将使联邦基金目标区间在3月会议后达到5%-5.25%,与12月的经济预测报告中的点阵图中值相对应。然而,2月FOMC的决定仍取决于关键数据的发布,如下周公布的12月CPI。经济学家们称,展望3月份以后,他们预计FOMC将暂停加息行动,但不除如果该委员会未能看到足够的经济放缓,会继续逐步加息的可能性。 日期: 2023-01-07 23:52...阅读全文

Web前端知识体系精简

Web前端技术由html、css和javascript三大部分构成,是一个庞大而复杂的技术体系,其复杂程度不低于任何一门后端语言。而我们在学习它的时候往往是先从某一个点切入,然后不断地接触和学习新的知识点,因此对于初学者很难理清楚整个体系的脉络结构。本文将对Web前端知识体系进行简单的梳理,对应的每个知识点点到为止,不作详细介绍。目的是帮助大家审自己的知识结构是否完善,如有遗漏或不正确的地方,希望共勉。 JAVASCRIPT 篇 0、基础语法 Javascript基础语法包括:变量定义、数据类型、循环、选择、内置对象等。 数据类型有string,number,boolean,null,undefined,object等。其中,string,number和boolean是基础类型,null...阅读全文

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

一位资深Java架构师的晋级心得

,MongoDB企业集群解决方案 5. 性能优化 JVM性能优化:剖析JVM整体结构,详解垃圾回收机制GC,JVM性能调优与工具Nginx调优:Nginx项目架构,Nginx核心配置,Nginx负载算法配置Tomcat调优:Tomcat运行机制及框架,Tomcat线程模型,Tomcat性能调优MySQL性能优化:SQL执行计划,AQL优化,索引优化 6. 电商项目实战 项目的介绍,系统的架构设计,电商平台技术解决方 作为一名合格的架构师,必须懂各种网络产品及特性,懂各种中间件,能够知道坑在哪儿,深谙各种技术方案的优缺点,懂整合各种资源并达到最优…了解各种技术及应用场景,有足够的工作经验解决集成中遇到的各种奇葩问题。...阅读全文

博文 2019-01-13 22:49:22 debian.cn

Kubernetes 1.7 发布,安全强化、StatefulSet 更新及可扩展特性

Kubernetes 1.7已经发布,该版本聚焦于安全、存储和扩展性等交付特性,其中包括Network Policy API、StatefulSets自动升级策略以及可扩展的API聚合层。Kubernetes的上一个发布版1.6版侧重于解决规模化和自动化上的问题,显然最新的1.7发布版力图为Kubernetes在企业组织中的进一步采用夯实基础。需注意的是,虽然1.7版的核心集群编功能是以稳定版提供,但是其中给出的一些头条发布特性在文档中被标为Alpha版或Beta版。 新提供的安全特性包括:Network Policy API。该API当前已提升到稳定版,在实现为网络插件时,用户可以设置并强制使用规则,指定可相互通信的Pod(类似于在用的网络/云ACL);节点授权器(Node...阅读全文

博文 2017-07-19 12:23:15 debian.cn