InfraPub 为您找到相关结果 855

Kubernetes 这么香,为什么谷歌还坚持使用 Borg?

作为谷歌开源的容器集群管理系统,Kubernetes 建立在谷歌内部的 Borg 技术之上。发展到今天,Kubernetes 的规模已经变得非常庞大,它被认为是计算基础设施的未来,与虚拟机一脉相承,就像虚拟机取代裸机成为计算部署的常见单元一样,尤其是在云环境中。 作为业界主流的容器技术,谷歌会不会考虑迁移到 Kubernetes 呢? https://www.infoq.cn/article/juhmwqtyaad6z3okkjnj...阅读全文

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

/1000/dev/mapper/hdd-vz 98G 61M 93G 1% /var/lib/vz 后一行,可以看到已经挂载好了,size 因为计算的问题,和 100G 有些许出入 剩下的是 VM 的存储分区。 创建 VM 存储分区需要确定我们配置的存储类型,因为时间有限,之前那台独服用的是 LVM-Thin,的这台也考虑使用 LVM-Thin,还有一种是 LVM。 LVM 和 LVM-Thin 的区别如下: 参考:https://pve.proxmox.com/wiki/LVM2#LVM_vs_LVM-Thin Type Content types Image formats Shared Snapshots Clones LVM images,rootdir raw possible no...阅读全文

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

nsenter 及 Linux命名空间 简介

] lrwxrwxrwx 1 root root 0 Nov 27 05:02 pid -> pid:[4026531836] lrwxrwxrwx 1 root root 0 Dec 15 11:11 user -> user:[4026531837] lrwxrwxrwx 1 root root 0 Dec 15 11:11 uts -> uts:[4026531838] 系统调用 clone clone是Linux的系统调用函数,用于创建一个的进程。 clone 和 fork 比较类似,但更为精细化,比如说使用 clone 创建出的子进程可以共享父进程的虚拟地址空间,文件描述符表,信号处理表等等。不过这里要强调的是,clone 函数还能为进程指定命名空间。clone的语法: #define...阅读全文

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

WebAssembly:无需容器的 Docker (上)

本文翻译自 Wasm Labs @ VMware OCTO 的 blog: WebAssembly: Docker without container,已获得授权这是 Wasm Labs 在 2022 年 12 月 15 日在冬季 Docker Community All Hands 7 的关于 Docker+WebAssembly 的演讲的文字版。作者:Asen Alexandrov,Wasm Labs 工程师文中的我们均指作者或 Wasm Labs。由于文章内容翔实、篇幅较长我们将分成上下两篇分享,上篇将注重在概念阐释,如 Wasm 是什么,Wasm 与 Docker 的关系是什么。下篇文章将更具实践性,将以 PHP 为例带领大家实践 Docker + Wasm。近,Docker 宣...阅读全文

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

欧洲核子研究组织(CERN)是如何使用 Linux 和开源的 - 云+社区

CentOS 的构建和分发做出贡献。CERN 帮助 CentOS 提供基础架构,他们还组织了 CentOS DoJo 活动(LCTT 译者注:CentOS Dojo 是为期一日的活动,汇聚来自 CentOS 社群的人分享系统管理、佳实践及兴科技。),工程师可以汇聚在此共同改进 CentOS 的封装。除了 OpenStack 和 CentOS 之外,CERN 还是其他开源项目的深度用户,包括用于配置管理的 Puppet、用于监控的 Grafana 和 InfluxDB,等等。“我们与全球约 170 个实验室合作。因此,每当我们发现一个开源项目的改进之处,其他实验室便可以很容易地采纳使用。”Bell 说,“与此同时,我们也向其他项目学习。当像 eBay 和 Rackspace 这样大规模的装机量提高了...阅读全文

博文 2021-11-29 13:20:55 腾讯云

Golang Context 探究

{ // 返回 context.Context的截止时间(也就是取消时间) Deadline() (deadline time.Time, ok bool) // 返回一个 Channel,这个 Channel 会在当前操作完成或者上下文被取消之后关闭,多次调用 Done 方法会返回同一个 Channel Done() <-chan struct{} // 返回 context.Context 结束的原因 Err() error // 从 context.Context 中获取键对应的值, 该方法可以用来传递请求特定的数据 Value(key interface{}) interface{} } Context 实现 首先我们思考为什么Golang 中需要 Context。用我们熟悉的例子 http...阅读全文

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

Bash Shell 中的 PROMPT_COMMAND

在 bash 显示 prompt 之前。 这个好理解,就是说每执行一个命令前,PROMPT_COMMAND 里面先执行,然后是 prompt。 但里面的 msg=$(history 1 | { read x y; echo $y; }); 让我迷惑了,现在我来把它拆解, 先来理解 history 1 命令,它的输出总是 $COMMAND_Number history 1, 也就是理解成它的输出总是后一次执行的命令? bash 会先记录下这个命令:history 1 | { read x y; echo $y; }? 接着 history 1 加管道处理后就变成它本身,而不带 $COMMAND_Number,于是输出就是命令它本身:history 1 | { read x y...阅读全文

Debian 安装 fail2ban 方式SSH爆破攻击

使用 Debian 这么久,影响深的小软件莫过于 fail2ban 了。对多数服务器而已,对外开放的服务中,风险相对较高的莫过于 SSH 服务了, fail2ban 是一个轻量、有效、便捷的保护服务器免受暴力攻击的工具。 Fail2ban 使用 iptables 来阻止攻击者。 Fail2ban 的安装非常简单。Debian 及衍生版,可以直接从软件源安装: apt-get install fail2ban 安装结束后便进入可用状态,默认的设置就足够使用了。这就是 Debian 的风格,不需要不必要的人工干预,在不知不觉中就提升了你的效率。我们还是来看一下 fail2ban 的配置文件 /etc/fail2ban/jail.conf ,默认区段如下: [DEFAULT]ignoreip...阅读全文

博文 2019-03-27 16:45:58 debian.cn

linux下查看系统socket读写缓冲区_eyucham的专栏

一:linux下查看系统socket读写缓冲区大小配置: http://blog.csdn.net/herecles/article/details/8146017 1. tcp 收发缓冲区默认值 [root@ www.linuxidc.com]# cat /proc/sys/net/ipv4/tcp_rmem 4096 87380 4161536 87380 :tcp接收缓冲区的默认值 [root@ www.linuxidc.com]# cat /proc/sys/net/ipv4/tcp_wmem 4096 16384 4161536 16384 : tcp 发送缓冲区的默认值 2. tcp 或udp收发缓冲区大值 [root@ www.linuxidc.com]# cat...阅读全文

博文 2021-01-26 16:21:35 CSDN博客

k8s 中发现很多为状态为 Evicted 的 Pod

")) | "kubectl delete pods \(.metadata.name) -n \(.metadata.namespace)"' | xargs -n 1 bash -c 将Evicted状态的pod删除后,清理一波磁盘,具体操作可以查看如何清理Linux服务器磁盘空间 df -h //查看服务器空间 du -h --max-depth=1 //查看当前目录,哪个文件占用大 du -sh * //查看当前目录下各文件及文件夹占用大小 cp /dev/null a.log //将a.log文件清除为空 后k8s上的服务显示正常了。...阅读全文

博文 2021-03-05 08:34:20 diablo4

Golang 中的 channel 通道详解

制将在编译期检测。func f1(out chan<- int) {} func f2(out chan<- int, in <-chan int){} 在调用f1或f2的时候,传入的chan类型参数会自动隐式转换为chan<- int 和<-chan int类型,这种转换只是单向的,没有单向channel类型转换为chan类型。因为关闭操作只用于断言不再向channel发送的数据,所以只有在发送者所在的goroutine才会调用close函数,因此对一个只接收的channel调用close将是一个编译错误。带缓存的channel带缓存的Channel内部持有一个元素队列。队列的大容量是在调用make函数创建channel时通过第二个参数指定的。通过内置函数cap() 可以获得...阅读全文

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 相比 Ubuntu 有哪些不同之处

Debian 和 Ubuntu 是有史以来具有影响力的两大 Linux 发行版。在大约285个活跃发行版当中,有132个源自Debian (也包括Ubuntu本身),另有67个直接源自Ubuntu。不过在Ubuntu和Debian之间作一个选择并非易事。说到底,选择Ubuntu还是选择Debian用来制定业务战略,取决于你在平台支持、用户控制级别、易用性及另外一些关键问题方面的使用偏好。 如果要求你解释一下 Debian和Ubuntu 之间的区别,大多数会这样回答:Ubuntu是面向手的发行版,而Debian是面向专家的发行版。这样的描述部分正确,但同时夸大其辞。Debian的声誉建立在10多年前的状态;如今,允许每个用户可以选择众多的实际控制特性。 同样,从设计概念来看,Ubuntu...阅读全文

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

Tor 项目联合创始人称 暗网并不真正存在

在拉斯维加斯举行的 DEF CON 会议上,Tor 项目联合创始人 Roger Dingledine 试图纠正有关匿名网络的错误观念。他指出,只有 3% 的 Tor 用户访问 Tor 隐藏服务,绝大部分用户是出于完全合法的目的通过 Tor 访问公共网站。这些网民只是想隐藏身份,他们不是什么黑社会恶棍。 他告诉出席 DEF CON 会议的与会者,暗网并不真正存在,它们只是少许网页罢了。Tor 用户访问多的网站是 Facebook,有超过一百万人通过 Tor 登录 Facebook。一百万,这只是 Facebook 十亿用户群中的一小部分,但对于像 Tor 这样的项目来说却非常重要。 他还解释了 Tor 浏览器继续使用 Firefox 的原因,称 Chrome 的代理绕过仍然引起担忧...阅读全文

博文 2017-08-04 07:38:59 debian.cn

Python3: 二分法查找的两种实现方法

二分法查找是一种基础的、简单而高效的算法,又称为折半查找。顾名思义,就是将待查表一分为二,从而减少了查找次数,提高了效率。但缺点就是待查表必须为顺序表,并且待查表在查找时不宜做增删操作。 其优时间复杂度为O(1),坏时间复杂度为O(logn)。代码样例: ``` # coding:utf-8 方法一:递归法 def binarySearch_01(listx, item): """Be of recursion""" length = len(listx) if length > 0: #定义中间值下标: split = length // 2 if listx[split] == item...阅读全文

AWS 宣布赞助 Rust 语言

毫无疑问,Rust 目前发展势头正劲。此前,微软安全响应中心探索采用 Rust 的消息引发大量关注,在连续四年蝉联“受开发者喜爱的编程语言”后,Rust 可能已经从“想要学习的语言”逐渐转变为许多开发者“正在学习的语言”。自从四年前首次发布稳定版以来,它已经得到了广泛的采用,谷歌,微软和 Mozilla 等公司都在使用 Rust。现在,AWS 也向 Rust 伸出了橄榄枝。 近日,AWS 在其开源博客上发文宣布赞助 Rust 语言。迄今为止,Rust 已在 AWS 中实现了许多增长,Lambda、EC2 和 S3 等服务都选择在性能敏感的组件中使用 Rust。AWS 开源的 Firecracker microVM 项目也正是采用 Rust 编写。 AWS 从 Rust 维护者的视角解释了...阅读全文

博文 2019-10-17 22:42:27 debian.cn

三种SSL证书之间有什么区别

书针对网站域名及所有权进行严格书面审查,通过审核之后,证书上标示企业资料,让访问用户可以直接了解企业身份并强化信任感,为后续其他基于互联网的服务内容提供妥善保护。安全级别较高。 EV(扩展型/增强型)SSL证书:扩展验证网站所属单位身份,适合高度信任的企业级用户使用。如金融行业、银行、电子商务平台等;EVSSL的大特点便是激活网站在浏览器的标签栏使其变绿,利用鲜明的标示告诉用户:这个网站正受到严密的信息安全防护,同时通过证书标示增强机构信赖及网站真实合法认定。安全级别高。...阅读全文

多达 95% 的 HTTPS 链接能被黑客劫持

HSTS 是一个被当前大多数 Web 浏览器所支持的 Web 安全策略,它可以帮助 Web 管理员保护他们的服务器和用户避免遭到 HTTPS 降级、中间人攻击和 Cookie 劫持等 HTTPS 攻击的危害。由于服务器管理员没能正确设置 HTTP Strict Transport Security (HSTS),现今大量的 HTTPS 流量都能被轻松劫持。 95% 的 HTTPS 连接处于风险中 据近的 Netcraft study 报告数据显示,当前多达 95% 的服务器所运行的 HTTPS 没有正确地设置 HSTS 或其它配置,以至于将 HTTPS 连接暴露于上述攻击风险之中。 更值得注意的是,Netcraft 在三年前进行的同样扫描,不正确配置的 HSTS 比例仍同现在一样。这表明...阅读全文

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

三个简单而优秀的 Linux 网络监视器

PROGRAM DEV SENT RECEIVED 7690 carla /usr/lib/firefox wlan0 12.494 556.580 KB/sec 5648 carla .../chromium-browser wlan0 0.052 0.038 KB/sec TOTAL 12.546 556.618 KB/sec Nethogs 选项很少:在 kb/s、kb、b 和 mb 之间循环;通过接收或发送的数据包进行排序;并调整刷之间的延迟。请参阅 man nethogs,或者运行 nethogs -h。 vnstat vnstat 是容易使用的网络数据收集器。它是轻量级的,不需要 root 权限。它作为守护进程运行,并记录你网络统计信息。它默认显示所有的网络接口。使用 -i 选项选择单个...阅读全文

博文 2017-11-07 00:07:38 debian.cn

bmon:一个强大的网络带宽监视和调试工具

[On Debian/Ubuntu/Mint] 另外,你也可以从 https://pkgs.org/download/bmon 获取对应你 Linux 发行版的 .rpm 和 .deb 软件包。 如果你想要版本(例如版本 4.0)的 bmon,你需要通过下面的命令从源码构建。 在 CentOS、RHEL 和 Fedora 中 $ git clone https://github.com/tgraf/bmon.git $ cd bmon $ sudo yum install make libconfuse-devel libnl3-devel libnl-route3-devel ncurses-devel $ sudo ./autogen.sh $ sudo./configure...阅读全文

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

兼容 tmux 的文件上传/下载工具 trzsz ( trz / tsz ) 使用指南 支持进度条和目录传输

我们登陆远程服务器后,常常需要下载、或者上传一些文件,我们常用的 lrzsz 对 tmux 支持不够友好,于是就有了 trzsz 这个工具,它安装简单,使用方便,功能全面,小巧灵活,GitHub项目地址: https://github.com/trzsz/trzsz为什么需要 trzs 这个“轮子”?考虑 laptop -> hostA -> hostB -> docker -> tmux 这种场景,使用 scp 或 sftp 是不方便的。在这种场景下,使用 lrzsz ( rz / sz ) 是很方便的,但是很可惜它与 tmux 不兼容。 tmux 不愿意支持 rz / sz ( 906, 1439 ),而重造一个工具比修改 tmux 简单很多。trzsz 安装指南在远程服务器上安装...阅读全文

成功运作一个开源项目的15个要点

少。 2、透明 这一点很容易理解:我们要使得社区可以观察和了解你正在做的事情:使用易于查找的可公开访问的源代码存储库,使用面向公众的问题跟踪软件,在社区可以找到的地方公布发布计划,以及在公共论坛捕获会议记录(例如归档邮件列表)。 3、开放 对于很多开源项目来说,“透明度”和“开放性”意味着同一件事,但其实这两个术语的含义截然不同。开放不仅仅指的是“一目了然”(这与透明本质上是一样的)。对于许多人来说,开源的“开放”意味着开放思想,或开放参与。参与开源项目的规则对于每个人应该是一样的(“公平的竞争环境”):仅仅接受几个补丁是不够的,你必须对的思路点子开放。总之,你必须允许别人参与你的项目,放弃对项目的绝对控制。 4、保持“公平的竞争环境” 这并不一定意味着你必须让任何人加入项目,而是要确保...阅读全文

博文 2017-11-08 09:58:28 debian.cn

专访Docker大牛:Docker背后的真正引擎是Containerd

近,我们可能经常会听到一种说法"Docker正在彻底改变IT!"这种说法是否存在炒作嫌疑呢?Docker对于现有格局的破坏性到底在哪里?Docker和虚拟机之间有什么区别?Docker真正的附加价值在哪里?本文我们将和Docker大牛Chanwit Kaewkasi来讨论这些话题。 Asst. Prof. Dr. Chanwit Kaewkasi 问:您是如何与Docker结缘的呢? Chanwit Kaewkasi:这个可以追溯到2014年,当时我们实验室正在寻找一个虚拟化层来帮助管理大数据栈,而虚拟机解决方案对我们来说太重了,所以遇到Docker对我们来说是一件幸事。 问:我们经常听到"Docker正在彻底改变IT",你认同这种观点吗?Docker技术有什么破坏性? Chanwit...阅读全文

博文 2017-11-22 10:50:11 debian.cn

2018 GitHub 最火技术趋势

GitHub的高级技术副总裁Jason Warner在2018的技术趋势中挑出了数据、工作流集成(workflow integration)以及开源工具,他认为这些是一个公司在2018年能够取得成功的关键。 Warner写道,数据将成为2018年全球增长的重要因素: 现如今,所有的公司都是数据公司,不论他们是否意识到这个情况。在2018年,只要团队知道如何使用数据,数据就会成为他们大的资产。 数据的重要性日益增长,也标志着云服务平台从分布式云计算平台转型成为数据处理的云平台,其中还包括数据分析和机器学习。这将重点反映到三个关键领域: Warner说,许多重要的系统目前都很脆弱,尽管它们的规模越来越大。为了应对在2018年变得更加频繁的攻击,将会有更多的财力和开发资源分配到改进安全性上...阅读全文

博文 2017-12-14 22:50:29 debian.cn

总结系统设计中的33个黄金法则

关。 18. 针对单点故障——实施冗余。 19. 为了容错性和持久性——实施数据复制。 20. 对于用户到用户的快速通信 — 使用 Websockets。 21. 分布式系统中的故障检测——实现心跳。 22. 数据完整性——使用校验和算法。 23. 高效的服务器扩展——一致性哈希。 24. 去中心化数据传输——考虑 Gossip 协议。 25. 基于位置的功能 — 使用四叉树、Geohash 等。 26. 避免特定的技术名称 — 使用通用术语。 27. 高可用性和一致性的权衡——终一致性。 28. 对于IP解析和域名查询——DNS。 29. 处理网络请求中的大数据——实施分页。 30. 缓存删除策略 — 首选...阅读全文

Kubernetes 部署 Nacos 1.4 集群 · 小豆丁

。 JVM_XMX: 设置 JVM 初是堆内存大小。 JVM_XMN: 设置 JVM 堆内生代的内存大小。 SERVICE_NAME:指定 Nacos 部署在 K8S 中的 Service 名称。 DOMAIN_NAME:指定 k8s domain 配置,一般默认即可。 执行部署 Nacos 数据库 ConfigMap 资源 -n:指定部署的 Namespace $ kubectl apply -f nacos-config.yaml -n mydlqcloud 3、创建 Nacos 应用 nacos-deploy.yaml apiVersion: v1 kind: Service metadata: name: nacos-headless labels: app: nacos spec: ports...阅读全文

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

分布式运行时 Dapr 知多少

Intro Dapr 官方团队已于近(2021.1.17)正式发布Dapr v1.0,Dapr已正式生产可用,可以部署到自托管环境或 Kubernetes 集群。对于绝大多数开发者来说,想必对Dapr只是有所耳闻,而具体是什么(What),可以解决什么样的问题(Why&How),有怎样的应用场景(Where),并不知悉。本文就尝试简要梳理下Dapr,并尝试回答以上问题。 What's Dapr Distributed Application Runtime. An event-driven, portable runtime for building microservices on cloud and edge. 分布式应用运行时。一个事件驱动、可移植的运行时用于在云上和边缘计算上构建...阅读全文

SVN切换分支用法汇总

new_URL 该命令的作用是将版本库中的old_URL目录重命名为new_URL。这个操作如果已经提交到版本库就意味着旧目录不存在了,目录被创建,并且历史记录中会出现重命名的信息。三、SVN切换分支操作步骤下面为大家介绍一下,如何使用SVN进行切换分支的操作。这里以Windows环境下的操作为例,其他系统只需要将命令替换为对应系统的命令即可。1. SVN环境配置在使用SVN前,需要先进行环境配置。具体步骤如下:Step 1:下载SVN客户端。下载地址:https://tortoisesvn.net/downloads.html,选择对应的系统版本即可。Step 2:安装SVN客户端。双击下载后的安装程序,根据指示进行安装。Step 3:配置环境变量。进入系统变量中,将SVN安装路径添加到Path变量...阅读全文

博文 2023-06-09 14:22:35 infras

Devuan Jessie 1.0 稳定版发布

备受期待的Devuan GNU/Linux 1.0.0 “Jessie”操作系统于昨天正式发布,可以在不安装systemd或者没有任意systemd相关安装包的情况下安装到笔记本和工作站上。自2014年11月立项以来,Devuan项目的目标就是在没有systemd初始化进程的情况下开发出Debian GNU/Linux分支。 2014 年,因为选择初始化系统 systemd 引发的争议,一群不满的开发者创建了不使用 systemd 的 Debian 分支 Devuan。现在,Devuan 开发者宣布释出 Devuan Jessie 1.0 正式版。 这主要是因为于2015年发布的Debian 8 Jessie系统中默认初始化系统为systemd,可选使用sysvinit。systemd受...阅读全文

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

微软开源MsQuic QUIC 协议的跨平台实现

微软在其技术社区官方博客宣布,已开源自己的内部 QUIC 库,即 MsQuic。QUIC(Quick UDP Internet Connections,快速 UDP 网络连接)是一种实验性的网络传输协议,正在由 IETF 进行标准化。QUIC 初由谷歌开发,在 2013 年实现。 谷歌希望使用这个协议来取代 HTTPS/HTTP 协议,使网页传输速度加快。2018 年,基于 QUIC 协议的 HTTP(HTTP over QUIC)成为即将到来的 HTTP/3,正式被确定为下一代网络规范。 微软的 MsQuic 是实现 QUIC 传输协议的跨平台通用库,主要用于支持其产品内部的 QUIC 数据连接。MsQuic 针对多种使用模式进行了优化,已经被多个微软产品和服务使用,包括但不限于...阅读全文

博文 2020-04-30 10:07:43 debian.cn

慕尼黑放弃Linux 2020年或将全面迁入Windows

慕尼黑决定放弃微软服务转向开源软件的时候,得到了很多人的支持。然而,上个月,慕尼黑表示在 Linux 客户端中心环境下,他们经常会遇到重大难题,运行 Linux 被证明终难以维持,并决定再次投票是否迁回 Windows。 慕尼黑因为计划“戒掉”微软,并开始对 Linux 和 LibreOffice 的使用而受到了开源界关注。但其实慕尼黑并没有“戒”成功,其邮件服务器终还是转移到了 Microsoft Exchange 上,并且,在今年 2 月份开始第一次投票,决定是否从 Linux 迁回 Windows。 上周,慕尼黑又举行了一次委员会投票,投票结果显示,社会民主党和保守党派都投票支持从 Linux 迁回到 Windows。Hubner 表示,用户对 Linux 的使用并不满意,公共部...阅读全文

博文 2017-11-18 08:33:51 debian.cn

观点:DDR内存即将谢幕 HBM 3/4内存才是未来

这一年来有关国内公司进军内存产业的消息甚嚣尘上,紫光公司凭借原有的英飞凌、奇梦达基础在DDR3内存上已经作出了突破,小批量生产了DDR3内存,下半年还会推出更主流的DDR4内存芯片,正在努力追赶国际主流水平。但是放眼整个内存市场,DDR5内存很快就要来了,更可怕的是未来即便是DDR5内存也很可能被更的技术淘汰。 业界已经有人提出了DDR内存将死的看法,未来需要高带宽的产品将转向HBM内存,2020年会有HBM 3内存,2024年则会有HBM 4内存,届时带宽可达8TB/s,单插槽容量可达512GB。 对于HBM内存,DIY玩家可以说也是相当熟悉了,AMD在2015年的Fury系列显卡上首次商用第一代HBM技术,超高的带宽、超低的面积占用彻底改变了当时的显卡设计,随后NVIDIA在...阅读全文

GitHub 发布10月21日系统故障分析报告

Raft 共识机制之上达成共识。Orchestrator 可以实现应用程序无法支持的拓扑,因此必须注意将 Orchestrator 的配置与应用程序级别的期望保持一致。 然而 21 日,在上述网络分区中,Orchestrator 在主数据中心中一直保持活跃,根据 Raft 的共识机制,它开始了一个取消领导选举的过程。美国西海岸数据中心和美国东海岸公有云 Orchestrator 节点能够建立合规数量并开始对群集进行故障转移,以便将写入指向美国西海岸数据中心。Orchestrator 继续组织美国西海岸数据库集群拓扑,当连接恢复时,应用层立即开始将写入流量引导到西海岸站点的当选者。 美国东海岸数据中心的数据库服务器包含一段短暂的写入时间,但尚未复制到美国西海岸的设施。由于两个数据中心中的数据库集群...阅读全文

岗位需求: CTO

工作规范和工作流程,并跟踪开发过程实际合规性; 8. 指导. 审核项目总体技术方案,对各项目进行后的质量评估; 9. 负责技术团队建设和管理,注重人才培养和营造创的研发文化; 10. 完成各项技术工作相关数据统计分析报告,并据此对公司发展提出合理化建议。 ** 岗位要求:** 1. 本科及以上学历,计算机. 软件工程相关专业,互联网行业优先考虑; 2. 10年及以上技术研发. 软件开发相关行业工作经验,5年以上互联网行业技术研发团队管理经验, 精通基于Java. PHP等语言的开发,熟悉服务端软件架构设计与开发流程;有互联网CTO或技术总监工作经验,带过百人以上团队; 3. 熟悉互联网领域业务,深刻理解产业发展方向,具备敏锐准确的洞察力和缜密的逻...阅读全文

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

个 SATA 就要迷糊了。其实上面的 SATA 更多是指插槽,而这里的 SATA 是指数据走的通道,目前的设备普遍都是 SATA3 接口了,但是 SATA3 是向下兼容 SATA2 跟 SATA1 的(所以下文我们只讨论SATA3)。 PCI-E 跟 SATA3 简单说就是数据走的“路”。PCI-E 就像是特别宽大的路,数据可以走的特别快,而 SATA3 与之相比更像是一条崎岖的小路,数据走的特别慢。但是CPU内部就那么大一点,修不了特别多的大路,所以PCI-E通道也就仅有那么几条。 通常 SATA 的插槽只能走 SATA3 的通道。而 M.2 的插槽上文我们说了分为 Socket 2 跟 Socket 3。M.2(Socket 2)的固态可以走 SATA3 或者 PCI-E 3.0×2...阅读全文

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

Linux Systemd被爆远程漏洞 CVE-2017

"dns_packet_new" 函数中, 它是一个 dns 响应处理程序组件, 它为本地应用程序提供网络名称解析。 根据星期二发布的一个公告, 当系统试图在攻击者控制的 dns 服务上查找主机名时, 经过精心构造的恶意 dns 响应,可以远程崩溃 " systemd-resolved " 程序。 终, 大量 dns 响应会溢出目标计算机的缓冲区, 从而使攻击者改写其内存,引发远程代码执行。这意味着攻击者可以通过其恶意的 dns 服务,在目标系统或服务器上,远程执行任何恶意软件。 ubuntu 开发者Chris Coulson在开发规范中这样描述, “直到 233版本的 systemd , certain sizes passed to dns_packet_new in systemd-resolved can...阅读全文

博文 2017-07-02 09:39:36 9445 影响多种Linux系统

六个开源软件开发的潜规则

玲珑,面面俱到 作为一个开发者,你很可能希望为开源项目解决一个特定的痛点。或许你想要运行在一个目前还不支持的系统上,抑或你很希望改革社区目前使用的安全技术。想要引进技术,特别是比较有争议的技术,好的办法就是让人无法拒绝它。你需要透彻地了解底层代码,考虑每个极端情况。在不影响已实现功能的前提下增加功能。不仅仅是完成就行,还要在特性的完善上下功夫。 糜不有初,鲜克有终 开源社区也有许多玩玩就算的人,但是承诺了就不要轻易失信。不要就因为提交被拒就离开社区。找出原因,修正错误,然后再试一试。当你开发时候,要和整个代码库保持一致,确保即使项目发生变化而你的补丁仍然可用。不要把你的代码留给别人修复,要自己修复。这样可以在社区形成良好的风气,每个人都自己改。 这些“潜规则”看上去很简单,但是还是有许...阅读全文

博文 2017-05-20 10:27:11 debian.cn

mysqldump 执行时,需要的最小权限有哪些?

根据不同的使用场景,mysqldump 所需要的权限也不同,一般需要这些权限, * 对于table 来说, mysqldump 少要有select 权限,和 lock tables 权限, * 对于 view 来说,mysqldump 要有 show view 权限。 * 对于 trigger 来说,mysqldump 要有trigger 权限。 对应的赋权如下, ``` mysql> grant select, trigger, show view, lock tables on destdb.* to sqldump@‘%‘; ``` ...阅读全文

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

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

混沌测试Chaos Mesh

Chaos Mesh 是社区驱动的项目,项目的迭代和演进离不开社区。开源以来,Chaos Mesh 迅速成为了混沌工程领域耀眼的开源项目之一,并且在短短的一年,在 Github 上积累了 3k+ star,吸引了 70+ 贡献者,以及吸引腾讯、小鹏汽车、Dailymotion、网易伏羲实验室、JuiceFS、APISIX、美团等在内的数十家知名用户。...阅读全文

Docker 核心原理

/ee43bb16af9947ed9e8498ad42c859318e001365043e4cda410f68b4a0d79378# cat memory.limit_in_bytes 104857600 文件驱动 Docker 中的每一个镜像都是由一系列只读的层组成的,Dockerfile 中的每一个命令都会在已有的只读层上创建一个的层。当镜像被 docker run 命令创建时就会在镜像的上层添加一个可写的层,也就是容器层,所有对于运行时容器的修改其实都是对这个容器读写层的修改。容器和镜像的区别就在于,所有的镜像都是只读的,而每一个容器其实等于镜像加上一个可读写的层,也就是同一个镜像可以对应多个容器。 这种分层的逻辑是什么呢? 这就是docker 里文件驱动的职责,负责镜像和容器的文件系统组织。 目前 docker 默认的文件驱动是 overlay2, 它是基于 Linux OverlayFS 的,下面这张图...阅读全文

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

漫画赏析: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

理解 Linux 的虚拟内存

有些矛盾。于是翻一下资料重整理一下这些知识,希望下次在用到它们时能更顺畅。转载随意,请注明来源,文章持续修订。 由来 虚拟内存 毋庸置疑,虚拟内存绝对是操作系统中重要的概念之一。我想主要是由于内存的重要”战略地位”。CPU太快,但容量小且功能单一,其他 I/O 硬件支持各种花式功能,可是相对于 CPU,它们又太慢。于是它们之间就需要一种润滑剂来作为缓冲,这就是内存大显身手的地方。 而在现代操作系统中,多任务已是标配。多任务并行,大大提升了 CPU 利用率,但却引出了多个进程对内存操作的冲突问题,虚拟内存概念的提出就是为了解决这个问题。 虚拟内存简单直观的解释 操作系统有一块物理内存(中间的部分),有两个进程(实际会更多)P1 和 P2,操作系统偷偷地分别告诉 P1 和 P2,我的整个内存...阅读全文

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

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

libgraph 的参照对象。因为 VPP 项目整体是一个非常全面的解决方案,从中剥离核心的设计框架为其它轻量级项目所用就变得很有意义。这也是 Libgraph 的产生背景。虽然它目前还是DPDK 中相对比较的 lib,但是其优秀的设计思想还是值得学习参考。 下面将首先介绍 libgraph 架构的核心概念:标量和向量包处理(scalar vs vector packet processing)以及它们之间的区别。然后再介绍 libgraph 中的核心组件,以及它们之间的联系和交互方式。后,我们将介绍 libgraph 的具体用例以及优缺点。 背景 DPDK libgraph 是一个向量包处理的框架。与传统的标量包处理模型(一系列函数负责处理一个数据包,重复直到所有数据包处理完毕)相比,向量数据包处理...阅读全文

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

Golang 面试题搜集

/algorithm/docs/search-first-unique-char.md) - [字符串之验证回文串](https://github.com/lifei6671/interview-go/blob/master/algorithm/docs/verify-palindrome.md) - [滑动窗口大值](https://github.com/lifei6671/interview-go/blob/master/algorithm/docs/sliding-window-maximum.md) - [长公共前缀](https://github.com/lifei6671/interview-go/blob/master/algorithm/docs/longest-common...阅读全文

Kubernetes调度算法浅析

在真正的生产环境中,如何合理的分配服务器资源、提高利用率、让整个集群运行的更加稳定使得 k8s-scheduler 这个角色在集群中的地位愈发重要。 kube-scheduler的预选(过滤)和精选(打分) api-server会将创建pod的请求发送给kube-scheduler,并且将pod信息记录在etcd数据库中。之后kube-scheduler会根据预选(过滤)规则,首先过滤掉一部分node节点中的pod,没有被过滤掉的pod可以看做是可以被调度的pod,之后再通过更加严格的规则给剩下的pod打分,这一步也叫作优选。打分高的pod可以看做被优先分配到pod任务。 调度流程简介 创建pod的命令被api-server的api接口接收到。api-server将pod信息存储在...阅读全文

博文 2020-12-20 11:01:10 debian.cn