InfraPub 为您找到相关结果 717

架构师详解 Nginx 架构

一个待处理事件的列表,使用非阻塞 I/O 方式调用“事件处理器”来处理该请求。其处理方式称为“多路 IO 复用方法”,常见的包括以下三种:select 模型、poll 模型、epoll 模型。 针对上面的技术我特意整理了一下,有很多技术不是靠几句话能讲清楚,所以干脆找朋友录制了一些视频,很多问题其实答案很简单,但是背后的思考和逻辑不简单,要做到知其然还要知其所以然。如果想学习Java工程化、高性能及分布式、深入浅出。微服务、Spring,MyBatis,Netty源码分析的朋友可以加我的Java进阶群:433540541,群里有阿里大牛直播讲解技术,以及Java大型互联网技术的视频分享给大家。 四. Nginx 设计架构 Nginx 服务器使用 master/worker 多进程模式。多...阅读全文

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

gRPC 1.23.0 发布,Google高性能 RPC 框架

<> (#19569)csharp 在 UTF8 编码/解码期间删除 byte[] 分配 (#19511)csharp:删除 AuthContext 的 Lazy 用法 (#19533)csharp 避 HandleNewServerRpc=>HandleCallAsync 中的 capture-context (#19526)确保 Grpc 元数据包包含 Grpc.Core.targets (#19449) Objective-C ObjC 实验支持 Bazel 构建 (#19621)实现局拦截器 (#19322) PHP PHP:修复 channel::constructor() 中缺少的 addref (#19737) Python 在迭代之前检查 call.trailing_metadata...阅读全文

博文 2019-08-18 18:31:20 debian.cn

EC2关机后 AWS还会计费吗

AWS 在 EC2 关机后,不会再对计算资源计;其他资源 比如EBS、Elastic IP 这些还会产生用。如果你使用了预留实例,还需要考虑预留实例对计方式的影响,会按照预留实例的计标准计。 这种灵活的计方式,是 AWS EC2 默认就支持的,相比之下,国内绝大多数云主机厂商是不支持的。在开机、关机时(即主机状态发送转变时),AWS 会收取最少一分钟的计用。 如果你关机过程用了20秒,AWS会按照一分钟来收;如果你关机过程用时 1分30秒,则AWS会按照1分30秒收取用。很良心吧,很灵活吧。 AWS的文档还是要多看的,计方式和九年前的AWS变化很大。最新版的文档可以从这里下载: https://docs.aws.amazon.com/AWSEC2/latest...阅读全文

博文 2019-02-27 17:02:32 debian.cn

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

运作开源项目很容易。所有你需要做的就是让你的源代码可用和开源,对吧?嗯,也许。其实,开源项目是否成功取决于你对项目成功的定义。且不论你是怎么定义的,创建开源项目需要大量的工作。如果你已经有了目标,那么你需要准备投资。虽然开源软件是的,但它的创作却不是的:你需要往项目中投入时间和精力等宝贵资源。 那么,你如何投资这些资源? 1、定义成功 在考虑运作开源项目之前,你需要明确定义成功的意义。这里有很多因素要考虑。只将代码放入可公开访问的存储库就可以了,还是说你想对你的项目做更多?合作与采用对你来说重要吗?你只是为了打造作为一名软件开发者的声誉吗?你对成功的定义是否包括长期的可行性?你想围绕这个项目发展一个社区吗?你关心商业采用吗?你对这些问题的回答可以帮助你确定接下来你需要采纳的建议有多...阅读全文

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

Kafka 常用命令行工具

创建主题kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic infras_cn 查看所有主题kafka-topics.sh --zookeeper localhost:2181 --list 查看指定主题的详细信息kafka-topics.sh --zookeeper localhost:2181 --topic infras_cn --describe 命令行生产者kafka-console-producer.sh --broker-list localhost:9092 --topic infras_cn 行消者消所...阅读全文

DevOps 越来越流行,2019 年这八大趋势值得关注

务就跟着学,一定要了解自己的需求,并知道为什么要采用微服务架构。 更多公司预计会选择企业版软件 很多公司仍处于是自己开发还是购买企业版软件的两难境地。我们建议你做自己最擅长的事情,并按照自己的要求购买相应的工具。这样不仅可以帮助你专注于你的目标,还可以依赖第三方平台来提高工作效率。很多公司现在都在通过企业版软件来构建自己的基础设施,并确保安性尽可能得到最好的控制。 Kubernetes 将进一步演化 Kubernetes 因为易用性而成为增长最快的容器技术。Kubernetes 还建立了一个壮大的开源社区。在世界各地,很多 CIO 和技术专家已经在使用 Kubernetes,并预计在 2019 年会有重大的发展。 最近,云原生计算基金会(CNCF)进行了一项调查,分享了容器编排领域所发...阅读全文

博文 2018-12-10 22:49:57 debian.cn

Facebook 正式发布 JavaScript 包管理器 Yarn 1.0

Workspaces) 越来越多的科技公司开始采用单体仓库模式(mono-repository — 方便跨项目共享代码,同时避依赖同步问题)来进行代码控制,这种模式也正逐渐被开源社区和一些小型公司所采纳。 因此,Yarn 增加了一个新特性 ——工作区。工作区可以自动从多个 package.json 中收集所有的依赖项,并一次性将它们安装毕。项目根目录下会生成一个独立的 yarn.lock 来锁定这些文件。此外,如果多个工作区之间存在依赖,Yarn 会为它们创建链接,这样所有的项目就可以始终共享最新的代码。 自动合并 yarn.lock 文件 (Auto-merging of lockfiles) 多个开发者在开发同一个项目时,可能会需要更新包依赖,从而导致 yarn.lock 文件出现冲突。如果只有一两个...阅读全文

博文 2017-09-19 14:43:15 debian.cn

Apache Flink 1.14 新特性预览 - OSCHINA

-2 个大版本后都会发布一个变化稍微少一点的版本,主要目的是把一些特性稳定下来。 1.14 版本就是这样一个定位,我们称之为质量改进和维护的版本。这个版本预计 8 月 16 日停止新特性开发,可能在 9 月份能够和大家正式见面,有兴趣可以关注以下链接去跟踪功能发布进度。 Wiki:https://cwiki.apache.org/confluence/display/FLINK/1.14+Release Jira:https://issues.apache.org/jira/projects/FLINK/versions/12349614 [1] 截至到 8 月 31 日,确定进入新版本的是 33 个,已成。 二、流批一体 流批一体其实从 Flink 1.9 版本开始就受到持续的关注,它...阅读全文

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

成为Debian社区维护人需要做好的准备

出很多时间和努力。 1. 尽可能多地使用 Debian 成日常工作。也就是说,成为开发者前,先做一个用户。 2. 阅读 Debian New Maintainer’s Guide 学习 Debian 打包的基本知识(英文版,中文版)。 这些知识能帮助你让不太复杂的软件包工作起来,但是与满足 Debian 标准之间还有相当大的距离。这个过程中可以独立地重新打包一个已经在仓库中的包,成后和别人现有的工作进行对比,找出自己的不足。这个包一般不需要很复 杂,初学时直接弄复杂的包很可能只会浪很多精力。做包的过程中遇到任何问题都可以找有经验的人询问清楚,这对提高水平非常有益。 3. 寻找一个感兴趣的软件进行打包,WNPP (Work-needing and Prospective Packages...阅读全文

Debian上安装配置Docker容器管理平台Rancher

Rancher是一个开源项目为Docker容器环境提供了较善的管理平台。Rancher 允许我们在大规模生产环境中使用 Docker。 Rancher 提供模块化基础架构服务,如多主机网络、局和本地负载平衡、监控、恢复和卷快照等。本文我们将介绍如何在Debian 9 Stretch 上安装配置 Rancher。 安装要求 运行Debian 9的服务器。 具有sudo权限的非root用户。 开始 在开始之前,建议将您的APT存储库更新为最新版本。 您可以使用以下命令执行此操作。 sudo apt-get update -y sudo apt-get upgrade -y 接下来,可以重新启动系统以应用所有更改。然后使用以下命令安装所需的软件包: sudo apt-get install...阅读全文

博文 2018-04-10 22:27:37 debian.cn

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

播,Windows 和 Linux 的开放源码贡献者能够共享两个生态系统的精华。 2.兼容性 目前尚不清楚如果 Windows 用户空间从 NT 迁移到 Linux 内核,是否能够保持良好的兼容性,特别是那些拥有关键任务应用、付获取的东西。 Windows 没有像 Linux 那样严格区分内核空间和用户空间。NT 内核大约有 400 个已记录的 syscalls 以及大约 1700 个已记录的 Win32 API 调用。对于重新部署从而确保 Windows 开发者和他们工作达到预期的兼容性这是非常庞大的工作量,这超过了 Wine 提供的修正贡献。 Linux 在 arm64 上只有 313 个 syscalls,而另一个原因是微软已经从 WSL 1 中的 syscall 翻译层...阅读全文

博文 2020-10-15 14:59:58 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

Debian 9、RHEL 9 移除了对 MongoDB 的支持

自从 MongoDB 去年 10 月份宣布将开源协议从 GNU AGPLv3 切换到 Server Side Public License (SSPL),风波就一直没停过。 前几天 AWS 推出 DocumentDB,以替换原有基于 MongoDB 源码的产品,被视为是对 MongoDB 的一大反击,而这两天英国卫报也弃用 MongoDB,最新消息是开源大佬红帽宣布从 Red Hat Enterprise Linux(RHEL)8 中删除 MongoDB。 在最新的 8.0 Beta Release Note 中,RHEL 明确表示因为 MongoDB 使用了 SSPL 协议,所以将不会在 8.0 系统中提供该数据库。 红帽系的 Fedora 也表示已经确定 SSPL 不是一个自由软件...阅读全文

博文 2019-01-17 10:02:06 debian.cn

树莓派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

Debian瞻前 微软顾后:安全改进是否会产生负面影响

关于添加TLS 1.2的博文中都没有提到PCI。它表示,它想要删除“弃用旧的安协议”的障碍,并致力于“一流的加密”。 但是,如果更好的安性是真正的目标,为什么微软忽略增加其他现代功能?为了公平起见,Windows Server 2008的TLS支持不是过于差劲。由于ECDHE支持,它至少具有PFS(正向保密)密码。 有时候,强行优化一个老系统可能会带来更多安和生态上的落差。因为它使企业和用户有借口坚持早就该被替换或升级的系统。 这也是为什么去年Chrome把整个Diffie-Hellman密码类都移除掉的部分原因。尽管它可以只保留支持更强的2048位参数,直接取消部更为简单安。 Debian放出的仅支持TLS1.2的消息可能不是最终决定,但这种胆识确实值得赞许。与此同时,在...阅读全文

博文 2017-08-11 09:54:18 debian.cn

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

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

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

一、0xcc开篇 2020年3月,得物技术团队在三个月的时间内成了整个交易体系的重构,交付了五彩石项目,业务系统也进入了微服务时代。系统服务拆分之后,虽然每个服务都会有不同的团队各司其职,但服务之间的依赖也变得复杂,对服务治理等相关的基础建设要求也更高。 对服务进行监控是服务治理、稳定性建设中的一个重要的环节,它能帮助提早发现问题,预估系统水位,以及对故障进行分析等等。从 2019 年末到现在,得物的应用服务监控系统经历了三大演进阶段,如今,整个得物的应用微服务监控体系已经面融入云原生可观测性技术 OpenTelemetry。 回顾过去十年间,应用服务监控行业的竞争也很激烈,相关产品如雨后春笋般涌现,如推特在 2012 年开源的 Zipkin,韩国最大的搜索引擎和门户网站 Naver...阅读全文

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

下一代时间同步服务 Chrony 详解

Chrony 是一个多功能的 NTP (Network Time Protocol) 实现,类 Unix 系统上 NTP 客户端和服务器的替代品。它可以通过 NTP 服务或者类似 GPS 时钟接收器的硬件级参考时钟来同步系统时钟,具有更好的时钟准确度,并且对于那些间歇性互联网连接的系统很有帮助。Chrony 是开源的,并且支持 GNU/Linux 和 BSD 衍生版、Solaris 等。 Chrony 有两个核心程序:一个是 chronyd 守护进程,主要用于调整内核中运行的系统时间和时间服务器同步。它确定计算机增减时间的比率,并对此进行调整补偿。另一个是 chronyc,它提供一个用户界面,用于监控性能并进行多样化的配置。chronyc 可以在 chronyd 实例控制的计算机上工作...阅读全文

博文 2021-01-04 08:41:14 debian.cn

Postgres 10 开发者新特性

目前非常流行的RDBMS PostgresSQL已经在几周前发布了它的第10个版本。由于Postgres的可靠性、节约成本、成熟,当然还有它的开源,已经21岁的Postgres在开发者之中仍旧非常流行。 Postgres 10带来了一些新特性,其中一些特性另开发者感到十分兴奋。10Clouds在博客中详细介绍了其中的一些特性。通过消除主表(master table)中触发器(trigger)的需求,本地分区(native partitioning)现在变得更简单了。这意味着创建分区表将变得更简单,并且从开发者的角度来看,现在从分区数据表中进行查询和插入与在非分区的数据表进行这些操作是一致的。 多列统计(multicolumn statistics)是Postgres 10的另一项改进...阅读全文

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

提问的智慧(精简版)

遇到问题,当然应该大胆提问!但绝对不是随便截个图丢给其他人,等待解决方案。原文请见 提问的智慧 (How To Ask Questions The Smart Way) 。这篇文章对于社区提问给出了很多建议,现作要点精简如下。请你做到成了 RTFM (Read The Fucking Manual) 和 STFW (Search The Fucking Web) 两个步骤。通常,用这两句之一回答你的人会给你一份包含你需要内容的手册或者一个网址,而且他们打这些字的时候也正在读着。这些答复意味着回答者认为你需要的信息非常容易获得;你自己去搜索这些信息比灌给你,能让你学到更多。按发生时间先后列出问题症状问题发生前的一系列操作,往往就是对找出问题最有帮助的线索。因此,你的说明里应该包含你的操作步...阅读全文

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

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

需要细小的引线和线宽,复杂度高,良率受制程影响大,成本也会很高。"刘宏钧说到。以英特尔的EMIB为例,从英特尔所发布的公开论文中可以发现,EMIB在工艺实现上面临不少难题,需要进行材料和工艺的开发,其硅桥的设计工作需要由懂材料、懂封装、懂制程和懂信号整性的资深工程师们来共同实现。另外,晶圆制造材料、设备都需要进行改进,其时间和成本是除苹果、英特尔等头部芯片公司之外无法承受的。不仅如此,即便是有了UCIe这芯片万能胶,"Chiplet在哪里"的问题也难以解决。"UCIe之后,Chiplet面临的是Chiplet供应商和应用商谁先迈出第一步的问题。这也是一个'鸡与蛋'的问题。Chiplet供应商较为关心的是Chiplet一次性工程用(NRE)该由谁来承担,而应用商则担心是否有足够丰富的...阅读全文

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

Python 2.7将于2020年1月1日终止支持

Python 语言作者 Guido van Rossum 在开发者邮件列表上宣布 Python 2.7 将于 2020 年 1 月 1 日终止支持。他说,别玩语义游戏了,Python 2.7 的终止支持时间不会再更改,之后不会再有安更新。想要在这个日期之后继续支持 Python 2.7 的人将需要付给商业供应商。 Python 是一个开源项目,他欢迎创建分支,他表示 Python 核心团队在这上面工作的时间够长了。 Python 2.7 原计划在 2015 年终止支持,但由于大量现有代码没有移植到 Python 3 开发者将终止支持的时间推迟到了 2020 年。...阅读全文

博文 2018-03-14 16:58:09 debian.cn

远程岗位热招中: SRE、基础设施、中间件运维、安全、基础架构

岗位较多,JD 就不发详细的了。 只考虑日制本科及以上学历。 人在上海或华东,会合理管理时间(长期居家中)。 看重公有云 AWS 使用经验,独立负责某一个项目的能力(通俗的讲,人要靠谱) 所有岗位均需要 Python 开发能力、Golang 开发能力。 需要基础知识足够扎实,人诚实可靠,务实上进(和你未来的同事保持一致)。 如果只是纯做某一块,最好能看到你的技术上的积累。简历中看不出内容,就不用浪彼此时间了, 合适的简历,24 小时内回复,不合适的会被忽略。 联系方式: `echo MHgzMjc5QGdtYWlsLmNvbQ== | base64 -d`...阅读全文

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

早在 Ubuntu 诞生之前,作为由自有软件组成的类 UNIX 操作系统 Debian 凭借着惊人的软件数量、高度集成的软件包、良好的安等特性成为 Linux 领域的佼佼者。不过如今看来,Debian 的流行度开始大大减弱。 日前,维护 Debian 包近 10 年的开发者 Michael Stapelberg 发文表示,要在维护的 Debian 包中删除自己的姓名,并让这些包自生自灭,彻底放手 Debian,而这究竟是何原因使得 Debian 惨遭嫌弃? 作者 | Michael Stapelberg 译者 | 弯月 责编 | 屠敏 出品 | CSDN(ID:CSDNNews) 以下为译文: 这篇文章我写得十分艰难,一来是感情上的纠结,二来是我没有时间。因此,在阅读本文时请注意,我...阅读全文

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

Golang 之禅: 如何写优质代码

。 明确处理错误 健壮的程序其实是由处理故障案例的片段组成的,并且需要在故障出现之前处理好。冗余的if err != nil { return err }比出了故障再一个个去处理更有价值。panic 和 recover 也一样。 尽早 return,不要深陷 每次缩进时都会在程序员的堆栈中添加另一个先决条件,这会占用他们短期内存中的 7±2 个片段。避需要深层缩进的控制流。与其深入嵌套,不如使用守卫子句将成功路径保持在左侧。 并发权留给调用者 让调用者选择是否要异步运行你的库或函数,不要强制他们使用异步。 在启动 goroutine 之前,要知道它什么时候会停止 goroutines 拥有资源、锁、变量与内存等,释放这些资源的可靠方法是停止 goroutine。 避包级别的状态 要成明确和...阅读全文

博文 2020-02-25 20:48:33 debian.cn

SVN切换分支用法汇总

,在进行分支切换之前,一定要先保存修改。2. 切换分支要保证分支版本库状态干净在进行分支切换操作之前,我们需要保证代码分支版本库的状态是干净的,即没有未提交的修改。否则,分支操作可能会导致一些未提交的修改部丢失。3. 切换分支要保证源分支和目标分支都在同一版本库中SVN是针对版本库来进行代码管理的,所以在进行分支切换时,源分支和目标分支都必须在同一个版本库中。否则,你就需要进行多库协同编程,难度会增加很多。4. 将切换分支操作单独进行为避出现一些问题,一般我们建议将分支切换操作独立出来,不要和其他代码操作混在一起。这样做可以使我们的代码更加清晰,也可以有效地避出现一些不必要的操作。5. 多人协作时切换分支需要谨慎当多人协作时,任何一个人都可能进行分支切换的操作,这时每个人都应该非常谨慎...阅读全文

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

Terraform 学习总结 — Terraform 简介

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

微软发布 Linux 版威胁防护平台 Microsoft Defender ATP

,但还是有不少恶意软件存在,因为软件可以不通过官方渠道安装。他认为 Defender 能够帮助用户受移动设备上恶意软件和网络钓鱼攻击的侵害。 目前关于 Microsoft Defender ATP 的 iOS 和 Android 版本还没有更多详细信息,微软将在下周的 RSA 大会上展示移动端的工作进展。...阅读全文

博文 2020-02-22 22:31:58 debian.cn

树莓派4上如何安装 Raspbian Buster

Win32DiskImager 中打开、浏览该文件。单击 “Write”,就可以开始往SD卡中录入系统镜像了。这一步会花些时间,一般两分钟左右。写入成后,我们会看到如下所示的 “写入成功” 的提示。 现在您就可以在系统中,安地弹出 microSD卡 并继续下一步了。 启动树莓派4 将闪存SD卡插入 树莓派4 底部的SD卡插槽中,接入 USB-C 的电源线,然后连接显示器和键盘。我们就可以看到炫丽的树莓派启动画面了。在Pi的第一次启动时,屏幕右上方会显示几个 Raspberry Pi 徽标。 Raspbian的启动速度明显快于 NOOBS,因为 NOOBS 功能更多,更强大,为我们提供更多的选择和安装替代操作系统的窗口。 树莓派启动后,我们就会看到漂亮的壁纸和初始的 Raspberry Pi 设置向导。只需按照屏幕...阅读全文

博文 2020-02-04 19:33:29 debian.cn

Kafka 3.3 使用 KRaft 共识协议替代 ZooKeeper

控制器故障转移接近瞬时。Kafka 社区计划在下一个版本(3.4)中弃用 ZooKeeper,然后在 4.0 版本中删除它。此外,Kafka 3.3 还提供了其他一些新特性,比如添加了与元数据日志处理错误相关的指标,允许用户为其他用户创建委托令牌,以及严格统一的粘性分区器,以缩短分区时间。对于 Kafka Streams,这个版本增加了源/接收器指标,如消/生产吞吐量、暂停/恢复拓扑,并集成了 KStream transform()和 process()方法。Kafka Connect 增加了对源连接器的精确一次语义支持。原文链接: https://www.infoq.com/news/2022/10/apache-kafka-kraft/...阅读全文

Python的闭包和装饰器

回绑定变量后的函数(也即闭包),此时即便生成闭包的环境(父函数)已经释放,闭包仍然存在,这个过程很像类(父函数)生成实例(闭包),不同的是父函数只在调用时执行,执行毕后其环境就会释放,而类则在文件执行时创建,一般程序执行毕后作用域才释放,因此对一些需要重用的功能且不足以定义为类的行为,使用闭包会比使用类占用更少的资源,且更轻巧灵活,现举一例:假设我们仅仅想打印出各类动物的叫声,分别以类和闭包来实现: 可以看到输出结果是一样的,但显然类的实现相对繁琐,且这里只是想输出一下动物的叫声,定义一个 Animal 类未小题大做,而且 voice 函数在执行毕后,其作用域就已经释放,但 Animal 类及其实例 dog 的相应属性却一直贮存在内存中: 而这种占用对于实现该功能后,则是没有必要...阅读全文

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

为什么 Django 能持续统治 Python 开发世界

构建之前,您也可以从外部贡献者处获取有关信息。 这就是Django的力量。 该框架使您能够快速轻松地从应用模型生成管理站点。 代码设计 与大多数 Web 框架相反,Django 通过使用称为 app 的东西,更容易地将新功能添加到产品中。 因此,开发者可以感受到 Django 鼓励大家编写模块化的代码。 Django对ORM的善支持 Django的对象关系映射 (ORM) 对数据库进行了善的支持。所以,它用于查询数据库所需的数据时,没有处理结构化查询语言(SQL)的麻烦。 与许多通过SQL直接在数据库上工作的Python框架不同,Django开发人员有一个独特的选择来操纵相应的Python的Model对象。 Django对于PostgreSQL,MySQL,SQLite和Oracle...阅读全文

博文 2017-07-21 14:15:11 debian.cn

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

#Slow Log的长度,即最大纪录多少条Slow Log 使用SLOWLOG GET [number]命令,可以输出最近进入Slow Log的number条命令。 使用SLOWLOG RESET命令,可以重置Slow Log 网络引发的延迟 尽可能使用长连接或连接池,避频繁创建销毁连接 客户端进行的批量数据操作,应使用Pipeline特性在一次交互中成。具体请参照本文的Pipelining章节 数据持久化引发的延迟 Redis的数据持久化工作本身就会带来延迟,需要根据数据的安级别和性能要求制定合理的持久化策略: AOF + fsync always的设置虽然能够绝对确保数据安,但每个操作都会触发一次fsync,会对Redis的性能有比较明显的影响 AOF + fsync every...阅读全文

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

Ubuntu 创始人爆粗口: 开源社区弥漫着“反社会人格”

满了浓浓的火药味,作为 Canonical 的首席执行官应该要注意在公众面前所说的话。如此消极的反馈直指软件社区(此外还幼稚的使用脏话)无疑伤害了 Ubuntu 和 Canonical 的品牌形象。或许他并不在意这些,但是这种做法会传染带给 Canonical 的公司员工。...阅读全文

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

谷歌宣布即将开放 .dev 顶级域名注册

谷歌宣布 .dev 顶级域名将于这周 —— 美国时间 2 月 19 日开始开放注册(早期访问阶段),想要的朋友不妨关注一下。具体价格如下图所示: .dev 域名的续用为每年 12美元,在2月28号开放给公众注册。在这之前注册域名需要支付额外的、一次性的预注。与其他域名不同的时,所有的 dev 域名,默认都启用了HSTS,在HSTS的预加载列表中。 从所有权上说,.dev 以前是一个私人的,仅限谷歌使用的顶级域名。但谷歌于去年宣布从今年开始向公众开放 .dev 域名,并计划在 2019 年 1 月 16 日到 2 月 19 日期间,邀请商标持有者注册与其商标相关的域名。从 2 月 19 日到 28 日,进入早期访问阶段,允许普通用户注册。 早在 2015 年,Google 豪掷...阅读全文

博文 2019-02-18 13:17:02 debian.cn

DDR5 内存来了:7nm 工艺、4400MHz 频率

DDR4 内存目前还是绝对主流,不断被深入挖潜,频率已经突破 5GHz,不过下一代 DDR5 也已经蠢蠢欲动了。Cadence 公司今天就宣布了 DDR5 的新进展,无论工艺还是频率都相当领先。 目前,JEDEC 标准组织正在研究 DDR5 内存规范,已经有了初步版本,Cadence 此番拿出的就是面向新规范的第一个 DDR5 IP物理层接口芯片。 该测试芯片采用台积电7nm工艺制造,数据率可达4400MT/s,也就是频率高达4400MHz,相比目前商用最快的DDR4-3200快了多达37.5%。 为了支持Cadence DDR5 PHY物理层的验证和协作,美光也向其提供了DDR5内存初步版本的工程原型。 在此之前,Rambus也曾经提到过7nm工艺下的DDR5 IP,并预计DDR5内存...阅读全文

博文 2018-05-05 06:24:02 debian.cn

Linux 容器 vs 虚拟机 — 谁更胜一筹

的,而虚拟机对于像运行 LAMP 堆栈这样的单一应用程序使用情况是更好的。 Linux 容器 vs 虚拟机 – 安性 与容器相比,虚拟机提供了更多的安性。这并不是说容器不能被保护,而是说,默认的虚拟机提供了更大的隔离。请记住,容器可以共享系统资源而虚拟机不行。 在运行容器时,可以采取一些措施来降低风险,包括避超级用户权限,确保从可信来源获取容器,并且保持最新状态。有些容器是数字签名的,这有助于确定您可以从可信来源获取容器。 最后,你需要保持容器的单一功能职责。一旦你开始在一个容器下结合软件职责,你会发现还是使用虚拟机最好。重申一下,容器是用于单一用途的应用程序,虚拟机用于多用途的应用程序。坚持这种做法,你将在安性和整体功能方面处于更好的状况。 Linux 容器 vs 虚拟机 – 选择...阅读全文

博文 2017-11-25 10:23:56 debian.cn

深入学习golang — channel

. }() doSomethingForAWhile() <-c // Wait for sort to finish; discard sent value. 上面的示例中,在子goroutine中进行排序操作,主goroutine可以做一些别的事情,然后等待子goroutine成排序。 接收方会一直阻塞直到有数据到来。如果channel是无缓冲的,发送方会一直阻塞直到接收方将数据取出。如果channel带有缓冲区,发送方会一直阻塞直到数据被拷贝到缓冲区;如果缓冲区已满,则发送方只能在接收方取走数据后才能从阻塞状态恢复。 3. 消息传递 我们来模拟一下经典的生产者-消者模型。 func Producer (queue chan<- int){ for i:= 0; i < 10; i++ { queue <- i } } func...阅读全文

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

企业制定开源战略的免费指南

源,这让他们毫不含糊地知道公司的战略领导者支持它。此外,如果有某些我们不希望工程师使用的许可证或有其他开源指南,我们的内部文档需要明确。” 开源计划有助于促进企业文化,使企业更高效,并且根据指南,强有力的战略文档可以“帮助你的团队了解开源计划背后的业务目标,确保更好的决策,并最大限度地降低风险。” 了解如何使用 设置开源策略 新指南中的提示和经过验证的实践,将管理和创建开源软件的目标与组织的业务目标保持一致。然后,查看所有 12 个 企业开源指南 ,了解有关使用开源获得成功的更多信息。...阅读全文

博文 2018-12-17 13:05:32 debian.cn

Ubuntu 20.04 LTS 正式版发布

Ubuntu 20.04 LTS (Focal Fossa)于 4 月 23 日正式发布。主要新特性包括:Linux 内核 5.4,支持新的硬件如英特尔 Comet Lake CPU 和 AMD Navi 12 和 14 GPU;支持 exFAT 文件系统,支持 Wireguard VPN,整性模式启用锁定;为 RISC-V 硬件提供了 riscv64 内核。 其它包括:GNOME 3.36,Mesa 20.0 OpenGL stack,BlueZ 5.53,PulseAudio 14.0,Firefox 75.0 和 Thunderbird 68.7.0,LibreOffice 6.4 等。 与 Ubuntu 20.04 同时发布的还有多个衍生版本如 Kubuntu 和 Lubuntu...阅读全文

博文 2020-04-24 01:58:26 debian.cn

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

triggered once! get 9 bytes of content: ABCDEFGHI -->LT Mode: it was triggered once! get 8 bytes of content: JKLMNOPQ 从结果中,可以看出,由于buffer中数据读取毕后,还有未读的数据,所以水平模式会一直触发,这也是为啥这里水平模式被触发了两次的原因。 有了这两个栗子的比对,不知道聪明的你,get到二者的区别了吗? 在实际开发过程中,实际上LT更易用一些,毕竟系统帮助我们做了大部分校验通知工作,之前提到的SELECT和POLL,默认采用的也都是这个。但是需要注意的是,当有成千上万个客户端连接上来开始进行数据发送,由于LT的特性,内核会频繁的处理通知操作,导致其相对于ET来说,比较的耗系...阅读全文

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

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

Linux:为什么那么多人讨厌 Systemd

因。也有其他人认为,systemd的日志记录并不是很好,二进制日志被很多人所诟病,虽然systemd提供了更快的索引,但二进制日志本身就有问题,而且systemd的日志损坏也不是第一次发生了。而且systemd真正令人反感的是设计不够灵活,对很多人而言,systemd阻止了他们的选择自由,考虑到kFreeBSD分支的软件源无法纳入systemd,为与其他分支保持一致,Debian的开发者尽力避纳入systemd。但Lennart Poettering本人对此并不在意,并称“Debian GNU/kFreeBSD不过是玩具系统”。 systemd目前还处于中间发展阶段,那些想要超级安或超级小或超快速系统的人都不适合使用。事实的真相是,systemd的很多反对者并不真正关心“底层”,只是抱怨...阅读全文

GIMP 2.10.22发布 首次支持AVIF图像

虽然GIMP 3.0的开发工作拖拖拉拉,但GIMP 2.10.x稳定系列继续迎来新的功能。今天新出炉GIMP 2.10.22支持基于AV1的AVIF图像格式的导入和导出。AVIF是一种非常有前途的图像格式,基于版税的AV1技术,已经被Firefox和Google Chrome等网络浏览器支持,同时继续在其他照片/图像软件中得到采用。 相比较 WebP 和 JPEG 等格式,AVIF 的压缩能力明显更好。AVIF 支持分辨率下的 10 位和 12 位色彩,以及高动态范围(HDR)。AV1 还使用了一种新的压缩技术:从色度到亮度。大多数图像格式将亮度与色相分开存储。AVIF 使用亮度通道来猜测颜色通道的样子,它们通常是相关的,所以AVIF可以提供更小的文件大小和更清晰的边缘。 不仅如此...阅读全文

博文 2020-10-08 11:00:05 debian.cn

Let’s Encrypt倡议新认证策略 提高抗攻击能力

Let’s Encrypt是一家得到Mozilla Firefox和Google Chrome支持的自动化证书颁发机构。今天该机构宣布了一项新措施,从而进一步保护用户受网络攻击的侵害。这项新功能称之为多角度域验证(multi-perspective domain validation),可帮助证书颁发机构(CA)证明申请人对他们想要获得证书的域具有掌控权。 单角度域验证方式 多角度域验证方式 域验证并不是什么新问题,但在验证过程中还存在很多的漏洞,这意味着网络攻击者可以诱使CA机构错误的颁发证书。通过多角度域认证,网络攻击者需要同时破坏三个不同的网络路径,这不仅大大提高了安系数,而且在互联网拓扑社区中也能更快发现网络攻击行为。 在新闻稿中,Let’s Encrypt特别感谢了普林斯顿大...阅读全文

博文 2020-02-21 13:28:45 debian.cn

W3C 宣布:WebAuthn 成为正式 Web 标准

器去年就已实现了对 WebAuthn 的支持。自去年 12 月以来,苹果就在 Safari 的预览版中支持 WebAuthn。 W3C CEO Jeff Jaffe 表示:“现在是时候让服务提供商和企业采用 WebAuthn 了。它可以帮助避密码被攻击和泄漏风险,从而提升 Web 用户在线体验的安性。W3C 这一标准建立了 Web 范围的互操作性指导,为 Web 用户和他们访问的站点设定了一致的期望。W3C 正致力于在自己的站点上实现这一最佳实践。” WebAuthn 目前已经在 Dropbox、Facebook、Github、Salesforce、Stripe 和 Twitter 等网站上实现了。W3C 希望其他网站也能加入采用 WebAuthn,从而在整个网络上实现更多的无密码登录。...阅读全文

博文 2019-03-05 09:03:12 debian.cn

Linux基金会宣布长期支持内核分支

在布拉格举行的LinuxCon Europe上,Linux基金会宣布了针对消者电子产品的长期支持内核分支“Long Term Stable Kernel Initiative (LTSI)”,旨在减少开发定制移动或嵌入式Linux平台的成本。 LTSI将提供可连续使用2到3年的稳定版内核,消电子产品的生命周期也就二到三年左右。LTSI将每年发布一个新内核版本,此后两年定期提供更新。LTSI由Linux基金会管理,将与行业合作伙伴合作开发,该项目已经吸引了日立、LG、松下、索尼和东芝等大型硬件制造商。...阅读全文

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