InfraPub 为您找到相关结果 609

深入学习golang — channel

goroutine。同样,我们也可以通过channel将结果返回给主goroutine。 主goroutine: type Request struct { args []int resultChan chan int } request := &Request{[]int{3, 4, 5}, make(chan int)} // Send request clientRequests <- request // Wait for response. fmt.Printf("answer: %d\n", <-request.resultChan) 主goroutine将请求发给request channel,然后等result channel。子goroutine完成后,将结果写到result...阅读全文

博文 2021-01-25 12:39:17 博客园

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

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

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

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 掘金

Kafka生产问题总结以及性能优化

送下一条消息。这种情况下,如果follower没有成功备份数据,而此时leader又挂掉,则消息会丢失。 (3)acks=-1或all: 这意味着leader需要等所有备份(min.insync.replicas配置的备份个数)都成功写入日志,这种策略会保证只要有一个备份存活就不会丢失数据。这是最强的数据保证。一般除非是金融级别,或跟钱打交道的场景才会使用这种配置。当然如果min.insync.replicas配置的是1则也可能丢消息,跟acks=1情况类似。 消息消费端: 如果消费这边配置的是自动提交,万一消费的数据还没完,就自动提交offset了,但是此时你consumer直接宕机了,未完的数据丢失了,下次也消费不到了。所以消费端也要设置为手动提交; 2.1.2 消息重复消费...阅读全文

博文 2023-01-05 23:16:48 CSDN博客

[图]ARM推出全新armv9架构:预估五年内装备3000亿颗芯片

于更好的机器学习和数字信号。在安全方面,armv9 会获得 Arm Confidential Compute Architecture (CCA),在使用时屏蔽数据的访问,在硬件层面保护数据。此外,还会有一个叫做 Realms 的东西,应用程序可以在安全和非安全区域之外使用。ARM 并没有透露首款基于 armv9 的新芯片何时会发布,不过可以肯定的是还需要再等一段时间。...阅读全文

博文 2021-03-31 10:20:33 cnBeta.COM

架构师详解 Nginx 架构

立即得到结果,就去其他的请求(即为非阻塞);而客户端在此期间也无需等响应,可以去其他事情(即为异步);当 IO 返回时,就会通知此工作进程;该进程得到通知,暂时挂起当前的事务去响应客户端请求。 三. Nginx 事件驱动模型 在 Nginx 的异步非阻塞机制中,工作进程在调用 IO 后,就去其他的请求,当 IO 调用返回后,会通知该工作进程。对于这样的系统调用,主要使用 Nginx 服务器的事件驱动模型来实现。 如上图所示,Nginx 的事件驱动模型由事件收集器、事件发送器和事件器三部分基本单元组成。其中,事件收集器负责收集 worker 进程的各种 IO 请求,事件发送器负责将 IO 事件发送到事件器,而事件器负责各种事件的响应工作。 事件发送器将每个请求放入...阅读全文

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

K8S中Pod的四个阶段及状态分析

Kubernetes 中, pod 从创建到成功运行会分别于不同的阶段,每个阶段又分为不同的状态,本文将简单介绍这个环节。 在 K8S 源码中,使用了 PodPhase 这个变量定义这几个阶段信息,如下图所示: 运行中(PodRunning):该 Pod 已经绑定到了一个节点上,Pod 中所有的容器都已被创建。至少有一个容器正在运行,或者正于启动或重启状态。等中(PodPending): 创建 Pod 的请求已被 Kubernetes 系统接受,但有一个或者多个容器镜像尚未创建。可能的原因有,写数据到etcd,调度,pull镜像,启动容器这四个阶段中的任何一个阶段,pending 伴随的事件通常会有:ADDED, Modified这两个事件的产生。等时间包括调度 Pod 的时间和下...阅读全文

博文 2020-07-15 13:11:45 debian.cn

Kubernetes源码探疑:Pod IP泄露排查及解决方法

一次VPC IP。 回到UK8S CNI,我们再次分析重现案例日志。这一次有了更进一步的发现,所有kubelet传递给NETNS参数为空字符串的情形都发生在kubelet试图销毁Pod中第二个Sandbox的过程中。反之,kubelet试图销毁第二个Sandbox时,给CNI传入的NETNS参数也全部为空字符串。 到这里,思路似乎清晰了不少,所有泄露的VPC IP都是来自第二个Sandbox容器。因此,我们需要查清楚两个问题: 1. 为什么会出现第二个Sandbox容器? 2. 为什么kubelet在销毁第二个Sandbox容器时,给CNI传入了不正确的NETNS参数? 第二个Sandbox:我为何而生? 在了解的第二个Sandbox的前世今生之前,需要先交一下kubelet运行的基本原...阅读全文

kubectl 创建 Pod 背后到底发生了什么?—探寻 Kubectl 创建 Pod 的原理

中文原文:https://www.yangcs.net/posts/what-happens-when-k8s/ (杨传盛的博客) 英文原文:https://github.com/jamiehannaford/what-happens-when-k8s 想象一下,如果我想将 nginx 部署到 Kubernetes 集群,我可能会在终端中输入类似这样的命令: $ kubectl run --image=nginx --replicas=3 然后回车。几秒钟后,你就会看到三个 nginx pod 分布在所有的工作节点上。这一切就像变魔术一样,但你并不知道这一切的背后究竟发生了什么事情。 Kubernetes 的神奇之在于:它可以通过用户友好的 API 来跨基础架构的...阅读全文

博文 2022-04-18 16:18:04 CSDN

Qt 5.12 将于 11 月发布,或弃用 Alpha/Beta 标签

照”版本,并且用户缺少正确认识有关开发阶段的期望,那么用户的测试将会减少。但开发者也同意,转向更频繁的快照/测试版本可能会有好。 所以我们不妨看看到时 Qt 5.12 是如何表示测试阶段的版本号的,如果一切顺利的话,我们可以期另一个 Qt5 工具套件在圣诞节前一个月的更新。 原文: https://www.phoronix.com/ 编译:开源中国...阅读全文

Raspberry Pi 即将迎来 Vulkan 的支持

Raspberry Pi,官方不久前才宣布 Raspberry Pi 4 符合 OpenGL ES 3.1——它是一个 API 规范,允许开发人员使用图形硬件或 GPU。 Raspberry Pi 基金会联合创始人 Ebert Upton 在上个月发布了 Raspberry Pi 4 Model B 的 OpenGL ES 3.1 里程碑,它具有 Broadcom BCM2711,四核 Cortex-A72 器和 Broadcom VideoCore VI GPU。 Raspberry Pi 设备的图形里程碑是使用 Raspberry Pi 4 的 VideoCore VI GPU 渲染 RGB 三角形。Upton 提到,在 Raspberry Pi Model B 4 上使用此 GPU 已经实现了第一...阅读全文

开源团队协作 TMS 发布新版本 v2.10.0

TMS 是一个用 Java 语言开发的,类似 Slack、Barrychat 的团队协作沟通Web平台,同时也是一个支持博文wiki撰写,国际化翻译管的 Web管系统。近期,TMS 发布了新版本 v2.10.0。 新功能: #IHIS4: 博文最近编辑文章列表,方便找到最近编辑创建的文章, 办事项管(让繁多的办事项有条不紊的备忘记录,然后逐步攻破,减少记忆负担,提高工作利率不是一丢丢) 频道组(聊天频道支持创建分组,方便一次性 @多人 ,减少@具体用户的数次(爽的不要不要的) 优化改进: #II5PA: 游客可见博文 分享链接 复制分享 博文过滤查找清除过滤条件,输入框获取输入焦点 #II9N9: 沟通频道,按标签检索过滤 #IINTK: 沟通内容页面当 window...阅读全文

博文 2018-05-01 23:03:20 debian.cn

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

孤立地看问题。这表明,你要对项目各个部分如何与其他人协作交互有比较深入的解。让你的补丁填坑而不是挖坑。这样你朝成为社区精英的目标上又前进了一大步。 粗枝大叶,自寻烦恼 代码提交完毕后你的工作还没结束。如果代码被接受,还会有一些关于这些更改的讨论和常见的问答,还要做测试。你要确保你可以准时提交,努力去解如何在不影响社区其他成员的情况下,改进代码和补丁。 和谐相,助人助己 开源社区不是自相残杀的丛林世界,我们更看重项目的价值而非个体的贡献和成功。如果你想给自己加分,让自己成为更重要的社区成员、让社区接纳你的代码,那就努力帮助别人。如果你熟悉网络部分,那就去复审网络部分,用你的专业技能让整个代码更加优雅。道很简单,顶级的审查者经常和顶级的贡献者打交道。你帮助的人越多,你就越有价值。 八面...阅读全文

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

SVN切换分支用法汇总

path:"中输入目标分支的远程地址,例如http://localhost/branches/develop/。Step 3:单击“OK”按钮,等操作完成即可。四、SVN切换分支常见问题在使用SVN进行分支切换的过程中,可能会遇到一些常见的问题。为了方便大家解决这些问题,下面列举了一些经常遇到的问题及其解决方法:1. SVN switch的URL地址错误在使用SVN switch命令进行分支切换时,如果URL地址有误,可能会导致切换分支失败。此时,可以按照以下步骤进行:Step 1:检查URL是否正确;Step 2:确认URL地址是否可以访问。2. 更新操作失败在进行分支切换的过程中,可能会遇到更新操作失败的问题。这时,我们可以使用以下方法来解决这个问题:Step 1:检查网络连接是否正...阅读全文

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

AMD Ryzen 7 2700X/5 2600跑分曝光 性能提升明显

AMD即将推出第二代Ryzen 2000系列器,各方面全面提升,从最近泄露的规格和性能看十分值得期。Ryzen二代基于12nm新工艺和Zen+新架构,频率平均提升400MHz,并支持更高级的动态加速技术,超频空间也更大,同时改进了缓存、内存性能。 权威评测软件SiSoftware不小心泄露了一份Ryzen 7 2700X、Ryzen 5 2600的评测报告,虽然很快被撤下还是有网友保留了下来。这份评测都是考察SiSoftware的论性能项目,没有实际应用和游戏测试,但是Ryzen二代的架构提升已经十分明显。 首先来看一下这两款新品的主要规格和 SiSoftware 的评价: 内存频率: 2400MHz提高到2933MHz,可以大大改进内存性能,就是现在高频内存太贵了。 核心线程...阅读全文

博文 2018-03-21 08:47:43 debian.cn

不与版本帝争,16 年后 SciPy 1.0 版终发布

SciPy 是一个开源的 Python 算法库和数学工具包。SciPy 包含的模块有最优化、线性代数、积分、插值、特殊函数、快速傅里叶变换、信号和图像、常微分方程求解和其他科学与工程中常用的计算。 10月25日,SciPy 团队成员 Ralf Gommers 在 Python 官方邮件组发文宣布 SciPy 1.0 终于发布了。 Ralf 称,很高兴宣布 SciPy 1.0 的发布,自从 0.1 版面世 16 年后,1.0 版姗姗来迟。这是一次漫长而富有成效的旅程,期在未来有更多令人激动的特性。 为什么现在才发布 1.0 版呢? Ralf 认为版本号应当体现出项目的成熟程度,SciPy 是一个成熟且稳定的库,已经在生产环境长期大量使用很久了。从这个角度来说,1.0 版来晚了。 最...阅读全文

博文 2017-10-26 13:54:33 debian.cn

Linux内存buffer和cache的区别

在Linux的内存分配机制中,优先使用物内存,当物内存还有空闲时(还够用),不会释放其占用内存,就算占用内存的程序已经被关闭了,该程序所占用的内存用来做缓存使用,对于开启过的程序、或是读取刚存取过得数据会比较快。 一. 内存使用说明 Free 命令相对于top 提供了更简洁的查看系统内存使用情况: [root@debian ~]$ free total used free shared buffers cached Mem: 1035108 1008984 26124 0 124212 413000 -/+ buffers/cache: 471772 563336 Swap: 2096472 842320 1254152 这里显示的单位是KB。 在Linux的内存分配机制中,优先使用物...阅读全文

Wine 3.0发布:支持Android图形驱动、Direct3D 11、AES加密

2018 年伊始,Wine(Wine Is Not an Emulator) 项目发布了年度更新,释出了最新的 3.0 稳定版本。 Wine 是一个在 Linux 和 Unix 类操作系统上运行 Windows 应用及游戏的开源兼容层。 经过近一年的开发,Wine 3.0 发布了许多神奇的功能,如 Android 图形驱动可以使用户在基于 Android 的机器上运行 Windows 应用和游戏,对 AMD Radeon 和 Intel GPU 默认启用 Direct3D 11 支持,在 macOS 上支持 AES 加密支持,程序管器的 DDE 支持以及任务调度器。 此外,Wine 3.0 通过 reg.exe 引入了输出注册表项的功能,对中继调试和 OLE 数据缓存增加了各种增强,以及...阅读全文

博文 2018-01-23 11:22:34 debian.cn

AMD Zen之父跳槽Intel:推进10nm工艺

Jim Keller堪称微器行业的传奇人物,多年来转战AMD、苹果、特斯拉,设计了众多优秀的CPU架构,尤其是K7/K8、Zen架构两度帮助AMD崛起,苹果A4/A5也是他的大手笔。今年早些时候,Jim Keller加盟了Intel,虽然肯定还是从事高性能CPU方面的工作,但具体职责一直未对外公布。他本人接受采访时对此也是避而不谈。 根据外媒最新挖掘到的内部消息,Jim Keller目前在Intel的主要工作并不是全力研究全新的x86 CPU架构,而是开发14nm、10nm工艺产品,并与晶圆厂合作推进两种新工艺。 我们知道,Intel 10nm工艺已经迟到了两年多,而且还需要继续等,目前看最乐观的情况也是2019年底开始问世,2020年逐渐普及,而相比之下台积电、三星...阅读全文

博文 2018-08-11 18:15:33 debian.cn

Debian 10 Buster 正式版即将发布

Debian 10 Buster 即将发布。第一个发布候选版已经发布,我们预期可以在接下来几周内,会见到最终版。如果你期对 Debian 10 Buster 的新版本有所期,那么让我告诉你这个版本里面会有什么。 Debian 10 Buster 发布计划 Debian 10 Buster 的发布日期并没有确定。为什么这样呢?不像其他分发版,Debian 并不基于时间发布。相反地它主要关注于修复 release-critical bug。发布版重要 Bug 要么是严重的安全问题(CVE),要么是一些其他阻止 Debian 发布的严重问题。 Debian 在它的软件归档中分为三个部分,叫做 main、contrib 和 non-free。在这三者之中,Debian 开发者和发布管者最关心...阅读全文

博文 2019-04-29 11:04:15 debian.cn

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

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...阅读全文

Spinnaker 介绍 – Netflix 的持续交付平台

个例子可以说明两者的关系:Netflix 内部有人不用 Spinnaker 的 pipeline,而只是将 Spinnaker 看为一个部署工具,直接在 jenkins 中调用它的 API 来部署服务。 逻辑架构 Spinnaker 自己是一个微服务架构,由若干组件组成,所有组件都开源在github上,整个逻辑架构如下图所示: Deck:AngularJS 写的 WebUI。Gate:提供 API 接口给外部程序,Deck 也是其中之一,Spinnaker 的大门。Cloud Driver:对接各种云服务提供商,比如AWS, GCP, Azure 等。她负责所有对这些云服务的读写操作。Orca : pipeline 和任务编排,比如创建一个虚拟机,等它创建完成,然后执行其他操作...阅读全文

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

三位候选人正进行 2022 Debian 项目负责人选举

2022 Debian 项目负责人选举已开启,本次选举的流程和以往一样,有三位候选人:Felix Lechner、Hideki Yamane 和现任 Debian 负责人 Jonathan Carter ,三人分别以一个页面进行自我介绍,并等社区开发者为其进行不记名投票。​下面来介绍一下三位候选人。Felix Lechner同时受新时代思想以及古老宗教的启发,拥有扎实的论基础,试图让 Debian 重新焕发活力。现担任美国加州的图书馆馆长(公务员),妻子来自中国,最好的朋友来自印度。Debian 贡献Debian 商标团队的一员,努力保护 Debian 的品牌;设计了 Debian 的密钥到期提醒功能;共同维护 了 Lintian (Debian 软件包追踪工具)及其网站;维护...阅读全文

Apache Flink 1.14 新特性预览 - OSCHINA

依靠 Checkpoint 机制,进行二阶段提交,从而保证数据的 Exactly-once 一致性。 具体可以这样说:在 Checkpoint 过程中,每个算子只会进行准备提交的操作。比如数据会提交到外部的临时存储目录下,所有任务都完成这次 Checkpoint 后会收到一个信号,之后才会执行正式的 commit,把所有分布式的临时文件一次性以事务的方式提交到外部系统。 这种算法在当前有限流的情况下,作业结束后并不能保证有 Checkpoint,那么最后一部分数据如何提交? 在 1.14 中,这个问题得到了解决。Task 完所有数据之后,必须等 Checkpoint 完成后才可以正式的退出,这是流批一体方面针对有限流任务结束的一些改进。 三、checkpoint 机制 1. 现有...阅读全文

博文 2021-09-05 07:26:58 中文开源技术交流社区

打破IP协议重塑互联网 华为能做到吗

制化的网络;二是目前的 TCP/IP 协议和框架对 ManyNets(包括 IoT 网络、卫星网络等) 互连有限制且具有复杂性。 当下,全息通信满足了人们对交互式的通信体验的需求,从而也需要更高的带宽、更低的延迟、更灵活的网络,而满足这些传感应用需求,需要更细度的网络服务能力。 由于现有 IP 不相兼容的寻址机制,IoT 网络、蜂窝网络、工业网络等网络之间的互连受到了限制。而后引进的多种映射机制不仅给系统带来了额外的复杂性,也带来了潜在的隐私和弹性问题。 由此,需要一个更好的解决方案来所有类型或虚拟对象的交付和通信,New IP 应运而生。 文章指出,New IP 主要有三个关键特征: 可变 IP 地址长度,无缝支持跨网络通信;用于标识物和虚拟对象的 IP 地址的语义定义;用户定义...阅读全文

博文 2020-03-31 06:40:15 debian.cn

Debian GNU/Linux 9 “Stretch” 将于2017年初发布

2016 年 11 月 5 日,Debian 发布经 Emilio Pozuelo Monfort 和 Niels Thykier 高兴地宣布 Debian GNU/Linux 9 "Stretch" 操作系统进入冻结开发阶段。 在一个开发周期中,GNU/Linux 有多个里程碑,如 Alpha、Beta、RC、Beta Freeze、Feature Freeze,等等, Debian GNU/Linux 9 "Stretch" 即 Debian OS 的下一个重大发布,此版本已经是功能完善的版本。 "这意味着不再有新的库或包的大变化。不过之后几天还会有小的改变,我们尽量使其工作更流畅,所以请耐心等最后的调整。"通知中写道。 按 Debian 开发周期,下一步是 2017 年 1 月...阅读全文

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

开源软件对于商业机构的6大好处

持周期,以避免更新混乱的出现。 2、有利于产品的长期发展 福布斯杂志指出,90%的初创公司最后都会失败,而他们当中,只有不到一半的中小型公司存活期能超过5年。如果在产品开发的中途突然出现需要更换供应商的问题,那迁移的成本就很高了。所以,要避免选择只有一个供应商支持的产品。 而开源使得社区成员能够协同编写软件。如 OpenStack 就是由多个公司及个体志愿者共同编写的。这么做,就能保证,在一个供应商出现问题的情况下,其他供应商能继续支持。而且,软件一经开源,企业就会长期投入开发团队以实现产品开发。使用源代码的好就是,你可以聘用贡献者来保证开发的活跃性。 3、更安全 以开源的方式进行开发,可以很直观地看到,供应商是如何对安全问题,以及是否在积极保证产品安全。研究源代码并执行独立代码审核,也...阅读全文

博文 2017-11-15 23:41:11 debian.cn

俄罗斯逮捕了一名 Debian 开发者

Debian 项目发表新闻稿,对一名活跃开发者遭俄罗斯当局逮捕表达了关切。Dmitry Bogatov 是一名数学教师和活跃 Debian 贡献者,他在 Debian Haskell 组工作,维护了多个软件包。 Debian 表示,他们正在等更多有关此案的细节,希望程序正当,Bogatov 能得到公平对。 出于安全方面的考虑,Debian 项目宣布移除 Bogatov 持有的密钥,Debian 项目将全力支持他及其家人。...阅读全文

Focalboard :一款开源、本地存储、免费的类 Notion 应用

源、本地、免费、加密的在线文档应用成为这些用户的期。然而,在关注一年多后,Anytype 的官方内测依然在小规模进行,还没有进入 Beta 阶段。Anytype Anytype还有更多的选择吗?在互联网遨游过程中,我发现了 Focalboard——一款免费、开源的类 Notion 应用。Focalboard 看板视图FocalboardFocalboard 的自我定位是“Trello、Notion 和 Asana 的开源、自托管替代品”。产品定位:Focalboard 本质上属于项目管工具,主要帮助个人和团队对任务进行组织、跟踪和管。外观和操作方式:Focalboard 提供了类似 Notion 的列表视图、看板视图、Gallery 视图,没有 Notion 的时间轴等视图。编辑方式...阅读全文

博文 2021-09-16 19:50:29 少数派

“Debian 章程有毒” - OSCHINA

the light of Joey's resignation, as I'm sure many of us have been. Joey 的离职让我不住去想 Debian 的管出了什么问题,我相信我们其中许多人也一样。 当时,Russ 已经在 Debian 技术委员会里了6个年头,但他没能熬过2014年那场论战。他表示,委员会几乎每一个决策都受到巨大的压力,他感到没有精力来这些事情,他也觉得自己在技术委员会的工作对整个项目没什么帮助。 2019年,Debian 开发者 Michael Stapelberg 在离职 Debian 时留下一篇长文,里面细数了 Debian 内部的各种问题,引起各方热议。 在写下这篇文章的几个星期前,Michael 在苏黎世 Debian 聚会上遇见了一...阅读全文

博文 2021-12-06 13:55:33 中文开源技术交流社区

使用 Go 语言的三个原因

几个星期前,我一个朋友问我:“为什么要关心 Go 语言”? 因为他们知道我热衷于 Go 语言,但他们想知道为什么我认为 其他人 也应该关心。本文包含三个我认为 Go 是重要的编程语言的原因。 安全 个人而言,你和我或许完全有能力在 C 中编写程序,既不会泄漏内存,也不会不安全地重复使用内存。然而,整体上,即使有超过40年的经验,用 C 的程序员也无法可靠地这样做。 尽管静态代码分析、valgrind、tsan 以及 “-Werror” 已经存在了几十年,却很少有证据表明这些工具被广泛认可,更不用说广泛采用。总而言之,事实表明,程序员根本无法安全地管自己的内存。现在是离开 C 的时候了。 Go 不需要程序员直接管内存,所有内存分配都由语言运行时自行管,使用前初始化,必要时检查边界。它肯...阅读全文

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

粘合万种芯片的“万能胶” 是摩尔定律的续命丹吗? - 硬件

将芯片连接起来而形成的模型,在业内被称Chiplet(可译为芯粒、小芯片)模型。多年以来,AMD、英特尔、台积电、Marvell等芯片公司已经推出了一些类似于小芯片的设计,例如,英特尔采用了称之为Foveros的小芯片方法,推出了3D封装的CPU平台,该封装方式将1个10nm的器内核和4个22nm的器内核封装集成在一起;台积电也正在开发一种被称为集成芯片系统(SoIC)的技术。在这些技术中,裸片对裸片的互连至关重要,即需要将一个裸片与另一个裸片"黏合"在一起,每个裸片都包含一个带有物接口的IP模块,公共接口能够让两个裸片形成互连。在Chiplet初期的探索中,许多公司开发了具有专有接口的互连,实现自家芯片模型间的互连。由于Chiplet的最终目标是在内部或多个芯片供应商中获得优质且...阅读全文

博文 2022-04-08 07:35:46 cnBeta.COM

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

了。 Port 21 而在最右侧的一个门牌号 22 的们的遇就大为不同,居然有一只带着墨镜的小企鹅在守着,看起来好酷啊,它是黑衣人叔叔吗?为什么要这么酷的一个企鹅呢,因为 22 端口是 SSH 端口,是一个非常重要的远程连接端口,通常通过这个端口进行远程管,所以对这个端口进来的人要仔细审查。 ssh daemon 它的身上写着 52,说明它是第 52 个小企鹅。 to fs 在图片的左上角,有一个向下台阶。这个台阶是底层(地基)的文件系统中的,进程们可以通过这个台阶,到文件系统中去读取文件,进行操作。 Crontab 在这一层中,有一个身上写着 217 的小企鹅,他正满头大汗地看着自己的手表。这只小企鹅就是定时任务(Crontab),他会时刻关注时间,查看是否要去做某个工作...阅读全文

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

Terraform 学习总结 — Terraform 简介

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

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

OCBC 简介OCBC 全称是新加坡华侨银行,是新加坡第二大银行。曾连续多年被评为“全球最安全银行”前三名,本文会介绍一下 OCBC 的开户条件、流程、手续费等。下面是开户流程。拿不准的可以加我 TG @algo6,可以免费咨询境外银行开户、港美股开户等问题。所需材料:有效期大于6个月的护照,不是需要办后满6个月。有NFC功能的手机 (扫描护照内置芯片使用)有效期内的身份证(需要拍摄身份证正面)大陆地区的手机号码(接收验证码使用)半年内充值超过 1000 SGD 用于激活账户(顺便领取现金奖励)1. APP 下载安卓有条件的可以使用 Google Play 搜索 OCBC,下载 OCBC Digital - Mobile。iOS 直接商店搜索。没有谷歌 Play 的可以试试 华为商店,或...阅读全文

西部数据的Zonefs将登陆Linux 5.6内核

西部数据开发了有一段时间的Zonefs已经确定要在Linux 5.6内核中登场了,这并不是一个传统意义上面的通用文件系统(比如Ext4、NTFS),而是一个针对特定硬件设备的文件系统,它为分区式存储设备进行了高度的优化。 熟悉Linux的朋友应该知道,在Linux下面内核会将存储设备视为块设备,比如目前会将SATA存储设备视为/dev/sdX。传统文件系统是在这个块设备上面进行操作,而应用程序则是通过系统提供的接口对块设备上面的数据进行访问。 但SMR HDD(叠瓦式硬盘)有一个毛病,它只有在顺序写入时才能正常发挥性能,一旦要进行数据覆盖写入,就需要改写这块数据所在区块内的所有磁道,造成严重的性能下降。传统的文件系统不会因为SMR HDD的特性而特别对它,而Zonefs就是西部数据对...阅读全文

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

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

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

遍历,O(n)的轮询时间复杂度。 poll模型 考虑到select模型的几个限制,后来进行了改进,这也就是poll模型,既然是select模型的改进版,那么肯定有其亮眼的地方,一起来看看吧。当然,这次我们依旧是先翻阅linux man二类文档,因为这是官方的文档,对其有着最为精准的定义。 int poll(struct pollfd *fds, nfds_t nfds, int timeout); 其实,从运行机制上说来,poll所做的功能和select是基本上一样的,都是等并检测一组文件描述符就绪,然后在进行后续的IO工作。只不过不同的是,select中,采用的是bitmap结构,长度限定在1024位的文件描述符表,而poll模型则采用的是pollfd结构的数组fds,也正是由于...阅读全文

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

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

通信网络和服务提供者为了确保网络和信息安全、提高信息系统抵抗能力、规避意外事件而进行紧急个人数据。 6.2 CCPA关于被遗忘权的规定——原则与例外 与GDPR一样,CCPA也赋予了数据主体“被遗忘权”,但不同的是,CCPA对于被遗忘权的执行设置了更为确定的例外情形,具体包括: 该信息对于完成数据主体请求的交易,或对于履行协议来说是必要的;该信息对于侦察安全事件来说是必要的;该信息对于防止欺诈、欺骗或不法行为来说是必要的;该信息对于鉴定或修复错误来说是必要的;该信息对于促进言论自由来说是必要的;该信息对于公共利益的科学性、历史性或统计性的研究来说是必要的;如果该信息对某个公司的内部使用(且该使用被消费者合地期)来说是必要的;该信息以与搜集目的相匹配的形式被内部利用; 6.3 小结...阅读全文

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

无意触怒任何为Debian做出了贡献的人,我只是想表达我对Debian太过于失望而决定放手的原因。 到目前为止,Debian出现在我的生命中已经超过10年了。 几个星期前,我在苏黎世Debian聚会上遇见了一些多年未见的老朋友。在骑自行车回家的路上,我突然发现我们讨论的主题与我们上次的讨论大致相同。出于对开源社区的尊敬,我们绕了个圈子先探讨了systemd的好,然后回到了Debian的讨论,最后兴致所至还谈到了Debian的民主以及他们在论和实践上的失败。诚然,最后一个话题有点像瑞士。 我说这些不是对Debian聚会有异议,而是因为通过这次聚会我开始反思最近对Debian的感觉,还有它是否适合我。 最终,我做出了一个本应在很久以前就已经做出的决定:我会将有关Debian的工作减到最少...阅读全文

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

树莓派64位系统Debian 9先行测评:性能最高提升30倍

采用64位器的树莓派3B,虽然具有64位硬件,但是系统还没有跟上节奏。官方尚未正式发布64位Raspbian,近期有团队移植了Debian 9 arm64到树莓派3B,将“装死”一年多的树莓派3B的性能完全释放出来,测试跑下来发现CPU性能最高比32位系统高30倍! 本文将介绍如何进行对比跑分测试。 硬件测试环境: RaspberryPi 3 Model B 16GB Class 10 TF卡 5v2.5A电源 以太网网线及能连外网路由设备 软件测试环境: GEEEKPI-64bit-beta(内核移植版,操作系统是基于Debian 9的arm64位源码,Debian 9目前还没发布,目前属于beta版,RaspberryPi 官方也没有发布64bit操作系统的计划,但是我们迫切需要...阅读全文

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

提问的智慧(精简版)

骤,以及机器和软件的反应,直到问题发生。在命令行的情况下,提供一段操作记录(例如运行脚本工具所生成的),并引用相关的若干行(如 20 行)记录会非常有帮助。如果程序有诊断选项(如 -v --verbose --debug LOG_LEVEL=DEBUG 的详情指令),试着选择这些能在记录中增加调试信息的选项。记住,多不等于好。试着选取适当的调试级别以便提供有用的信息而不是让读者淹没在垃圾中。如果你的说明很长,在开头简述问题,接下来再按时间顺序详述会有所帮助。描述目标而不是过程如果你想弄清楚如何做某事(而不是报告一个 Bug),在开头就描述你的目标,然后才陈述重现你所卡住的特定步骤。😒 BAD | 我怎样才能从某绘图程序的颜色选择器中取得十六进制的 RGB 值?😊 GOOD| 我正试着...阅读全文

博文 2023-10-07 15:02:42 infras

图解 Debian 系统通用安装教程

登录,进入后输入一下命令即可完成桌面环境的启动。 startx 这下就能看见桌面环境了,剩下的就不用多说了。 如果出现中文乱码,以root权限进入xfce终端或在命令行界面输入以下命令: dpkg-reconfigure locales 方向键上下选择,Page Up/Down可以翻页,空格键选中。 将开头为zh_CN的几个全部选中,按回车键保存,选择zh_CN.UTF-8为默认locale,等完成后重新启动系统即可解决乱码问题。 最后,在你晚上睡觉前还有个事情,那就是执行下面的命令。 apt-get update apt-get upgrade 之后关闭显示器电源,让系统自动更新去吧,所谓的快速安装就是把安装过程中的系统更新放到了最后,仅此而已。 这种安装方法有个不足之,就是每次启动后...阅读全文

博文 2017-07-13 12:52:56 debian.cn

AMD Zen架构双路处理器曝光 很强大

2017年AMD要杀回高性能器市场了,明年Q1季度首发8核16线程的桌面版Zen器,接着还有32核64线程的Naples(那不勒斯)服务器版器,CPU核心数比Intel目前下一代Xeon E的28核56线程还要多。 此前我们对桌面版Zen器有所了解,但服务器版Naples器还很神秘,上周末有网友曝光了AMD Naples器真身,不过这个是16核心的,双路器用的,CPU插槽也不是AM4,而是Intel一样的LGA。 爆料的图片来自Reddit用户GumGum9000,图片相当清晰,不过他没有具体说明该器的资料,只说是16核Naples器。这有点让人迷惑,因为AMD官方早前曝光的Naples器都是32核64线程的,尚未听说过有16核的,但考虑到服务器市场...阅读全文

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

Debian Live 项目的剧变

一个一直不为人所知的计划。从 Banumann 的角度来说,他当然不是完美的,他因为上传个不合适的 syslinux 包导致了 wheezy 的延迟发布,并且从那以后他被从 Debian 开发者暂时降级为 Debian 维护者。但是这不意味着他应该受到这种对。当然,这个项目还有其他人参与,所以不仅仅是 Baumann 受到了影响。 Ben Armstrong 是其他参与者中的一位,在这个事件中,他很圆滑地了一些事,并且想从这个事件中全身而退。他从一封邮件13开始,这个邮件是为了庆祝这个项目,以及他和他的团队在过去几年取得的成果。正如他所说, Debian Live 的下游项目列表是很令人振奋的。在另一封邮件中,他也指出了这个项目不是没有生命力的: 如果 Debian CD 开发团队通过...阅读全文

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

HTTP状态码详解

择。但是,规范中并没有定义任何作出此类自动选择的标准。 407 与401响应类似,只不过客户端必须在代服务器上进行身份验证。代服务器必须返回一个 Proxy-Authenticate 用以进行身份询问。客户端可以返回一个 Proxy-Authorization 信息头用以验证。参见RFC 2617。 408 请求超时。客户端没有在服务器预备等的时间内完成一个请求的发送。客户端可以随时再次提交这一请求而无需进行任何更改。 409 由于和被请求的资源的当前状态之间存在冲突,请求无法完成。这个代码只允许用在这样的情况下才能被使用:用户被认为能够解决冲突,并且会重新提交新的请求。该响应应当包含足够的信息以便用户发现冲突的源头。 冲突通常发生于对 PUT 请求的中。例如,在采用版本检查的环境...阅读全文

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

处理器架构消亡史

今年,根据外媒报道显示,MIPS Technologies正在转变其商业模式,即该公司将不再设计 MIPS 芯片,而将开发基于 RISC-V 架构的器。发生在MIPS Technologies身上的变化,或许也预示着又一个器架构正在逐渐向命运低头。同样,作为最具有历史的器架构之一,MIPS见证了很多其他器架构的发生变化——他看着X86称霸PC市场,Arm在移动市场崛起,RISC—V又作为新星受到新兴市场的青睐;但同样他也看着SPARC,Alpha,PA-RISC和其他一些架构逐渐走向消亡。璀璨的二十世纪八十年代上个世纪八十年代,互联网已现雏形,PC受到了企业级市场的认可。在这个期间,IBM开始打算用开放生态与产业合作的方式完成PC生产。于是,英特尔借此机会成长了起来,由此也...阅读全文