InfraPub 为您找到相关结果 593

译:Kubernetes 最佳实践

的 AKS(Azure Kubernetes 服务)或 Amazon Web Services 上的 EKS(亚马逊弹 Kubernetes 服务)。利用这一点意味着底层基础设施将由云服务商管理,并且可以更轻松地完成有关扩展集群的任务,例如添加和删除节点,而让工程师管理 K8s 集群上运行的内容本身。升级Kubernetes版本除了引入新功能外,新的 K8s 版本还包括漏洞和安全修复,这使得在集群上运行最新版本的 K8s 非常重要。对旧版本的支持可能不如新版本好。然而,迁到新版本时应谨慎对待,因为某些功能可能会被废弃,也可能会添加新功能。此外,在升级之前,应检查集群上运行的应用程序是否与较新的目标版本兼容。监控集群资源和审计策略日志监控 K8s 控制平面中的组件对于控制资源消耗非常重要...阅读全文

博文 2022-09-13 19:32:21 atbug.com

Golang 操作 Kafka 样例

有更好的吞吐量,内置的分区,冗余及容错,这让Kafka成为了一个很好的大规模消息处理应用的解决方案。消息系统 一般吞吐量相对较低,但是需要更小的端到端延时,并尝尝依赖于Kafka提供的强大的持久保障。在这个领域,Kafka足以媲美传统消息系统,如ActiveMR或RabbitMQ 站点的用户活动追踪: 为了更好地理解用户行为,改善用户体验,将用户查看了哪个页面、点击了哪些内容等信息发送到每个数据中心的Kafka集群上,并通过Hadoop进行分析、生成日常报告。 流处理:保存收集流数据,以提供之后对接的Storm或其他流式计算框架进行处理。很多用户会将那些从原始topic来的数据进行 阶段处理,汇总,扩充或者以其他的方式转换到新的topic下再继续后面的处理。例如一个文章推荐的处理流程...阅读全文

博文 2023-01-10 13:46:09 掘金

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

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

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

Git 介绍与使用详解

HEAD README //将README除暂存 3.4.2撤消对文件的修改 $ git status Changes not staged for commit: (use "git add ..." to update what will be committed) (use "git checkout -- ..." to discard changes in working directory) modified: README.md 所以 git checkout -- README.md //撤销README.md中的改动 3.5提交更新(commit) git commit -m 'message' //提交到本地仓库 建议每次修改后提交,要对比修改的地方...阅读全文

博文 2017-02-25 09:00:27 程序员

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

索容易许多。 创建大文档集合 MongoDB 乐于把最大 16MB 的文档置于集合中,而 GridFS 设计用于超过 16MB 的大文档。但是,可以容纳大文档并不意味着那是一个好主意。MongoDB 在单个文档的大小为几 KB 时表现最好,处理它们的方式更像宽 SQL 表的行。大文档会导致 多种能问题 。 使用大数组创建文档 文档可以包含数组。最好是把数组元素的数量保持在四位数以下。如果数组频繁添加,会使得包含它的文档过大,那样, 它在磁盘上的位置就需要动 ,反过来,这意味着 每个索引都必须更新 。当一个包含大数组的文档重新索引时,由于 每个数组元素都有一个单独的索引条目 ,所以会发生大量的索引重写。此外,这种重新索引在这类文档插入或删除时也会发生。 为了最小化这个问题,MongoDB...阅读全文

21款必不可少的Ubuntu桌面应用程序

、Shotcut和Lightworks。 8. Dropbox云存储 Dropbox提供一款官方的Linux客户软件,与Ubuntu桌面完美地整合起来,让你可以迅速有选择地从其服务同步文件或同步到它的服务,立即备份新文件和执行更多操作。 平时不用Dropbox?在Ubuntu 16.04 LTS及以后的版本上,可以直接在Ubuntu上使用Google Drive。 9. Franz通讯客户软件 使用多协议即时通讯软件的日子早已一去不复返,如今唱主角的大多是专有的动型服务。 你想在Ubuntu上使用WhatsApp、Facebook Messenger、Telegram或者另一种知名的通讯服务来聊天?不妨试试Franz。 Franz让你可以连接至数量众多的服务,并提供一些基本的桌面整合功能。 10...阅读全文

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

谷歌公开了内部管理Infra层的两个工具的Paper

库?服务需要支持多大的流量? 这些都是很重要的问题,但服务是动态并且变化的:二进制版本不断更新,实例被添加和删除。架构也就需要随之演进:可能需要在某个特定的集群添加新的缓存,除一些过时的日志等等。 在2014年,我们发现自己不能充分地适应服务的灵活。对于绝大多数服务,我们使用人工编制的工作流来变更基础架构:推送x,然后y;手动执行不常见的变更。 但是团队通常需要管理数十个服务,每个服务都有很多job,数据库,配置以及自定义的管理流程。已有的解决方案因为如下两大原因无法扩展: 基础架构配置和API是异构的,并且很难连接在一起——比如,不同的服务使用不同的配置语言,抽象级别,存储和推送机制等等。因此,基础架构不一致,很难确定出通用的变更管理。生产变更管理的流程很脆弱,不理解变更之间的联系...阅读全文

博文 2023-01-08 11:23:20 CSDN博客

译:零信任对 Kubernetes 意味着什么

的最细粒度的身份验证和授权。虽然服务网格可以提供帮助,但 Kubernetes 安全仍然是一个复杂而微妙的话题,需要从多个层次进行了解。零信任是一种位于现代安全实践前沿的强大的安全模型。这也是一个容易引起轰动和炒作的术语,因此很难消除噪音。那么,究竟什么是零信任,对于 Kubernetes,它究竟意味着什么?在本文中,我们将从工程的角度探讨什么是零信任,并构建一个基本框架来理解它对 Kubernetes 运维和安全团队等的影响。介绍如果你正在构建现代云软件,无论是采用 Kubernetes 还是其他软件,可能都听说过“零信任”一词。零信任的安全模式变得如此重要,以至于美国联邦政府已经注意到:白宫最近发布了一份联邦零信任战略的备忘录,要求所有美国联邦机构在年底前满足特定的零信任安全标准...阅读全文

Linux系统诊断-内存基础

数。从而达到“写资源”合理利用的效果。然而,free命令所展示的buffer和cache 有点狭义的意思——free展示的buffer表示 块设备所占用的缓存 、free展示的cache表示普通文件占用的the page cache(缓存页) 。总之,buffer和cache使用的内存都是用来加速Linux读写能,如果有新的进程需要内存,系统会将buffer和cache占用的内存回收,并重新分配给进程使用。2.4 其他内存概念RSS & VSZ & PSS & USSRSS(Resident Set Size):进程实际使用的物理内存大小,包括sharedMem。VSZ(Virtual Memory Size):进程所有能够访问到的内存大小,包括因为缺页中断,被swap出去的内存大小,以及...阅读全文

博文 2021-02-11 14:22:42 SegmentFault 思否

基于thanos搭建分布式prometheus

: path: /data/thanos-receive-data type: DirectoryOrCreate - name: thanos-receive-config configMap: name: thanos-receive-config 细节大家可以自己慢慢看,我讲一下关键: 用statefulset部署集群,因为这是一个有状态的存储集群,不能随便漂。 因为是分布式存储集群,要通过POD亲和避免2个POD跑到1个Node上。 核心配置是声明receive集群的地址列表,这里利用headless service可以直接拿到每个POD的dns name,是有规则的。 每个thanos receive实例的启动参数中指定replica标签唯一标识它。 thanos-receive集群的...阅读全文

博文 2021-03-01 13:02:46 鱼儿的博客

百度开源项目 ECharts 首进 Apache 孵化器

的定制能力。ECharts 底层依托了开源渲染引擎 ZRender ,支持 Canvas 和 SVG 等多种方式的渲染,支持 PC 、动端、数据大屏、服务端渲染等多种设备场景。 目前,在 2018 年初发布的新版本 ECharts (4) 中,一些常用图表已支持最高达千万级的数据可视化,并且提供了小程序、无障碍访问等支持。基于 WebGL 的 ECharts-GL 能支持各种 3D 图表渲染、以及海量数据的渲染加速。目前,各种基于 ECharts 的扩展库,以及相关的可视化服务系统已经形成了丰富的产品体系和活跃的社区环境。ECharts 目前在 GitHub 上拥有 25k+ 的关注和 2k+ 的相关项目。大量的社区的反馈和贡献使 ECharts 不断地迭代进化。 业内人士认为,进入...阅读全文

博文 2018-03-09 08:46:07 debian.cn

个人信息保护新规将出台 消费者被短信轰炸将成为历史

工业和信息化部将会同相关部门尽快发布实施《动互联网应用程序个人信息保护管理的暂行规定》(简称《规定》)。《规定》将为个人信息保护提供更加坚实的政策保障。在新规的引导下,多个电商平台已经主动加强了对客户信息的保护力度。 工业和信息化部信息通信管理局的人士近日透露:“在充分吸收社会各界意见的基础上,工业和信息化部会同相关部门制定了《规定》的征求意见稿,社会各界提出了一些好的意见和建议,我们正在研究采纳。在此基础上,尽快会同有关部门发布实施。” ![个人信息保护管理](https://wpfile.debian.cn/uploads/2021/06/f676e4a616f30fb.png) 在征求意见稿中,管理部门明确了App开发运营者的信息保护义务。 《规定》要求...阅读全文

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

2021 年每月(以及之后的双月刊)系列“ Debian 热门话题”(日文)撰写在日本组织一些当地 Debian 活动,尤其是东京。Debian 议程为贡献者和用户提供更好的 Debian “体验”。向用户提供“一些尝试”并听取他们的声音,然后在贡献者之间进行讨论。更多的基础设施变化,对 Web、Wiki、BTS、存储库等 Debian 基础架构进行更多更改。知识和技术的更新和转让,与新的贡献者讨论、转和改进旧的知识体系。此外,Hideki Yamane 还在展示页面中警告“我可能是 DPL 有史以来最差的候选人”:不擅长英语(可以使用 Eng“r”ish ;),所以无法回答一些复杂的问题。没有任何技巧来调解贡献者之间的争吵,只有:保持冷静,保持安全。​...阅读全文

Debian 8 (Jessie)下面如何安装卸载docker

Debian是使用非常广泛的系统,本篇文章第一部分讲述如何在Debian 8 (Jessie) 下面安装 Docker 环境,第二部分介绍了如何彻底的清理 Debian 8 上的 Docker 环境。 Debian 8 使用了3.16的内核,已经满足了docker运行的要求。但是因为安全方面的原因,docker.io 包并没有放在debian的stable源里面,而是放在了backports 源里面。为什么从jessie源里面除docker.io包,简而言之,是因为go语言包版本的问题。 Debian backports的介绍和使用可以参考本篇文章,或者官方站点的介绍。 安装Docker包之前,先设置安装源。 这里我们使用了Docker官方提供的Debian安装源。配置方法如下。新建一个...阅读全文

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

Linux 基金会与 RISC

,2010年诞生于加州大学伯克利分校,当时的Krste Asanovic教授希望寻找一个合适的CPU指令架构,但X86架构复杂臃肿、ARM架构需要授权费、开源的OpenRISC架构又太老旧了,所以他最终决定自己做个开源CPU架构,在2015年最终成立了RISC-V基金会,专门推动RISC-V发展,现在的RISC-V基金会成员也扩大到了80多人,包括Google、HP、西数等公司都开始支持RISC-V架构。 RISC-V指令集灵活、高效、开源还免费,非常适合做动处理器、IoT物联网、网络处理器等等低功耗、嵌入式设备,对ARM的威胁也是最大的,而且国内的公司也开始积极参与RISC-V生态系统,今年10月份在中国上海成立了中国RISC-V产业联盟,包括芯原微电子、北京君正、安徽华米、上海小蚁、苏州国芯...阅读全文

博文 2018-12-01 09:45:27 V 基金会合作推广开源芯片

五种绕过 Linux 命令别名的方法

或显示关于命令的信息。它带参数运行命令,会阻止 shell 函数查询或者别名,或者显示有关给定命令的信息。 方法 5 - 使用 unalias 命令的说明 要从当前会话的已定义别名列表中除别名,请使用 unalias 命令: unalias mount 要从当前 bash 会话中删除所有别名定义: unalias -a 如果要永久删除定义的别名,则必须删除别名的定义语句,确保你更新你的 ~/.bashrc 或 $HOME/.bash_aliases : vi ~/.bashrc #或者执行 vi $HOME/.bash_aliases 想了解更多信息,参考这里的在线手册,或者输入下面的命令查看: man bash help command help unalias help alias...阅读全文

博文 2018-03-08 13:33:02 debian.cn

Sam Altman的成功学|OneFlow

越长。一般来说人们身上背负的责任越少,就越容易施展身手。 8 大胆一点 在我看来,与轻松创业相比,人们多半会选择更具挑战的事业。因为后者往往更激动人心,能带来更大的成就感和满足感。 如果你在某个重大问题上取得了进展,就会有源源不断的人前来帮忙。志当存高远,不要害怕去做你真正想做的事情。 如果别人都在创办meme公司,而唯独你想创办一家基因编辑公司,那就去做吧,不要犹豫。 追随你的好奇心。那些让你感到兴奋的事情,通常也适用于别人。 9 足够坚定 很多人都不知道,只要你足够坚持,世界就会以你的意志为转。但大多数人甚至都不会去尝试,只单纯认为世界有其自身的运作规律。 人的潜力是巨大的,只要敢想就能做成很多事。但大多数人都会怀疑自我、过早放弃,同时又不够努力,种种原因导致大多数人无法充分发挥自身...阅读全文

OpenJDK 14 性能提升,但 OpenJDK 8 仍是王者

OpenJDK 14 已于近日 GA,其在能方面是否有改进、以及有哪些改进引起了不少开发者的关注。本文将会介绍通过运行新的基准测试以考察从 OpenJDK 8 至 14 的所有主要发行版本,同时考察跨多个工作负载的 JVM 能,以及 OpenJDK 14 与 JVM 先前版本相比能如何。 此次测试通过在被测试的每个发行版上使用相同的 Java 字节码编译的 Java 程序来查看 JVM 的能,并使用被测软件包的参考/上游编译版本。为了保证测试受干扰的因素将降至最低,每次都使用相同的选项,除了交换用于测试每个发行版的 OpenJDK x86_64 Linux 构建之外,没有进行任何其他更改。 通过使用 Phoronix 的测试套件,测试内容包含从 SPECjbb 到 Java 2D...阅读全文

博文 2020-03-22 08:46:01 debian.cn

理解 Linux 的虚拟内存

都是你的,随便用,管够。可事实上呢,操作系统只是给它们画了个大饼,这些内存说是都给了 P1 和 P2,实际上只给了它们一个序号而已。只有当 P1 和 P2 真正开始使用这些内存时,系统才开始使用辗转挪,拼凑出各个块给进程用,P2 以为自己在用 A 内存,实际上已经被系统悄悄重定向到真正的 B 去了,甚至,当 P1 和 P2 共用了 C 内存,他们也不知道。 操作系统的这种欺骗进程的手段,就是虚拟内存。对 P1 和 P2 等进程来说,它们都以为自己占用了整个内存,而自己使用的物理内存的哪段地址,它们并不知道也无需关心。 分页和页表 虚拟内存是操作系统里的概念,对操作系统来说,虚拟内存就是一张张的对照表,P1 获取 A 内存里的数据时应该去物理内存的 A 地址找,而找 B 内存里的数据应该去物...阅读全文

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

我要彻底放弃 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

Linux基金会推出ACT项目 帮助开发者遵守开源许可证

Linux Foundation 正致力于通过组建新项目来改善开源的合规,他们近日推出了一个 Automated Compliance Tooling(ACT)项目,旨在整合对推进开源合规工具的投入,提高互操作和可用,从而帮助组织管理合规义务。 根据 Linux 基金会的说法,虽然开源代码的使用变得越来越流行,但使用开源代码有责任遵守该代码许可的条款,这会给用户和组织的管理带来挑战。 Linux 基金会战略高级主管 Kate Stewart 表示:“推进开源合规的工具或项目有很多,但大多没有资金,构建强大可用或高级功能的范围有限。我们从许多组织那里听说,目前存在的工具无法满足当前的需求。在 Linux 基金会下成立一个中立机构来处理这些问题,将使我们能够增加对合规工具开发社区...阅读全文

博文 2018-12-09 13:32:56 debian.cn

PostgreSQL 10 有哪些新特性

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

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

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

MySQL 8.0 系列的首个正式版 8.0.11 已发布,官方表示 MySQL 8 要比 MySQL 5.7 快 2 倍,还带来了大量的改进和更快的能! 需要注意的是从 MySQL 5.7 升级到 MySQL 8.0 仅支持通过使用 in-place 方式进行升级,并且不支持从 MySQL 8.0 降级到 MySQL 5.7(或从某个 MySQL 8.0 版本降级到任意一个更早的 MySQL 8.0 版本)。作为替代方案,在升级之前请对数据进行全量备份。 本文简要介绍 MySQL 8 中值得关注的新特和改进。 1. 能:MySQL 8.0 的速度要比 MySQL 5.7 快 2 倍。MySQL 8.0 在这些方面带来了更好的能:读/写工作负载、IO 密集型工作负载、以及高竞争...阅读全文

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

Red Hat牵头推进NVFS文件系统

由 Red Hat 工程师牵头的团队,正在为 Linux/开源社区研究名为 NVFS 的文件系统。NVFS 的目标是成为像英特尔 Optane DCPMM 那样的高速文件系统。NVFS面向基于DAX的设备(直接访问),并将整个设备映射成一个线地址空间,从而绕过 Linux 内核的块层(block layer)和缓冲区缓存。 在 NVFS 文件系统之前,开源社区有个用于持久内存的 NOVA 文件系统,但该项目在去年意外结束了。在没有另一个面向高能持久内存设备的 Linux 文件系统的情况下,Red Hat 的 Mikulas Patocka 一直在领导 NVFS 的工作。 尽管 NVFS 是面向基于 DAX 的设备,但它采用了与 EXT4 类似的设计方法,并与 Linux 的 VFS...阅读全文

博文 2020-09-16 09:44:28 debian.cn

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

FD_ISSET方法来轮询文件描述符,如果数据可读,则读取数据即可。 举个例子,假设此时连接上来了3个客户端,connection的文件描述符分别为 4,8,12,那么其read_fds文件描述符表(bitmap结构)的大致结构为 00010001000100000…0,由于read_fds文件描述符的长度为1024位,所以最多允许1024个连接。 而在select的时候,涉及到用户态和内核态的转换,所以整体转换方式如下: 所以,综合起来,select整体还是比较高效和稳定的,但是呈现出来的问题也不少,这些问题进一步限制了其能发挥: 文件描述符表为bitmap结构,且有长度为1024的限制。 fdset无法做到重用,每次循环必须重新创建。 频繁的用户态和内核态拷贝,能开销较大。 需要对文件描述符表进行...阅读全文

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

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

Refer to https://www.linkedin.com/pulse/system-design-rules-navneet-kumar-p6n7f/ 系统设计很复杂,它需要设计者有深厚的计算机知识和专业知识,没有一种通用的设计可以适应所有业务场景。尽管如此,还是有一些比较通用的规则可以供你设计系统时参考,也能帮助你在面试中摆脱困境。 1. 对于数据密集型系统 — 考虑使用缓存。 2. 对于写入量大的系统 — 使用消息队列进行异步处理 3. 对于低延迟要求 — 考虑使用缓存和 CDN。 4. 需要𝐀原子、𝐂一致、𝐈隔离、𝐃耐用兼容数据库 — 选择 RDBMS/SQL 数据库。 5. 对于非结构化数据——可以选择NoSQL...阅读全文

Netty+Nacos+Disruptor自研企业级API网关

Netty+Nacos+Disruptor自研企业级API网关 download:https://www.51xuebc.com/thread-566-1-1.html React18+TS+NestJS+GraphQL全栈开发示例 全栈开发是指一位开发人员可以熟练掌握前端、后端和数据库等多个领域的技术,能够完整地开发一个应用程序。在本文中,我们将介绍如何使用React18+TS+NestJS+GraphQL这个技术组合来进行全栈开发。 技术选型 在开始开发之前,我们需要选择合适的技术栈。以下是我们所采用的技术: React 18:React18是React框架最新版本,它具有更好的能、更好的可访问、更好的代码拆分等特点,可以提高开发效率和应用能...阅读全文

博文 2023-05-27 12:49:20 bianchengyuan123

单条512GB!Intel 开始部署傲腾非易失性内存条

10 月 31 日消息,Intel 宣布,已经为广泛部署傲腾数据中心用、非易失内存条(Optane DC persistent memory)做好了准备。 目前,Beta 项目已经启动,参与的 OEM(原始设备制造商,如华为、联想等)和 CSP 伙伴(云服务伙伴,如谷歌、阿里巴巴、亚马逊、微软等)可以更早地向客户接入由傲腾非易失内存条驱动的系统, 从而为 2019 年上半年批量上线奠定基础。 傲腾非易失内存基于 3D Xpoint 技术,和目前的傲腾 SSD 共享存储芯片,从而弥补了传统 DDR4 内存不具备的数据永固和大容量特, 单条最大 512GB,可配合 Xeon Scalable 处理器使用。 特别的,Intel 此次为傲腾 DC 非易市内存提供应用模式和内存模式,前者可理...阅读全文

博文 2018-10-31 22:13:41 debian.cn

Go 1.10 发布说明草案:预计于 2018 年 2 月发布

Go 1.10 还没发布,下面将简单介绍正在进行中的 Go 1.10 发布说明草案。Go 1.9 已于 2017 年 8 月发布,最新的 Go 1.10 预计将于 Go 1.9 发布六个月后 —— 2018 年 2 月发布。 Go 1.10 大部分的变更仍然集中在工具链、运行时和库的实现上。一如既往地,此版本依然会 保持与 Go 1.x 的兼容 ,官方表示几乎所有的 Go 应用程序都能像以前一样继续编译和运行。 语言特方面的改变 语言特方面没有实质的变化。 极端情况下,由无类型常量引起的变化已经弄清楚。因此,编译器也已进行升级,它可允许这样的索引表达式 x[1.0 << s] 通过编译,其中 s 是一个无类型常量。go/types 包也已完善。 方法表达式的语法 (grammar...阅读全文

博文 2017-11-18 13:59:12 debian.cn

Go 1.12 正式版发布,初步支持 TLS 1.3

Go 1.12 正式版发布了,距离上个正式发布版 Go 1.11 已经过去半年。跟往常一样,Go 1.12 保持了 Go 1 的兼容承诺,预期所有 Go 程序会像之前一样正常编译。 新版本的更新亮点有 TLS 1.3 的初步支持 ,模块(module)支持的提升(目标在 Go 1.13 默认启用 module 模式),支持 windows/arm,以及 提升 macOS & iOS 的前向兼容。 其中,安全传输层协议 TLS 1.3 比起以往版本,废弃了有安全隐患的 3DES、RC4、AES-CBC 等加密组件和 SHA1、MD5 等哈希算法,带来了更高的能和安全。 此外,值得关注的 Go 1.12 的更新内容有: 新版在语言规范方面没做改动;工具方面的一些变动,有:Go 1.12...阅读全文

Kong 1.3 发布:原生 gRPC 代理、上游 TLS 交叉认证

Kong 1.3 发布了,此版本亮点包括支持原生 gRPC 代理、上游 TLS 交叉认证,以及一系列新功能和能改进。 原生 gRPC 代理 越来越多的用户转向微服务架构,并且希望有对原生 gRPC 代理的支持,Kong 1.3 解决了这个问题,为支持 gRPC 的基础架构带来更多可控和可见。路由和服务条目的协议属现在可以设置为 grpc 或 grpcs,这对应于通过明文 HTTP/2(h2c)的 gRPC 和通过 TLS HTTP/2(h2)的 gRPC。 这一功能的关键优势在于: 简化运作流程。为用户的 gRPC 服务添加 A/B 测试、自动重试和断路保护,以提高系统可靠。更具观察。为 gRPC 服务增强日志记录、分析与 Prometheus 集成。 上游 TLS 交叉认证...阅读全文

博文 2019-08-22 14:54:57 debian.cn

Rust 1.39.0 发布,async/.await 稳定了

Rust 1.39.0 已经发布。此版本的亮点包括 async/.await,对 match 守卫 by-move 绑定的共享引用,以及函数参数的属。 async/.await 稳定 此版本 async/.await 特已经稳定,这意味着现在可以定义 async 函数和块,并进行 .await 操作。 async 函数通过 async fn 引入,被调用时会返回一个 Future,该 Future 是一个会挂起的计算,可以使用 .await 运行并完成计算。而除了 async fn,async{…} 和 async move{…} 块也可以用来定义“异步文字”,它们的行为像闭包。 match 守卫引用 by-move 绑定 在 Rust 中进行模式匹配时,一个变量,也就是“绑定”,可以...阅读全文

博文 2019-11-11 09:44:43 debian.cn

深入理解Golang之context

) } // 将子节点context依次取消 for child := range c.children { // NOTE: acquiring the child's lock while holding parent's lock. child.cancel(false, err) } c.children = nil c.mu.Unlock() if removeFromParent { // 将当前context节点从父节点上除 removeChild(c.Context, c) } } 可以发现cancelCtx类型变量其实也是canceler类型,因为cancelCtx实现了canceler接口。 Done方法和Err方法没必要说了,cancelCtx类型的context在调用cancel...阅读全文

博文 2021-01-27 09:05:27 知乎

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

论不休,发生各种宗教斗争。 你追逐潮流采用了某种时髦的语言,结果两个月之后发现深陷泥潭,痛苦不堪…… 虽然我已经不再过问这些世事,然而无可置疑的现实是,程序语言仍然是很重要的话题,这个情况短时间内不会改变。程序员的岗位往往会要求熟悉某些语言,甚至某些奇葩的公司要求你“深入理解 OOP 或者 FP 设计模式”。对于在职的程序员,程序语言至今仍然是可以争得面红耳赤的宗教话题。它的宗教之强,以至于我在批评和调侃某些语言(比如 Go 语言)的时候,有些人会本能地以为我是另外一种语言(比如 Java)的粉丝。 显然我不可能是任何一种语言的粉丝,我甚至不是 Yin 语言的粉丝 对于任何从没见过的语言,我都是直接拿起来就用,而不需要经过学习的过程。看了这篇文章,也许你会明白我为什么可以达到这个效果。理解...阅读全文

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

PostgreSQL 10 正式版发布,显著的性能提升

从 5 月份发布的 PostgreSQL 10 首个 Beta 测试版到今天已有小半年时间,今天 PostgreSQL 终于宣布了 PostgreSQL 10 正式版。 全新的 PostgreSQL 10 正式版值得关注的新特包括: 使用基于发布和订阅机制的逻辑复制 声明式的表分区 提升了查询的并发 显著的能提升 更强的基于 SCRAM-SHA-256 密码认证机制 提升了监控和控制功能 详细的 PostgreSQL 10 新特描述请看 这里 。 官方发行说明请看 https://www.postgresql.org/docs/10/static/release-10.html?x=1 。 同时这里有一份 PDF 文档 通过实例详细介绍 PG 10 的新特。...阅读全文

博文 2017-10-09 10:15:08 debian.cn

单核心 IOPS 突破 1000 万,Linux 5.16 有望大幅提升 I/O 性能

Linux block 子系统的负责人 Jens Axboe 目前就职于 Facebook,他也因开发了 IO_uring 而闻名,他对 IO_uring 的不断开发与优化使得 Linux 系统的 I/O 能得到巨大提升。一周前,Jens Axboe 开始对内核的 I/O 能进行了新一轮的优化,以便在单个 CPU 核心上获得 800 万 IOPS。经过一周时间的努力,每个核心能够实现 890 万左右的 IOPS,就当大家以为这个数字已经达到他所使用的硬件极限,没有更多优化空间时,本周他又成功地将每个核心的 IOPS 推到了 1000 万。IOPS(Input/Output Operations Per Second)是一个衡量电脑储存装置(如 HDD、SSD)输入/输出能高低的指标...阅读全文

博文 2021-10-27 10:32:50 joseph

Ryzen发布两周:AMD 称表现达到预期 四月发布更新

在被英特尔碾压多年之后,AMD 终于“平地一声惊雷”般地推出了可之平起平坐的首批 Ryzen 系列高端处理器。尽管不少人对 Ryzen 的超线程(SMT)、互联、Windows 调度、以及较小的动态频率等方面的表现存有疑虑,但 AMD 证实 Ryzen 已经达到了预期。在发布两周之后,AMD 表示 Ryzen 在大多数情况下的表现良好,且无需 Windows 等方面进行太大的调整以充分发挥其能。 显然,AMD 留意到了有些人在对比测试 Ryzen 在 Windows 7 / 10 系统中的表现。该公司表示其已意识到这件事,所以会与开发者携手给软件带来“针对的优化”,以更好地发挥新处理器的潜力。 此外,在许多情况下,可以通过微小改动来提升 Ryzen 在特定应用程序中的能。调查发现,只...阅读全文

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

RethinkDB的简单介绍

,TokyoTyrant及Schooner Membrain等。RethinkDB为各种应用压力下提供高能和高可靠 支持,主要应用在下面一些场景: 用来处理一些其它方案无法解决的服务负载(如:要求快速的服务启动,在数据量超出内存大小后还要有高的能,处理各种不稳定的读写压力,处理大量数据等) 提供能与数据稳定之间的精细调控 大大提高你的缓存层和key-value存储的能,在你现有的硬件条件下,能支持更高的应用负载。 使用费用 RethinkDB目前提供两个版本的支持,一个免费版的,一个商用版的。商用版本的价格是每年每台机器$1500。免费版提供目前所有功能,提供后续所有安全相关的升级。但是新功能的升级只保证在付费版本中保持更新,另外商用版本还提供技术支持。...阅读全文

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

Django 2.2 发布,LTS版来了

Django 2.2 已正式发布 ,这是一个长期支持版本(LTS),亦即意味着官方会提供 至少三年 的安全问题和数据丢失修复。除此之外,它还会接收到修复崩溃错误、新引入特中主要功能错误的程序,以及修复接下来八个月到 2019 年 12 月为止关于旧版 Django 的回归错误。 2.2 新特:https://docs.djangoproject.com/en/2.2/releases/2.2/下载地址:https://www.djangoproject.com/download/升级指南:https://docs.djangoproject.com/en/2.2/howto/upgrade-version/ 值得关注的新特 HttpRequest.headers 可访问请求者的...阅读全文

博文 2019-04-03 13:55:30 debian.cn

一位资深Java架构师的晋级心得

Java 架构师是什么?是一个既需要掌控整体又需要洞悉局部瓶颈并依据具体的业务场景给出解决方案的团队领导型人物。一个架构师得需要足够的想像力,能把各种目标需求进行不同维度的扩展,为目标客户提供更为全面的需求清单。 所谓架构师,思考的是全局的东西,是如何组织你的系统,以达到业务要求,能要求,具备可扩展(scalability),可拓展(extendability),前后兼容等。可能涉及到的东西包括了从硬件到软件的方方面面。 架构师在软件开发的整个过程中起着很重要的作用。 架构师的主要任务不是从事具体的软件程序的编写,而是从事更高层次的开发构架工作。他必须对开发技术非常了解,并且需要有良好的组织管理能力。可以这样说,一个架构师工作的好坏决定了整个软件开发项目的成败。 在成为Java架构...阅读全文

博文 2019-01-13 22:49:22 debian.cn

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

Facebook 已于上周正式发布 JavaScript 包管理器 Yarn 1.0。 Facebook 表示 GitHub 上有 175,000 个项目在使用 Yarn,许多大大小小的公司和广大开源社区也在使用 Yarn,每个月通过 Yarn 下载的包数量接近 30 亿个。此外,Yarn 现在也已预安装在诸如 CircleCI、Travis CI 和 AppVeyor 这些主流的持续集成平台上。 Yarn 具有极佳的伸缩,可以支持成千上万个直接或间接的包依赖。Yarn 的设计初衷是保证稳定、弹和高能。基于这些原则,Yarn 1.0 带来了更多的新特,希望能够帮助 Yarn 社区更快地发展,构建更好的项目。 Yarn 1.0 中值得关注的新特 Yarn 工作区 (Yarn...阅读全文

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

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

海盗船发布1.6TB NVMe SSD新品:采用PCIe 3.0 x4接口

海盗船(Corsair)刚刚为 Neutron NX 500 系列固态硬盘驱动器添加了 1.6TB 的新版本,其售价为 1575 美元(约 10389 RMB),折合每 GB 容量 0.98 美元。 在 ATTO 基准测试中,其持续读 / 写能分别达到了 3000MB/s 和 2800MB/s;换用 CrystalDiskMark 的话,则是 2800MB/s(读取)和 1600MB/s(写入)。随机读 / 写能上,1.6TB 版本分别可达 300k 和 270k IOPS 。 不过与外媒在今年早些时候评测过的 400GB 版本相比,1.6TB 版本 NX500 NVMe SSD 的价比反而并不高。如果官方的读写数据是可以相信的,那 1.6TB 版本的售价未免也太高了。 作为对比,三...阅读全文

蓝牙 5.1 规范正式公布:达成厘米级定位精度

得益于传输距离更广(300 米)、功耗更低、速度更快(2Mbps)、可同时连接两个音频设备等特,蓝牙 5.0(2016 年 6 月正式发布)正快速普及中。 本周,蓝牙 SIG 组织宣布, 蓝牙 5.1 已交付开发者,新变化中最值得一说的便是位置查找( “direction finding” )特。蓝牙组织希望借助 5.1 标准,取代 Wi-Fi 的辅助定位角色,为需要 GPS 等位置服务的场景助力, 包括确定距离甚至精确位置 。 蓝牙 SIG 称,5.1 的定位精度可达厘米级(目前 1 到 10 米),在室内导航、快速找寻手环/遥控板等情景,将发挥重要作用。 其它特还有优化的 GATT(通用属配置文件),提高配对和通信速度;有助于避免数据包冲突的随机信道索引确保蓝牙广告抵达率等。...阅读全文

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

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

Java 12 / JDK 12 正式发布

自 2 月 7 日开始,Java/JDK 12 就进入了 RC 阶段。按照发布周期,美国当地时间 3 月 19 日,也就是今天 Java 12 正式发布了! △ JDK 12 GA 发布 Java 12 带来了一系列新特: 189Shenandoah: A Low-Pause-Time Garbage Collector (Experimental) 低暂停时间的 GC230Microbenchmark Suite 微基准测试套件325Switch Expressions (Preview) Switch 表达式334JVM Constants API JVM 常量 API340One AArch64 Port, Not Two 只保留一个 AArch64 实现341Default...阅读全文

博文 2019-03-20 12:46:27 debian.cn

团队激励的八大方法,让你的团队成员更加高效地达成目标

激励是指激发人的行动动机的心理过程,是一个不断朝着期望的目标前进的循环的动态过程。简言之,就是在工作中调动人的积极的过程。激励是对人的一种刺激,是促进和改变人的行为的一种有效的手段。激励的过程就是管理者引导并促进工作群体或个人产生有利于管理目标行为的过程。每一个人都需要激励,在一般情况下,激励表现为外界所施加的推动力或吸引力,转化为自身的动力,使得组织的目标变为个人的行为目标,促进团队合作的的动力,使企业更高效的达成既定目标!团队激励的八大方法1、为团队成员设立共同的奋斗目标依照激励理论,共同的奋斗目标是调动全体团队成员积极的利器,这个目标必须是可衡量的和可实现的。人的动机与行为都有一定的目的,而建立明确的目标,就能有效地激发和引导人们的动机,鼓舞和激励人们采取积极的方法去努力奋斗...阅读全文

PHP 7.2 Beta 的测试:PHP 仍然越来越快

PHP 7.2 Beta 1 已于上周发布,预计将于 11 月发布正式版。 PHP 7.2 Beta 1 实现了更多的 Sodium 扩展,针对现代和易于使用的加密、改进 opcache、无效 UTF-8 数据更好的 JSON 解码这些方面,以及自 PHP 7.1 以来的许多错误修复和其他改进。最新的版本和更多的细节可以通过 PHP.net 找到。 测试的系统信息 先看看 PHP 7.2 Beta 1 与 PHP 7.1.7, 7.0.21, 和 5.6.31 的能对比 可以明显看到,在能测试方面,从 PHP 5.6 到 PHP 7.0,能有了显著的增长。不过这并没什么值得惊喜的,但看到使用 PHP 7.2 Beta 1 也有了很大的能提升这倒是有点意想不到。由上图可看到,PHP...阅读全文

博文 2017-08-01 09:44:40 debian.cn

Everspin宣布千兆级芯片ST

据外媒报道,磁随机存取内存(MRAM)将在今年达到一个新的里程碑。Everspin宣布开始尝试打造1Gb (128MB)的ST-MRAM芯片,另外他们已经将这款高寿命、非易失的内存芯片生产提上议程。 Everspin的ST-MRAM能够提供持久的记忆能力,相较于普通的NAND闪存技术,它可以减少写入放大倍数并拥有更好的耐用。 这款新芯片采用的则是一个兼容DDR4的接口。这家公司表示,供应商可以利用持久的记忆技术设计企业级SSD或对现有的储存产品展开进一步的改善。 据了解,ST-MARAM的密度要比公司旗下现有的任何256MB(32MB)芯片大得多。Everspin指出,从Global Foundries的40nm工艺到foundry 28nm工艺的转变是开发这种千兆级芯片的关键,另外...阅读全文

谷歌开源更快更高效的 TensorFlow 运行时 TFRT

TensorFlow 官方博客宣布开源新的运行时 TFRT,该运行时提供了统一的、可扩展的基础结构层,并在各类硬件上均具有高能。 TFRT 产品经理 Eric Johnson 表示,TFRT 将取代现有的 TensorFlow 运行时。原有的 TensorFlow 运行时最初是为图形执行和训练模型的工作负载而构建的。与之相比,新的运行时将急切的执行需求放在第一位,同时特别强调架构的可扩展和模块化。 它能够很好地满足开发复杂模型时寻求更快迭代时间的开发者需求、在训练和服务生产模型时改进能的需求,以及希望以模块化方式将边缘和数据中心设备集成到 TensorFlow 中的硬件制造商需求。 简单来讲,TFRT 可以减少开发、验证和部署企业级模型所需的时间。 TFRT 利用了 eager 和图...阅读全文

博文 2020-05-01 09:30:31 debian.cn