InfraPub 为您找到相关结果 579

开源社区纠纷不断:20 年的 Debian 开发者被排挤出项目

将逐渐减少参与 Debian 的维护和相关活动,并解释这样做的原因。Stapelberg 表示他在 Debian 上投入了十年以上的时间,但在此过程中,Stapelberg 也逐渐发现并认识到了 Debian 在许多方的不足。他发现 Debian 整个开发评估流程都非常迟钝。举例来说,补丁的评估没有截至日期,有时候他会收到通知说几年前递交的补丁现在合并了。而且 Debian 的一些维护者出于个人喜好拒绝合作,维护者给予的个人自由度太高对 Debian 构成了严重影响。Debian bug 跟踪器 debbugs 源自 1994 年,只有 Debian 和 GNU 项目使用。Stapelberg 抱怨了 Debian 糟糕的开发流程,对此感到十分不满,为此,他撰写了长文,并希望自己的文章能激...阅读全文

Linux 中使用 Fio 测评硬盘性能

apt-get install git 现在,我们切换到 /opt 目录,并从 Github 上克隆仓库: cd /opt git clone https://github.com/axboe/fio 现在,我们通过在 /opt 目录下切换到 Fio 的源代码目录,执行编译和安装操作了,命令如下: # cd /opt/fio # ./configure # make # make install 使用 Fio 进行磁盘性能测试 现在 Fio 已经安装到了你的系统中,我们一起看看如何使用 Fio 做磁盘的随机写、读和读写测试。 随机写测试 执行下的命令来开始。这个命令将要同一时间执行两个进程,写入共计 4GB( 4 个任务 x 512MB = 2GB) 文件: sudo fio --name...阅读全文

博文 2018-08-15 19:18:24 debian.cn

Systemd 及 Service 文件含义解析

/etc/systemd/system/ 目录中的单元文件的优先级总是高于 /usr/lib/systemd/system/ 目录中的同名单元文件。注意,当/usr/lib/ 中的单元文件因软件包升级变更时,/etc/ 中自定义的单元文件不会同步更新。此外,你还得执行 systemctl reenable ,手动重新启用该单元。因此,建议使用前一种利用 *.conf 的方法。 可以使用 journalctl 来查看 systemd 管理服务的启动日志: ``` journalctl -b -0 # 显示本次启动的信息 journalctl -b -1 # 显示上次启动的信息 ``` 参考阅读 ArchLinux 的 Systemd (简体中文) 文档:https...阅读全文

博文 2021-02-17 10:02:50 joseph

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

slice 的扩容条件是 len,在最新的代码中,已经改为了以 cap 属性作为基准: // src/runtime/slice.go if cap > doublecap { newcap = cap } else { // 这是以前的代码:if old.len < 1024 { // 下是 Go1.16rc1 的代码 if old.cap < 1024 { newcap = doublecap } 以官方的 test case 为例: func main() { const N = 1024 var a [N]int x := cap(append(a[:N-1:N], 9, 9)) y := cap(append(a[:N:N], 9)) println(cap(x), cap(y...阅读全文

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

亚马逊12个月免费云服务

热线、在线聊天支持。作为全球云服务的龙头企业,亚马逊云计算拥有最广泛的全球云计算基础设施,全球节点丰富,为网站的快速稳定访问提供基础设施保障。配合亚马逊全球CDN节点,能满足不同国家独立站访问速度需求。1.什么是云服务器?云计算服务器(也称云服务器或云主机)是云计算服务系统中的主机产品,有效解决了传统物理主机中管理难度大、业务扩展性弱的缺陷。在实际应用中,云主机具有三个方的灵活性:主机服务配置和业务规模可根据用户需求配置,可灵活调整。用户申请的主机服务可以快速供应和部署(实时在线开通),实现集群内灵活可扩展的收费模式,用户无需支付押金,有多种支付模式供用户选择。2.云服务器适合什么样的用户?关注主机服务性价比的用户;需要快速实现分布式部署的用户;需要灵活扩展业务的用户;对系统高可用性和快速...阅读全文

2017 热门开源自动化测试框架优缺点对比

于断言的语法。 缺点: 多数情况下,它需要一个测试运行器(如 Karma )。 难以异步测试。 如果你正在寻找一个统一的(客户端 - 服务器)单元测试解决方案,Jasmin 可能会非常适合。 7. Mocha Mocha 是一个 JavaScript 单元测试框架,它在 NodeJs 上运行测试,主要与 ReactJS 配对使用。 优点: 内置测试运行器。 支持异步测试。 使用灵活,可使用任何符合需求的断言库(Chai、expect.js、Must.js 等)作为 Node 标准“断言” 功能的替代品。 缺点: 相对较新 (起始于 2012 年),意味着有许多的未知性和可变性,在某些方或缺乏用户基础和支持。 仅提供基本的测试结构,因此需要额外的设置和配置(对于一些可能是有利的)。 如果你正...阅读全文

博文 2017-11-15 08:52:47 debian.cn

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

(canary)和分阶段(phased)推出部署(rollout);本地持久卷(Local Persistent Volume)。当前以Alpha版发布,允许用户通过标准的PersistentVolumeClaims/PersistentVolume接口及StatefulSets中的StorageClasses访问本地存储卷;DaemonSets。该特性用于确保给定的Pod对每个节点准确地执行和运行一次,现已添加了rollback和history功能;新提供的StorageOS Volume插件,它可在本地的或附加的节点存储上提供在整个集群范围内高可用的持久卷。 在可扩展性方,1.7中以Beta版的形式添加了API聚合层,允许用户在他们的集群中添加Kubernetes风格的预先构建的、用户定义的或是第...阅读全文

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

Dubbo 2.7.0发布 分布式RPC服务框架

Dubbo 2.7.0 发布。Dubbo 是阿里巴巴公司开源的一个高性能优秀的服务框架,使得应用可通过高性能的 RPC 实现服务的输出和输入功能,可以和 Spring 框架无缝集成。 据开源中国对 Dubbo 的项目负责人北纬的采访 Dubbo 重启维护一年多,现在还活着吗?,新版本的更新亮点有: Dubbo 2.7.0 添加了社区呼声很高的 异步化支持 、以及 注册中心与配置中心分离 这两个特性。与 2.6 及以前的版本相比, 异步化支持 不再局限于基于 Future 接口的异步,也不再仅仅局限于只能在客户端异步。具体来说,Dubbo 2.7.0 版本全拥抱 JDK8,在客户端开始支持基于 CompletableFuture 的异步编程范式,在服务端支持基于 AsyncContext...阅读全文

博文 2019-01-18 09:43:16 debian.cn

7 个月猛涨 12 亿美元,开源技术服务商成北欧最新独角兽 - OSCHINA

发行价定为 77 美元,首日交易结束后,收盘价为 103.89 美元,上涨 35%,其市值在收盘时已接近 150 亿美元。 GitLab 提供了免费和付费的版本,主要通过其订阅产品盈利。根据 GitLab 最新的订阅价格,付费购买有两个方案,分别... 24 4 微软推送 Windows 11 更新,修复 AMD CPU 性能问题 微软已于近日在 Beta 和 Release Preview Channels 中向 Windows Insiders 发布了 Windows 11 Build 22000.282。此次更新包含了大量的修复程序,其中一项就是针对此前提到的 Windows 11 导致某些 AMD 芯片性能下降问题的修复。 AMD 和微软都曾确认,兼容的 AMD 处理器在运行...阅读全文

博文 2021-10-21 20:04:43 中文开源技术交流社区

兼容 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 安装指南在远程服务器上安装...阅读全文

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

/proc/sys/net/core/rmem_max 131071 131071:tcp 或 udp 接收缓冲区最大可设置值的一半。 也就是说调用 setsockopt(s, SOL_SOCKET, SO_RCVBUF, &rcv_size, &optlen); 时rcv_size 如果超过 131071,那么 getsockopt(s, SOL_SOCKET, SO_RCVBUF, &rcv_size, &optlen); 去到的值就等于 131071 * 2 = 262142 [root@ www.linuxidc.com]# cat /proc/sys/net/core/wmem_max 131071 131071:tcp 或 udp 发送缓冲区最大可设置值得一半。 跟上同一个道理 3...阅读全文

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

Facebook 是如何进行大规模代码部署的

布。这种分离带来了挑战,包括维护向下兼容性。 由于工具和部署选项的性质,移动持续部署临着一些特定的挑战。Web 部署则更为容易,因为 Facebook 拥有完整的技术栈和工具。为了解决这些挑战,Facebook 已经构建了一些专注于更快的移动开发的工具和库,包括 Buck 、Phabricator、 Infer、 React 以及 Nuclide 。Facebook 的移动部署是以三层来并发运行。 • 构建:合并到移动主分支上的所有代码都会进行构建,这会针对受影响的所有产品(Instagram、Messenger)并且会跨各种芯片架构。 • 静态代码分析:Linters 和静态分析工具的组合,称为 Infer ,用于检查各种问题,包括资源泄漏、未使用的变量、有风险的系统调用和编码准则违规...阅读全文

博文 2017-10-31 14:05:20 debian.cn

JDK 11 版本时间表公布

。 依赖 RMI-IIOP、javax.activity 包或 CORBA API 的 CORBA 应用程序将无法通过编译或运行。 红帽首席软件工程师 Aleksey Shipilëv 最近发推文说,由于 JAXB 模块被 JEP-320 移除,因此 SPECjbb2015 基准测试在 Java 10+上出现了问题。建议加入 JAXB 依赖来解决该问题: javax.xml.bind jaxb-api 2.3.0 新的 Java SE 版本发布周期 随着 JDK 10 发布六个月之后,JDK 11 计划于 2018 年 9 月发布,新的 Java 发布 版本周期 已经全铺开。开发人员可能已经习惯于多年一次的 Java 新版本发布,可能由于新版本节奏发生变化,感觉受到轻微的冲击。 Java 社区...阅读全文

博文 2018-04-27 08:33:08 debian.cn

提问的智慧 – 全文

堆问题,专家们更喜欢有针对性的提问。 认真地思考,准备好你的问题。草率的提问只能得到草率的回答,甚至得不到回答。在提问时,你越是表现出在此前做过思考与努力去解决自己的问题,你越有可能得到真正的帮助。 注意别提问错误的问题。如果提问基于错误的假设,某黑客多半会一边想「这真是一个愚蠢的问题」,一边按将错就错地敷衍你,并且希望这个结果能够给你一个教训:如果提问的方式不对,你就得不到正确的答案。 永远不要假设你有资格得到解答。你没有这种资格,毕竟你没有为此服务付费。如果你能够提出有内容、有趣和激励思考的问题,你将通过自己的努力「挣到」答案,因为这种提问能够向社区贡献经验,而不仅仅是消极无止境地索取。 另一方,展现你的能力,并且表明你乐意参与解决问题,这是个很好的开始。「有没有人能指个方向?」,「我...阅读全文

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

TLS1.3 正式版发布 — 特性与开启方式科普

(SSL)的进化版本,SSL是由Netscape公司在1990年代研发的。国际互联网工程任务组(IETF)做为一个标准化组织,负责定义该协议,该协议已经历了多次修订。最新版本 TLS1.2 在 2008 年被确立为标准,目前被大多数浏览器和启用 HTTPS 的 web 服务所支持。 在配置正常的情况下,TLS 1.2 会很安全,但如今它却显得有些过时了。在过去几年中,几次引人注目的攻击暴露出该协议的一些漏洞。在计算机安全领域,8年是一段很长的时间,因此 IETF 已经在着手开发该协议的新版本 TLS 1.3。TLS1.3 是一次全升级,与此前版本相比,它有两个主要优势: 增强安全性 提升速度 增强安全性 过去几年来,大部分针对TLS的攻击都是以该协议90年代遗留下来的残余部分为目标的...阅读全文

博文 2018-08-14 14:40:05 debian.cn

为何说微软不会基于Linux内核重构Windows

(translation layer)转换为 WSL 2 中的虚拟化内核,因此重新实现利用 Linux ABI 的数十种非标准方式是非常痛苦的事情。为微软拥有的 Linux 上的SQL Server 提供一个 NT 相关的兼容层是一回事,为其他数百万开发者的应用提供保证是另一回事。 3.微软投入巨大 近年来,微软在 Windows 上倾注的人力物力已经无法计算。微软在 Windows 10 的可用性、新功能、性能改进等多方进行了优化投资,并取得了回报。在这些改进的基础上,通过和 OEM 厂商的合作,以及推出 Surface 品牌,已经帮助振兴了 PC 市场。 微软一直在努力使 Windows 成为一个优秀的开发平台,其项目包括 Windows Terminal、PowerToys、Windows...阅读全文

博文 2020-10-15 14:59:58 debian.cn

分布式运行时 Dapr 知多少

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

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

}kl.imageManager.GarbageCollect上已经分析了容器回收的主要流程,下会继续分析镜像回收的流程,kl.imageManager.GarbageCollect 是镜像回收任务启动的方法,镜像回收流程是在 imageManager 中进行的,首先了解下 imageManager 的初始化,imageManager 也是在 NewMainKubelet 方法中进行初始化的。k8s.io/kubernetes/pkg/kubelet/kubelet.gofunc NewMainKubelet(){ ...... // 初始化时需要指定三个参数,三个参数已经在上文中提到过 imageGCPolicy := images.ImageGCPolicy{ MinAge...阅读全文

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

细数k8s支持的4种类型的container - 侃豺小哥

API 中的一种特殊的 ephemeralcontainers 处理器进行创建的,而不是直接添加到 pod.spec 段,因此无法使用 kubectl edit 来添加一个临时容器。 与常规容器一样,将临时容器添加到 Pod 后,将不能更改或删除临时容器。 为什么我们需要Ephemeral 容器? 我们知道容器的优点是它们通过使用不变方法提供所有必需的依赖项来运行隔离的进程。通过仅将所需的依赖项添加到镜像中,容器可以降低攻击并提供更快的启动和部署。使用“distroless”方法构建容器镜像(基于scratch),通过仅包含已编译的应用程序二进制文件,将容器镜像提升到了一个新的水平。与普通的容器镜像不同,它们不基于任何种类的Linux发行版,因此不包含任何其他可通过kubectl exec执行...阅读全文

博文 2021-08-20 11:45:32 博客园

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

消息发送端: 发送消息如果配置了重试机制,比如网络抖动时间过长导致发送端发送超时,实际broker可能已经接收到消息,但发送方会重新发送消息 消息消费端: 如果消费这边配置的是自动提交,刚拉取了一批数据处理了一部分,但还没来得及提交,服务挂了,下次重启又会拉取相同的一批数据重复处理 一般消费端都是要做消费幂等处理的,比如每条消息使用redis的setnx分布式锁,把消息放redis里,这样两次消息一样的话,第二次的消息是放不进去的。 2.1.3 消息乱序 如果发送端配置了重试机制,kafka不会等之前那条消息完全发送成功才去发送下一条消息,这样可能会出现,发送了1,2,3条消息,第一条超时了,后两条发送成功,再重试发送第1条消息,这时消息在broker端的顺序就是2,3,1了 所以,是否一...阅读全文

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

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

服务化项目服务不可用几十分钟,造成订单数减少几十万笔,损失百万资金。 原因分析 当时是没有定位到具体的原因的,但是下的原因也是一部分可能引起宕机的情况。 某服务化项目的业务增速非常快,在高峰期,数据库QPS突破35000,系统处于高负荷状态。 在高峰期如果同时执行几个全表扫描的SQL,会造成数据库压力急剧上升,应用超时增多,前端应用超时,用户重试,流量飙升,形成了雪崩效应。 主要原因在与一些老项目的SQL查询性能较差,并且使用的主库,对数据库影响较大。数据库QPS太高,但是缓存方案因为人手原因一直没有落地,慢SQL的问题处理优先级应该提升。 改进方案 针对每个应用建一个数据库账号,严格按照规范使用 缓存优化方案即时落地,慢SQL问题优先处理,集中处理目前已经发现的慢SQL(查询时间超过1S...阅读全文

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

Debian Live 项目的剧变

Williams 却坚持认为取代 live-build 很有必要。Learmonth 给 live-build-ng 换了一个争议性也许小一些的名字: live-wrapper 。他说他的目标是为 Debian Live 项目加入新的工具(并且「把 Debian Live 项目引入 Debian 里」),但是完成这件事还需要很大的努力。 我向已经被 ITP 问题所困扰的每个人道歉。我们已经告知大家 live-wrapper 还不足以完全替代 live-build 且开发工作仍在进行以收集反馈。尽管有了这部分的工作,我们收到的反馈缺并不是我们所需要的。 这种对于取代 live-build 的强烈反对或许已经被预知到了。自由软件社区的沟通和交流很关键,所以,计划去替换一个项目的核心很容易引起争议——更何况是...阅读全文

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

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

Spinnaker 是 Netflix 在2015年开源的一款持续交付平台,它继承了 Netflix 上一代集群和部署管理工具 Asgard:Web-based Cloud Management and Deployment的优点,同时根据公司业务以及技术的的发展抛弃了一些过时的设计:提高了持续交付系统的可复用性,提供了稳定可靠的API,提供了对基础设施和程序全局性的视图,配置、管理、运维都更简单,而且还完全兼容 Asgard,总之对于 Netflix 来说 Spinnaker 是更牛逼的持续交付平台。 在深入了解 Spinnaker 之前,先扯一扯 Netflix 的技术文化:这是一家全拥抱云的公司,据报道数据中心完全部署在 AWS 上,是 AWS 的超级大客户。在上云后他们发现故障仍...阅读全文

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

利用 NAT VPS 进行流量中转

=nobody TCP4:目标地址:目标端口号 >> /var/log/socat.log 2>&1 &nohup /usr/bin/socat -d -T 60 UDP4-LISTEN:本机端口号,reuseaddr,fork,su=nobody UDP4:目标地址:目标端口号 >> /var/log/socat.log 2>&1 &上两条命令可在 root 用户下执行。 目标机的设置此处示例的目标机为 Debian & Ubuntu 系统,安装并启用了 UFW:如需同时允许 TCP 和 UDP 入站:1sudo ufw allow from 中转机地址 to any port 端口号如需只允许 TCP 入站:1sudo ufw allow proto tcp from 中转机地址 to any...阅读全文

博文 2021-03-11 21:16:11 Silearner

Golang 中的 channel 通道详解

文件是必须要做的,但关闭通道不是必须的。关闭后的通道有以下特点:对一个关闭的通道再发送值就会导致panic。对一个关闭的通道进行接收会一直获取值直到通道为空。对一个关闭的并且没有值的通道执行接收操作会得到对应类型的零值。关闭一个已经关闭的通道会导致panic。channel的种类不带缓存的channel一个基于无缓存Channels的发送操作将导致发送者goroutine阻塞,直到另一个goroutine在相同的Channels上执行接收操作,当发送的值通过Channels成功传输之后,两个goroutine可以继续执行后的语句。反之,如果接收操作先发生,那么接收者goroutine也将阻塞,直到有另一个goroutine在相同的Channels上执行发送操作。基于无缓存Channels的...阅读全文

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

MongoDB 是一个多租户系统,它会尽可能地占用内存,因此最好是安装在服务器上,最大限度地提供内存,即使是开发工作。在服务器上使用默认端口安装而不启用身份验证是在自找麻烦,尤其是可以在查询中运行任意 JavaScript 时(例如把$where 作为注入攻击的载体)。 身份验证方法有多种,但是用户 ID/密码凭证最容易安装和管理。当你考虑 基于 LDAP 的身份验证 时,可以采用那个方法。在我们谈论安全时,MongoDB 必须保持最新,而且,在日志里查找未授权访问的迹象总是值得的。我不喜欢使用默认端口。 忘记限制 MongoDB 的攻击 MongoDB 的 安全检查清单 为降低网络渗透和数据泄露风险提供了很好的建议。我们很容易会认为,开发服务器不需要高等级的安全。不是这样的:安全对于所有...阅读全文

Apache Kafka发布 3.0 正式版

昨天,Apache Kafka 3.0 版本正式发布,这是一个涉及多方的大版本。在这个版本中,Apache Kafka 3.0 引入了各种新功能、突破性的 API 更改以及对 KRaft 的改进:Apache Kafka 的内置共识机制将取代 Apache ZooKeeper™。虽然 KRaft 尚未被推荐用于生产(已知差距列表),但我们对 KRaft 元数据和 API 进行了许多改进。Exactly-once 和分区重新分配支持值得强调,我们鼓励开发者查看 KRaft 的新功能并在开发环境中试用它。并且,从 Apache Kafka 3.0 开始,生产者默认启用最强的交付保证 ( acks=all, enable.idempotence=true),这意味着用户现在默认获得排序和持久性...阅读全文

博文 2021-09-26 14:13:03 joseph

HTTP状态码详解

息不是在原始服务器上有效的确定集合,而是来自本地或者第三方的拷贝。当前的信息可能是原始版本的子集或者超集。例如,包含资源的元数据可能导致原始服务器知道元信息的超级。使用此状态码不是必须的,而且只有在响应不使用此状态码便会返回200 OK的情况下才是合适的。 204 服务器成功处理了请求,但不需要返回任何实体内容,并且希望返回更新了的元信息。响应可能通过实体头部的形式,返回新的或更新后的元信息。如果存在这些头部信息,则应当与所请求的变量相呼应。 如果客户端是浏览器的话,那么用户浏览器应保留发送了该请求的页,而不产生任何文档视图上的变化,即使按照规范新的或更新后的元信息应当被应用到用户浏览器活动视图中的文档。 由于204响应被禁止包含任何消息体,因此它始终以消息头后的第一个空行结尾。 205...阅读全文

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