InfraPub 为您找到相关结果 703

不可变基础设施 (immutable infrastructure) - 云原生定义解析

云原生技术的不断发展,2018年,CNCF扩展了云原生技术的定义,以下是云原生技术的新定义:“云原生技术有利于各组织在公有云、私有云和混合云等新型动态环境中,构建和运行可弹性扩展的应用。云原生的代表技术包括容器、服务网格、微服务、不可变基础设施和声明式API。这些技术能够构建容错性好、易于管理和便于观察的松耦合系统。结合可靠的自动化手段,云原生技术使工程师们能够轻松地对系统作出频繁和可预测的重大变更。”其中,像容器,微服务等念早已深入人心,而很多开发人员都对此次提及的“不可变基础设施”这个念有不少疑惑,下文将对这个念进行解析。其实不可变基础设施这个念由来已久,并在不同的场合被很多技术专家已不同的形式提出并讨论过, 例如:“Trash Your Servers and Burn...阅读全文

理解 Linux 的虚拟内存

前不久组内又有一次我比较期待的分享:“Linux 的虚拟内存”。是某天晚上加班时,我们讨论虚拟内存的念时,leader 发现几位同事对虚拟内存认识不清后,特意给这位同学挑选的主题。 我之前了解一些操作系统的念,主是毕业后对自己大学四年的荒废比较懊恼,觉得自己有些对不起计算机专业出身,于是在工作之余抽出时间看了哈工大在网易云课堂的操作系统公开课,自己也读了一本讲操作系统比较浅的书 《Linux内核设计与实现》,而且去年自己用 C 写简单的服务器时,也追根究底了解了更多的系统底层知识。多亏了这些知识,让我对应用层的知识更有掌控感,也在上次排查问题时(从应用到内核查接口超时)助了我一臂之力。 前几天另一位同事来问另一个虚拟内存相关的问题,我才发现对于虚拟内存,我的理解还不够深刻,一些念还...阅读全文

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

如何写好技术文档 — 来自十多年的文档经验总结

,它的价值马上就体现出来了。而写一份文档,随着时间的推移,它的价值才会逐渐体现出来。 你可能只写一次文档,将来它会被阅读上百次、上千次,因为一份好的文档可以在未来替你向别人回答类似下面这些问题。 1. 为什么当时是这么决策的? 2. 为什么代码是这样实现的? 3. 这个项目里都有哪些念? 4. …… 写文档同样对于写作者也有非常大的收益: - 帮你构思规范化API: 写文档的过程也是你审视你API的过程,写文档时会让你思考你API设计是否合理,考虑是否周全。如果你没法用语言将API描述出来,那么说明你当前的API设计是不合理的。 - 文档也是代码的另一种展现: 比如你两年后回过头来看你写过的代码,如果有注释和文档,你可以很快速理解代码。 - 让你的代码看起来更专业: 我们都有个感觉,只文档...阅读全文

博文 2021-07-30 16:15:13 joseph

都是颗粒 为什么SSD有寿命、内存却没有?

。 SSD则是外部存储,用来长久保存数据,属于非易失性存储,断电后数据还在,但是相对速度慢、延迟高,HDD机械硬盘、U盘、光盘等也是此类。 SSD的存储介质是NAND闪存颗粒,需施加不同的电压、改变内部状态来存储数据,随着时间的流逝、读写次数的增加,会出现物理性的损耗,最终不可用。 NAND闪存的寿命一般用P/E编程擦写次数来描述,写满一次容量就损失一次P/E。 SLC大约是10万次,MLC只有5000次左右,TLC就只大2000次,QLC仅为1000次上下,所以不得不依靠更多管理技术和算法来辅助,以保持寿命。 但另一方面,SLC、MLC、TLC、QLC的存储密度越来越大,SSD容量也越来越大,写满的率越来越低,所以整个SSD的实际寿命其实并没有大大缩短,一般应用无需过分担忧寿命问题。...阅读全文

PostgreSQL 10 有哪些新特性

PostgreSQL 继续向着将在 2017 年 9 月份发布的第 10 个主版本迈进,EnterpriseDB 首席架构师和 PostgreSQL 贡献者 Robert Hass 根据 PostgreSQL官方路线图 编制 了一份 PostgreSQL 10 重特性列表。 数月之前发布的 PostgreSQL 10 路线图包含多个单独的路线图,每个路线图对应一个特定的公司或个体贡献者。想括地了解路线图的内容并不容易。以下是 Hass 选出的一部分特性: 表分区 :这可以视为是表继承的简化版本,在表继承中,父表总是为空,子表(分区)有一个隐式约束,当元组插入父表时,它可以影响元组实际上添加到哪个分区。当使用继承关系推导表的属性时,表分区有望简化这个过程,让特定的优化成为可能。 逻辑复...阅读全文

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

NSA 的 Python 手册

Python 开发者现在可以观摩下美国情报机构 NSA 是如何培训 Python 程序员的。软件工程师 Chris Swenson 根据信息自由法案递交申请,求访问 NSA 的 Python 培训材料,结果收到了 400 页经过编辑的 NSA COMP 3321 Python 培训课程打印资料。 Swenson 扫描了打印稿,用 OCR 进行识别,确保数字档案可搜索,将其托管在 Digital Oceans Spaces,之后又被上传到了互联网档案馆。Swenson 称他问 NSA 索 Python 培训材料纯粹是出于好奇。 Python 开发者 Kushal Das 观摩之后摘录些有趣的细节:NSA 有内部的 Python 包索引,其 GitLab 实例是...阅读全文

博文 2020-02-20 12:00:39 debian.cn

Debian告知用户其系统在没有商业固件的情况下可能无法工作

此不被视为自由软件。还有类似的情况,即网络适配器和其他组件在没有加载Linux固件文件的情况下无法工作,但在GPU的情况下,甚至没有一个可以工作的桌面显示器都会成为一个障碍。与其违背他们的原则,Debian 11将继续默认不加载linux-firmware文件。然而,他们决定在需固件的设备周围添加文件。它还述了如果用户有兴趣,Debian 安装程序如何能够从U盘等加载所需的固件文件。Debian方面认为他们至少没有 “想让用户蒙在鼓里”,不知道如何解决由于缺乏固件而导致显示器无法工作的问题,因此改进了他们的文档。围绕其固件处理,Debian的非免费安装程序镜像也得到了改进。Debian安装程序 Bullseye RC3 也已经升级到 Linux 5.10 LTS 版本,并进行了其他小的改...阅读全文

Debian 9 使用kubeadm创建 k8s 集群(下)

Kubernetes对象的关系。 豆荚在Kubernetes中无处不在,因此了解它们将有助于您的工作。部署述 - 提供部署述 。 了解部署控制器如何工作非常有用,因为它们在无状态应用程序中经常用于扩展和不健康应用程序的自动修复。服务述 - 涵盖服务,Kubernetes集群中另一个常用对象。 了解服务类型及其选项对于运行无状态和有状态应用程序至关重。 您可以研究的其他重念是Volumes , Ingresses和Secrets ,所有这些在部署生产应用程序时都会派上用场。 Kubernetes提供了许多功能和特性。 Kubernetes官方文档是了解念,查找特定于任务的指南以及查找各种对象的API参考的最佳位置。...阅读全文

博文 2019-05-13 22:57:41 debian.cn

王垠:如何掌握所有的程序语言

存 比 DDR2 的快这么多,SSD 比磁盘快很多,ATI 的显卡是垃圾…… 如此等等。 程序语言也是一样的道理。对于初学者来说,其实没必纠结到底先学哪一种语言,再学哪一种。曾经有人给我发信问这种问题,纠结了好几个星期,结果一个语言都还没开始学。有这纠结的时间,其实都可以把他纠结过的语言全部掌握了。 初学者往往不理解,每一种语言里面必然有一套“通用”的特性。比如变量,函数,整数和浮点数运算,等等。这些是每个通用程序语言里面都必须有的,一个都不能少。你只通过“某种语言”学会了这些特性,掌握这些特性的根本念,就能随时把这些知识应用到任何其它语言。你为此投入的时间基本不会浪费。所以初学者纠结“先学哪种语言”,这种时间花的很不值得,还不如随便挑一个语言,跳进去。 如果你不能用一种语言里面的...阅读全文

博文 2017-07-10 10:13:17 debian.cn

固态硬盘的 PCIE、SATA、M2、NVMe、AHCI 如何理解

固态硬盘近年来也是随着计算机的发展而得到了迅速的发展,目前已经隐隐有取代机械硬盘的势头。但是关于固态硬盘相关的念实在是繁琐,很多人选购固态硬盘时,看到商家宣传NVMe,PCIE 却不懂是什么意思,今天我们就来为大家详解这些念。 首先我们把 M2 跟 SATA 放一起说,我们常说的 M2 其实是 M.2,更多是指一种尺寸或者插槽,就是上图中右边的尺寸较小的直接插主板上的这种,而 SATA 通常是指上图左边那个尺寸较大的一大块那种。 还提的是M.2插槽也是有两种的,一种是金手指有两个缺口的Socket 2跟金手指只有一个缺口的Socket 3,这两种可以走不同的通道,我们后面会说到。 接下来搞懂的是 SATA 跟 PCIE,这两个东西是指串行接口或者就是数据走的通道,相信有人看到这...阅读全文

博文 2019-01-23 13:28:23 debian.cn

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

9月4日,C++20 的国际标准草案(DIS, Draft International Standard)投票结束,最终获全票批准通过。 这意味着 C++20 已获得了最终的技术批准,并完成了 ISO 的投票,预计在完成最后一轮 ISO 的编辑工作后,C++20 将在2020年底正式发布。 与上个版本 C++17 相比,C++20 是一次重大的更新,引入了许多新特性: 模块 (Modules)协程 (Coroutines)范围 (Ranges)念与约束 (Constraints and concepts)指定初始化 (designated initializers)操作符 <=> != ==constexpr支持:new/ delete、dynamic_cast、try/ catch、虚...阅读全文

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

Open Source Initiative 批准四个新的开源许可证

Licence (OHL) 系列许可证已审议通过获得批准。OHL 系列共包含三个许可证,三个许可证都主是针对开放硬件的,这是一个类似于开源软件的开放访问领域,硬件和软件之间的界限已经相当模糊,因此在项目中只应用单独的硬件或软件许可证已经变得越来越困难。CERN 着手制作一个能确保硬件和软件自由的许可证。 放在以前,OSI 可能不会考虑在其开源许可证列表中加入开源硬件许可证,但如今开源领域已经发生了改变。因此,虽然 CERN 的许可证中的措辞包含了很多硬件念,但它也符合开源软件许可证的所有审核资格。而且,OHL 许可证在近期已被一个国际研究项目采用,该项目正在构建一个简单、易于复制的呼吸机,用于 COVID-19 患者。 CAL 和 CERN 的 OHL 许可证主用于特殊领域,OSI 不建议在其特定...阅读全文

博文 2021-03-01 10:44:35 OSChina

Debian 在其内核中测试启用 WireGuard

WireGuard 是 Linux Kernel 5.6 新增的重功能之一,经过多年的开发,现在可以作为内核代码树之外的模块提供(DKMS)。Linux Kernel 5.6 也已将其合并进内核主线。诸如 Ubuntu 20.04 LTS 之类的发行版也已经反向移植 WireGuard 到其内核。 现在,Debian 在测试的内核构建中已启用 WireGuard,它已进入到 Debian 的 Linux 内核树的 Kconfig 中。鉴于 WireGuard 的成功,Debian 大率会对它进行深度定制。对于希望继续采用 WireGuard 的 Debian 11 来说,这是个好消息。 对于内核版本较旧的现有 Debian 稳定版本用户以及其他发行版/操作系统,请参阅...阅读全文

博文 2020-03-24 10:26:42 debian.cn

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

,也可以通过优化的 memory copy,最优情况下可以仅仅交换pointer。它不仅消除了标量处理模型会遇到的问题,而且在设计 pipeline 时还可以实现更优的内存分配并与业务逻辑解耦。 图片來源:fd.io/gettingstar… 向量处理模型,graph 有 1 个起点(dpdk-input, n packets)以及 7 个业务逻辑 Graph 框架优点 总体而言,与传统的标量处理模型相比,以下括了 graph 框架主的优势 更好的 i-cache 管理,更好的icache locality。 灵活的 pipeline 模型(pipeline 框架是从业务逻辑中抽象出来的) 减少 pointer 复制 Node 可以累积多个先前 node 所传递的报文,因此批处理性能更好...阅读全文

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

程序员如何才能成为独立开发者?

这几条路: 1)自己做开源项目,足够好,然后鼓励你的关注者给你donate,老外常年用paypal收打赏。厉害一点,直接有人给你包了。 2)用心写各种demo或者教程,好看易懂,勤维护,也有人给你打赏,写的多了还可以出书,类似阮一峰和廖雪峰。 3)多做前端,写几个自己开发的工具类app,笔记啊,图片识别的类似小工具,真的好用,可以加一些小广告,或者开启升级付费的功能。 4)开直播做培训,口条好,一定把一些教程练得特别熟练,表演的好像阿里P8以上那种其实都可以自己手写一个新的jvm的大牛但是想普惠众生,而江湖隐退来开课办班,帮助大家提高技能和基本功,这种目前好多人在做。 5)程序员都在用的AWS有好消息!AWS(亚马逊云计算)中国区新用户注册即可免费使用12个月云服务产品啦!每注册一...阅读全文

Proxmox VE 5.3正式版发布

Proxmox 5.3 默认包含CephFS, 可以直接用Web界面进行配置和管理。相比之下,Proxmox 5.2 版本用 pveceph install 安装,用命令行初始化pveceph init --network网络。在Proxmox VE web管理界面,点几下鼠标就能完成文件系统的创建和配置,以前的版本需在命令行下完成。 这次官方发布更新的点比较多,这里只挑几个重的介绍,想详细了解的同学请参考发布记录。 磁盘管理GUI界面(ZFS, LVM, LVMthin, xfs, ext4) CephFS管理GUI界面(MDS) ZFS over iSCSI 插件支持 Linux-IO 目标(LIO Target) 支持模拟运行ARM架构虚拟机(试验特性,搞开发的同学可以体验下...阅读全文

博文 2018-12-05 15:34:51 debian.cn

AWS IAM 基本概念介绍

ComplianceIntegrated with many AWS servicesEventually ConsistentFree to use 基本念 User 您可以在账户中创建与组织中的用户对应的各 IAM 用户,而不是与他人共享您的根账户凭证。IAM 用户不是单独的账户;它们是您账户中的用户。每个用户都可以有自己的密码以用于访问 AWS 管理控制台。您还可以为每个用户创建单独的访问密钥,以便用户可以发出编程请求以使用账户中的资源。 Group IAM中,组是 IAM 用户的集合。利用组,可为多个用户指定权限,以便更轻松地管理这些用户的权限。例如,您可能有一个名为 Admins 的组,并向该组授予管理员通常需的权限类型。该组中的任何用户均自动具有分配给该组的权限。如果有新用户加入您的组织,并且需管理员权限,则可...阅读全文

博文 2019-06-04 20:22:31 debian.cn

Python的闭包和装饰器

什么是装饰器? 装饰器(Decorator)相对简单,咱们先介绍它:“装饰器的功能是将被装饰的函数当作参数传递给与装饰器对应的函数(名称相同的函数),并返回包装后的被装饰的函数”,听起来有点绕,没关系,直接看示意图,其中 a 为与装饰器 @a 对应的函数, b 为装饰器修饰的函数,装饰器@a的作用是: 简而言之:@a 就是将 b 传递给 a(),并返回新的 b = a(b) 栗子: 上面使用@dobi来表示装饰器,其等同于:qinfeng = dobi(qinfeng)因此装饰器本质上就是个语法糖,其作用为简化代码,以提高代码可读性,运行上段代码的结果为: 解析过程是这样子的: 1.python 解释器发现@dobi,就去调用与其对应的函数( dobi 函数) 2.dobi 函数调用前指...阅读全文

博文 2014-07-23 17:06:38 debian.cn

UCloud 叶理灯 谈:Docker、K8S 和 Serverless

的 K8S 环境不矛盾。 另外一方面,如果说定制的念是指基于 K8S 本身开发体系所提供的插件机制去做二次开发,那每家厂商都定制,因为 K8S 本身不是一个产品级就绪的环境,需使用者去适配网络和存储还有计算,因为每个公有云厂商基于自己的 IaaS 去提供 K8S 产品,必然去开发插件。 综上,向用户应该提供原生的、标准的 K8S 产品,但底层应该基于自身 IaaS 平台去定制,本质还是为了提高用户使用 K8S 的效率,让用户开箱即用。 K8S 落地挑战:改造成本和人才问题 记者:你觉得目前国内云厂商提供的 K8S 集群编排服务在推广方面目前欠缺的是什么?是什么阻碍了客户进一步去使用这些容器集群服务? 叶理灯:K8S 以容器技术为核心、以容器镜像为打包标准的特点,意味着如果迁移到这个...阅读全文

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

Fedora 33 确认引入 Stratis 2.1

Stratis 2.1 引入 Fedora 33。Fedora 工程和指导委员会(FESCo)现在已经批准此项提案。因此,预计今年秋季发布的 Fedora 33 有机会用上 Stratis 2.1。 Stratis 2.1 最重的新增功能是支持 per-pool 加密,这也是促使 Fedora 33 采用它的原因之一。除此之外,Stratis 2.1 还提供了新的管理和监控界面,以及其他功能的增强。 这份变更提案述了 Fedora 33 引入 Stratis 2.1 的计划。另外,FESCo 还在上周批准了 .NET Core for AArch64 的打包,类似于现有的 x86_64 打包。具体细节点此查看。...阅读全文

博文 2021-01-28 17:52:11 debian.cn

Linode VPS注册购买教程

按钮,我们可以来到下一步,如图: 这些就是重信息了,需注意我们所填的信息,下面是一些重的事项: – Billing Information 这些,可以作假,但是别太假,你IP在北京,就不填在上海 – Promotion Code 这是优惠码,建议选上,充值完成之后,可以送我们20美元,填这个:podcastinit2018 – Referral Code 推荐链接,填这个: eac533d58ff7c958135810ada124651d869224df – 信用卡需VISA或者MASTERCARD,我是用的建行e付卡,输入之后立马通过了。 全部填写完毕之后,点击Add Credit,会跳到这个界面: 这是代表我们的账户正在审核,不用担心,如果没问题的话,大半个小时就能审核通过...阅读全文

博文 2021-03-11 17:13:31 diablo4

Debian 9 Stretch 如何安全升级到 Debian 10 Buster(已验证)

过程 升级到 Debian Buster 现在我们正式开始 Debian 的跨大版本号的升级操作了,整个过程我们之前提到的从 Debian 8 Jessie 升级为 Debian 9 Stretch 相似。使用以下命令将 Debian 9 Stretch 升级到 Debian 10 Buster; # apt-get upgrade # apt-get dist-upgrade 上面这一步需的时间比较久,主受限于你的网速和服务器的性能,大下载 1GB 的各类系统文件,和各种安装操作。 命令执行完成以后,我们就可以重启一次系统了。这一次重启是为了让新环境生效。系统启动完成后,我们便可以做一些清理的工作; # apt-get autoremove 这条命令执行完后,我们便完成了整个系...阅读全文

在TKE上使用Kubecost进行成本管理

## 述 Kubernetes 作为 IaaS 和 PaaS 的中间层,当前对于资源的计费依托于 IaaS 层的资源计费。一个 Kubernetes 的集群,按照其购买的节点实例 CVM 计费。而用户则使用的是 Pod,在实际场景中,通常需面临这些问题,一个 Pod 如何承担成本、如何评估集群的成本、如何进行成本预测和优化建议。针对上述问题,我们推荐用户使用 Kubecost 进行解决。 Kubecost 是一款成本分析工具,可以为集群成本提供洞察、分析、推荐和建议。作为您优化集群成本的财务分析师,Kubecost 可以为您提供全面的成本分析报告。本文将介绍 Kubecost 使用场景、优化建议、详细的功能说明以及如何安装使用。 ## 使用场景 ### 评估每种资源消耗的成本 成本支出...阅读全文

PCIe 6.0完成0.5版本:明年正式版 总带宽256GB/s

PCIe无疑是最为流行的传输总线标准,这几年的更新换代也十分频繁:PCIe 3.0目前还是最普及的,PCIe 4.0正在快速崛起,PCIe 5.0即将和大家见面,PCIe 6.0也正在快速推进制定中。 PCI-SIG组织今天宣布,PCIe 6.0规范已经完成了0.5版本,并提供给组织成员,将在明年按期发布最终正式版。 PCIe每版规范的制定都经历五个不同版本/阶段: 0.3版本:初步念,提出新规范的关键特性和架构。0.5版本:初始草案规范,确定新架构的所有层面,并吸收0.3版本基础上组织成员的反馈意见,并加入成员需求的新特性加的新特性。0.7版本:完成版草案,新规范的方方面面都完全确定,电气规范也必须通过测试芯片完成验证。之后不会再加入新功能。0.9版本:最终版草案,组织成员可以据此设...阅读全文

博文 2020-02-22 22:20:38 debian.cn

C++ 20 准备发布 C++ 23 提上议程

根据 Reddit C++ 版块上的信息,C++ 20 已经正式通过委员会草案,这意味着 C++ 20 可以准备发布。“在近期 ISO C++ 委员会会议上,我们完成了 C++ 20 委员会草案,并投票决定将国际标准草案(DIS,Draft International Standard)发送出去,以进行最终批准和发布”。 帖子介绍:“在程序上,DIS 可能会被拒绝,但是由于我们的程序和过程,这种情况极不可能发生。这意味着 C++ 20 已经完成,并将在几个月后发布该标准。” C++ 20 是近十年来影响最大的一个版本,新的特性众多,包括: 模组(Modules)协程(Coroutines)标准库 Concepts 的念范围(range)constexpr支持:new/ delete...阅读全文

博文 2020-02-16 10:46:16 debian.cn

Apollo 分布式配置中心详解

。 版本发布管理 所有的配置发布都有版本念,从而可以方便地支持配置的回滚。 灰度发布 支持配置的灰度发布,比如点了发布后,只对部分应用实例生效,等观察一段时间没问题后再推给所有应用实例。 权限管理、发布审核、操作审计 应用和配置的管理都有完善的权限管理机制,对配置的管理还分为了编辑和发布两个环节,从而减少人为的错误。所有的操作都有审计日志,可以方便的追踪问题。 客户端配置信息监控 可以在界面上方便地看到配置在被哪些实例使用。 部署简单 配置中心作为基础服务,可用性求非常高,这就求 Apollo 对外部依赖尽可能地少,目前唯一的外部依赖是 MySQL,所以部署简单,只安装好 Java 和 MySQL 就可以让 Apollo 跑起来。 Apollo 配置中心适用范围 既然 Apollo 定位...阅读全文

博文 2020-04-12 12:16:26 debian.cn

中芯国际2200万豪宅留下梁孟松 明年量产N+2工艺

访问:“云通信上云狂欢节”爆款产品低至7.2折,短信低至0.034元/条 与此同时,梁孟松的薪酬大幅增长,去年拿到了493万美元的收入,而其中有一栋价值2250万元的住宅,系公司赠予梁孟松用于居家生活。不算房子的话,梁孟松的收入依然是2019年的4.5倍之多。对于中芯国际花费近500万美元留下梁孟松,业界认为并不夸张,因为梁孟松在半导体工艺上是不可多得的人才。梁孟松毕业于美国加州大学伯克莱分校电机工程及电脑科学系并取得博士学位,在行业内有35年资深经验,1992年到2009年在台积电先后担任重职务,最后是负责台积电先进工艺研发的资深研发处长。他个人发表了350多篇论文,拥有450多项专利,可以说是国宝级人才。此前的离职事件中,梁孟松表示,自2017年11月担任中芯国际联席CEO至今已有三...阅读全文

谷歌是如何培养经理人的

Google Partners Podcast主持人Alex Langshur主持了一个播客节目,主题是关于谷歌HR如何寻找和培养优秀经理人。嘉宾是来自谷歌人力发展部门的Sarah Calderon,她在节目中介绍了谷歌是如何选择、培训和培养他们的经理人的。 Langshur引用了他的前上司的话,“一个优秀的经理人让一份艰难的工作变得具有挑战性和价值…而一个糟糕的经理人在一个好的岗位上表现平平,把一份艰难的工作搞得支离破碎”,以此强调选择正确经理人是多么重。在访谈过程中,Sarah介绍了拥有7万名员工和数千名经理人的谷歌公司是如何选择、管理和培养经理人的。 Sarah括了谷歌在培养经理人方面的五个点: 表现优秀的员工不一定就是好的经理人,管理岗位所需的技能是不一样的。只是在某个领域...阅读全文

博文 2017-12-24 07:31:00 debian.cn

OpenSSL 3.0 正式发布,更改许可协议并弃用所有低级别 API

,OpenSSL 是在 OpenSSL 和 SSLeay 下获得许可的。从 OpenSSL 3.0 开始,已经过渡到了 Apache License 2.0。旧的 OpenSSL 和 SSLeay 许可证仍然适用于旧版本(1.1.1 和更早的版本)。Providers 和 FIPS 支持OpenSSL 1.1.1 的主变化之一是引入了 Providers(提供者) 念。Providers 聚集在一起并提供可用的算法实现。使用 OpenSSL 3.0,可以以编程方式或通过配置文件指定你希望用于任何给定应用程序的 Providers。OpenSSL 3.0 标配 5 个不同的 Providers。随着时间的推移,第三方可能会分发可以接入 OpenSSL 的其他 Providers。通过 Providers...阅读全文

Redis 6 将采用全新协议RESP3 提供客户端缓存功能

获取数据时的延迟。此功能在大规模的应用程序上十分重,因为数据离应用程序越近,程序就能更快获取到数据。 antirez 受 Ben Malec 演讲的启发,他想到可以将大部分需频繁存和取的数据直接放在服务器的内存中,以便让 Redis 为客户端完成部分工作,并使客户端缓存更简单、更有效。这个就是 Client side caching(客户端缓存)的念。 不过这个思路有一个需解决的问题是,如何控制数据的有效时间?在程序允许的情况下,虽然可以直接设置数据的有效时间,让数据在一段时间后失效。但 antirez 表示,大多数的应用程序无法接受提供过时的数据的风险,因此必须找到更理想的方案来控制数据的失效时间。 所以 antirez 决定开发新的协议 RESP3,在协议中加入新特性来支持客户端...阅读全文

Debian 9 Stretch 安装配置 Caddy Server

Caddy 是一个用 Golang 开发的高效 Web Server,相比 Nginx,它的配置和使用简单很多,能自动开启 HTTPS、并且支持 HTTP/2 和 QUIC。 下载安装 Caddy 首先去 Download Caddy 选择你需的插件,然后复制下方的 One-step installer script (bash),例如我的是 $ curl https://getcaddy.com | bash -s http.cache,http.cors,http.expires,http.filemanager,http.git,http.ipfilter,http.minify,http.nobots,http.ratelimit,http.realip...阅读全文

博文 2017-12-24 10:18:33 debian.cn

基于Inception & Yearning做SQL审核的实践

SQL审核是保证数据库 DDL 和 DML 安全使用、SQL变更可追溯、降低线上数据事故率的重手段。去哪儿网开源的 Inception 工具有较大的使用基础,提供了相对完善的 API 接口,结合一些外层的操作界面,可以实现SQL审核、执行、备份和恢复功能,为DBA操作利器。本文详细介绍如何配置 Inception 和 Yearning 的整合。 Inception Inception是一个自动化运维工具,在Mysql前做一个审核和操作的屏障。跟Inception的交互是程序级别的,即通过Python或其他程序编程实现对Inception的命令调用,并解析结果。 Inception的文档地址:http://mysql-inception.github.io/inception...阅读全文

博文 2018-08-13 17:39:45 debian.cn

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

("hot spot"热点竞争问题)工作负载。 2. NoSQL:MySQL 从 5.7 版本开始提供 NoSQL 存储功能,目前在 8.0 版本中这部分功能也得到了更大的改进。该项功能消除了对独立的 NoSQL 文档数据库的需求,而 MySQL 文档存储也为 schema-less 模式的 JSON 文档提供了多文档事务支持和完整的 ACID 合规性。 3. 窗口函数(Window Functions):从 MySQL 8.0 开始,新增了一个叫窗口函数的念,它可以用来实现若干新的查询方式。窗口函数与 SUM()、COUNT() 这种集合函数类似,但它不会将多行查询结果合并为一行,而是将结果放回多行当中。即窗口函数不需 GROUP BY。 4. 隐藏索引:在 MySQL 8.0 中,索引可以被...阅读全文

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

Saltstack极高危漏洞: 可获取master权限

这两天开源配置管理工具 saltstack 爆出了CVSS得分为10分的漏洞。如果你对CVSS的评分没有念,那么前几年震惊互联网的 openssl心脏滴血漏洞,CVSS base评分是5.0,由此可知这次爆出来的 saltsatck 漏洞是多么严重。 漏洞信息: 该漏洞是 F-secure 研究人员在3月份发现的,目前该漏洞已经在最新版本中修复。本次极高危漏洞,是由两个不同的漏洞引起的,一个是身份验证绕过漏洞 CVE-2020-11651,一个是目录遍历漏洞没有过滤掉不受信任的输入 CVE-2020-11652,从而导致攻击者可以不受限制的访问 salt-master 的整个文件系统。 攻击者获取salt-master的权限后,便可以控制整个被salt-master管理的数据中心的各主机...阅读全文

博文 2020-05-05 18:32:44 debian.cn

高性能日志采集工具 logpipe 简单介绍

在集群化环境里,日志采集是重基础设施。本文结合最新的 1.0.9 版,对 logpipe 做一个简单的介绍。开源主流解决方案是基于 flume-ng,但在实际使用中发现 flume-ng 存在诸多问题。 比如 flume-ng 的 spoolDir 采集器只能对文件名转档后的大小不能变化的最终日志文件进行采集,不能满足采集时效性求,如果采集正在被不断追加的日志文件,只能用 exec 采集器搭配 tail -F 命令,但 tail -F 命令又不能通配目标目录中将来新增的未知文件名。其它解决方案如 logstash 由于是 JAVA 开发,内存占用和性能都不能达到最优。 作为一个日志采集的本地代理,内存占用应该小而受控,性能应该高效,耗费 CPU 低对应用影响尽可能小,能异步实时追踪...阅读全文

CCPA vs. GDPR:欧美这两部个人数据保护法有什么差异?

欧盟一般数据保护条例(GDPR)和加州消费者隐私法案(CCPA)是欧美两大经济体所出台的两部具有代表意义的个人数据保护方面的法规,代表欧美监管机关对于个人数据保护两种不同的管控取向。 本文选取了“个人数据或信息的类型与范围界定”、“法律的管辖范围”、“数据跨境传输管控”、“儿童数据的保护”、“数据主体的反对权和被遗忘权”等关键念,对GDPR和CCPA的部分点进行比较分析。 1. “个人数据”或“个人信息”的范围界定 1.1 GDPR对个人数据的定义——侧重用抽象念定义,实践中存在很大解释空间 除了对少数“特殊种类个人数据”(如宗教信仰、种族、工会成员信息、健康状况等)进行了零星列举以外,《欧盟一般个人数据保护条例》(GDPR)主用抽象念对其所管辖的“个人数据”的范围进行界定。 根...阅读全文

LFS 8.0 正式发布:从零开始编译自己的 Linux 发行版

LFS的方法生成可以自行启动并安装了足够软件的CD,可以用来在空机器上安装LFS,或者直接在其上运行应用。 Patches 由于软件之间的依赖关系,在升级软件包之后可能会导致LFS的过程出现故障。Patch项目致力于研究最新版本的软件之间的互动,并提供一些补丁修复这些故障。 这次发布的 LFS 和 BLFS 总共有29个包得到了更新,包括启动脚本和安装指南。而 BLFS 则跟上一个旧版本相比,有大800个包得到了更新,主更新包括: * glibc-2.24 * binutils-2.27 * gcc-6.2.0 * /lib 移到了 /lib64 * 移除/usr/lib64 目录 * 增加 /usr/bin/ld.gold 可用 LFS 手册: http...阅读全文

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

Go 公布 2.0 设计草案:规模化和扩展性、支持泛型

去年7月,Go 语言官博就曾透露 Go 2 开发计划,并表示 Go 2 的目标就是解决 Go 1.x 在规模化方面做的还不够好的地方。随着时间的推进,开发团队已着手准备 2.0 版本的开发工作,并公布了设计草案,供社区讨论和反馈,以促进最终的语言设计。 设计草案包含三个方面,错误处理、错误值和泛型,并针对各个方面进行了详细的述和改进草案。大致总结如下: 一、错误处理(Error handling) 为扩展至大型代码库,Go 程序必须是轻量级的,不会过度重复,且具备稳健性,能够优雅地处理出现的错误。 目前 Go 检查错误的代码太多,但处理这些错误的代码却严重不足。对于 Go 2,开发团队希望错误检查更加轻量级,减少用于错误检查的 Go 程序的文本量。此外,还能更加方便地编写错误处理程序,提...阅读全文

博文 2018-09-01 18:39:47 debian.cn

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

,但是按照我当时的理解,说不清这个念,我现在也不一定说清这个念。第二个问题就是:你愿意做外包么?我回答不愿意。 最后女 HR 和光头说,你等一等,我们合计合计。合计的结果就是,我进来了,进来的不容易。可能还多亏当年扩招。现在我们面试的时候,我们也经常说:是按照现在的面试求,那么我肯定进不来。 这就是一段比较有意思的经历,当我妻子比较犹豫的时候,经常对妻子讲:日子总是越来越好。我的经历也可以看出很多。 所以,失败不可怕,需最自己、未来充满信息。努力去学习。 脚踏实地,如饥似渴,积少成多 于是进入了支付宝,支付宝好复杂。有很多东西给我学。 光头老大给有次问我:你的学习计划是什么呢? 我说:我把支付宝的所有框架,业务都学习一遍(真不知天高地厚) 老大说:你学的完吗? 我说:我看了下确实很...阅读全文

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

Linux Kernel 5.10本周末发布 十个功能盘点

Linux Kernel 5.10 有望在本周末发布,外媒 Phoronix 盘点了 10 个值得关注的改进和新功能。5.10 不仅是 2020 年最后一个内核版本,而且还是长期支持(LTS)版本。 Linux Kernel 5.10 合并窗口期在今年 10 月关闭,当时外媒 Phoronix 就发文览了主功能。而在 5.10 即将发布之际,外媒体再次盘点了 10 项比较有趣的功能: 1.AMD Zen 3 温度监控 AMD Zen 3 温度监控现在可以在支持 k10temp 驱动程序和其他持久 Zen 3 扩展的 Linux 上运行,这对操作至关重。Ryzen 5000 系列在 Linux 5.8-5.9 上运行良好,并且具备所有核心功能。 2.英特尔图形 在英特尔图形方面...阅读全文

博文 2020-12-09 10:30:48 debian.cn

深入了解Docker背后的namespace技术

Docker基于mamespace、cgroups、chroot等技术来构建容器,不是一个系统调用就能搞定,容器是一个用户态的念。本文中Docker软件工程师Michael Crosby深入探讨了Docker对namespace技术的应用。 相信你在很多地方都看到过“Docker基于mamespace、cgroups、chroot等技术来构建容器”的说法,但你有没有想过为何容器的构建需这些技术? 为什么不是一个简单的系统调用就可以搞定?原因在于Linux内核中并不存在“linux container”这个念,容器是一个用户态的念。 Docker软件工程师Michael Crosby将撰写一些列博客,深入到Docker运行的背后,探索在 docker run这段代码的背后发生了什么...阅读全文

博文 2015-05-17 10:03:00 debian.cn

Apollo 配置中心简单介绍

的权限、流程治理等特性。 Apollo支持4个维度管理Key-Value格式的配置: application (应用)environment (环境)cluster (集群)namespace (命名空间) 同时,Apollo基于开源模式开发,开源地址:https://github.com/ctripcorp/apollo 1.3 配置基本念 既然Apollo定位于配置中心,那么在这里有必先简单介绍一下什么是配置。 按照我们的理解,配置有以下几个属性: 配置是独立于程序的只读变量 配置首先是独立于程序的,同一份程序在不同的配置下会有不同的行为。其次,配置对于程序是只读的,程序通过读取配置来改变自己的行为,但是程序不应该去改变配置。常见的配置有:DB Connection Str...阅读全文

博文 2021-04-09 17:53:51 CSDN

什么是线程安全,以及并发需要知道的几个概念

众所周知,在Java的知识体系中,并发编程是非常重的一环,也是面试的必问题,一个好的Java程序员是必须对并发编程这块有所了解的。为了追求成为一个好的Java程序员,我决定从今天开始死磕Java的并发编程,尽量弥补自己在这方面的知识缺陷。 并发必须知道的念 在深入学习并发编程之前,我们需了解几个基本的念。 同步和异步同步和异步用请求返回调用的方式来理解相对简单。 同步:可以理解为发出一个请求后,必须等待返回结果才能执行下面的操作。 异步:请求发出后,不需等待返回结果,可以继续执行后续操作,异步请求更像是在另一个 “空间” 中处理请求的结果,这个过程不会影响请求方的其他操作。 举个生活中的例子,比如我们去实体店买衣服,挑选完款式后下单让售货员去仓库拿货,在售货员拿货的过程你需在店...阅读全文

博文 2018-12-31 20:44:06 debian.cn

WebAssembly:无需容器的 Docker (上)

探讨了这个念,这就是标题所说的 “没有容器的 Docker”。Wasm 如何结合 Docker 运行?Docker Desktop 现在加入了对 WebAssembly 的支持。 它是通过 containerd shim 实现的,该 shim 可以使用名为 WasmEdge 的 Wasm 运行时来运行 Wasm 应用程序。 这意味着,现在可以在 WasmEdge 运行时(模拟容器)中运行 Wasm 应用程序,而不是用典型的 Windows 或 Linux 容器运行容器镜像中二进制文件的单独进程。因此,容器镜像不需包含正在运行的应用程序的操作系统或运行时上下文 —— 单个 Wasm 二进制文件就足够了。这在 Docker 的 Wasm 技术预览文章中有详细解释。WasmEdge 是什么...阅读全文

博文 2023-01-03 06:35:56 spider

Go 1.16 即将发布,这些变更你需要知道

bytes, 0 allocs init errors @0.22 ms, 0.004 ms clock, 0 bytes, 0 allocs init strconv @0.24 ms, 0.002 ms clock, 32 bytes, 2 allocs init sync @0.28 ms, 0.003 ms clock, 16 bytes, 1 allocs init unicode @0.44 ms, 0.11 ms clock, 23328 bytes, 24 allocs ... 主作用是 init 函数跟踪的支持,以用于 init 调试和启动时间的分析,算是一个 GODEBUG 的补充功能点。 简化结构体标签 在 Go 语言的结构体中,我们常常会因为各种库的诉求,需对结构体的...阅读全文

博文 2021-02-17 08:52:12 CSDN博客

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

的联合身份用户。如果使用不属于 aws-auth ConfigMap 的 IAM 用户或角色访问 Amazon EKS 控制台,则无法看到 Kubernetes 工作负载。也不会看到集群的览详细信息。所以向其他 AWS 用户或角色授予与集群交互的能力,您必须在 Kubernetes 中编辑 aws-auth ConfigMap。 因为部门有不通的角色,所以想基于不通的角色分配不同的权限,下面是记录添加一个对 EKS 只有只读权限的 AIM 用户。 {{< notice info "注意:" >}} 如果您在运行 AWS 命令行界面 (AWS CLI) 命令时遇到错误,请确保您使用的是最新版的 AWS CLI。 {{< /notice >}} 为 IAM 用户或角色配置权限 查找具有主...阅读全文

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

开源简史基础:Linux基金会

员年费数量备注白金会员企业会员50万美元15黄金会员企业会员10万美元16白银会员企业会员5000-20000美元800+根据企业规模年费不同个人会员个人会员99美元-- 可以看到主的资金来源是上述四类,根据截止于2019年9月10日的数据,大体白金/黄金/白银(取中位数1万)的年费正常的话大有:5015 + 1610 + 800*1 = 1710万美元,再加上大量的个人用户,资金来源相较于一般的项目还是能够提供较好的支持的。 白金和黄金会员 截止到目前位置,白金和黄金会员为31,虽然我们无法确认大量的白银会员,但是白金和黄金会员的企业类型,还是可以确认的。 会员类型会员数量通信企业软件开发商金融公司自动化/制造业组件生产商设备制造商其他白金15AT&T、腾讯TencentFujitsu...阅读全文

你和 Linux 高手只差了一个 LFS

,LFS 绝对配得上称为一本好书,或者说一本好教材。市面上,很难再找到一本如此具体又如此精炼的教材了。 首先,它并不是只是讲讲简单念,它很具体,具体到就是一个例子,一个告诉你怎么亲手构建出属于自己的 Linux 系统的例子。 其次,它很精炼,它的精炼表现在两个方面:系统构建出来不臃肿;文字描述很精炼。 最后还有一点,这一点至关重。尽管文字的描述非常精炼,甚至是精炼到枯燥,但是作为一本教材,作者无时无刻不再想尽办法,让你学到东西。无论是编译指令下方各个参数的介绍,还是软件包安装小节下方软件包内容的介绍,作者真的是想尽办法的试图把知识传递给读者。 LFS 没有缺点吗? 那自然是有的,可以原封不动的照抄上面的优点。辩证的看待这些优点,你就会发现这些优点是有代价的。 首先,由于这个例子过于生动形象,所...阅读全文

博文 2017-07-17 17:45:59 debian.cn

Node.js Vs. PHP:你应该选择哪一个

Node.js 早诞生将近20年,所以在文档,API 和代码库等在线资源方面更为丰富。所以很有可能其他人也尝试了你想用代码完成的事情并从中获得了帮助。另一方面,Node.js 虽然已经得到了开发者和组织的广泛关注,但是它支持开发者开发的资源缺相当少。 8.学习曲线: 编写 Node.js 代码对于新手甚至是专业的 JavaScript 开发人员来说都不是件容易的事情,因为他们需在入门之前理解一些复杂的念,比如 web worker 和回调函数。相反,PHP是一门非常友好的编程语言对于开发 Web 应用程序的新手来说。 Node.js 和 PHP 战斗的结果是相辅相成的,因为这两种技术都有各自的优点和缺点。这大多是相似的情况在比较或选择用于 Web,桌面和移动开发的其他技术时。Node.js 有前途...阅读全文

博文 2017-12-23 23:15:39 debian.cn

PostgreSQL 13 正式版发布

索引所需的整体空间使用率,同时提高了整体查询性能。 PostgreSQL 13 引入了增量排序,即在查询中较早步骤的排序数据可以加速后面步骤的排序。此外,PostgreSQL 现在可以使用扩展的统计信息(可通过CREATE STATISTICS访问)来为带有OR子句和IN/ ANY查找列表的查询创建改进的计划。 在 PostgreSQL 13 中,更多类型的聚合查询和分组查询可以利用 PostgreSQL 的高效哈希聚合功能,因为具有大型聚合的查询不必完全放入内存。对分区表的查询也得到了性能提升,因为现在有更多的情况下可以修剪分区和直接联接分区。 优化管理 清理(Vacuuming)是 PostgreSQL 管理的一个重部分,使数据库在更新和删除行后能够回收存储空间。此过程也会带来管理上的...阅读全文

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