InfraPub 为您找到相关结果 204

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

OpenXuantie 的多操作系统(AliOS、FreeRTOS、RT-Thread、Linux、Android 等)的... 28 10 阿里发布自研 CPU 芯片倚天 710 10 月19 日,2021 云栖大会现场,阿里巴巴旗下半导体公司平头哥发布自研云芯片倚天 710。该芯片是业界性能最强的 ARM 服务器芯片,性能超过业界标杆 20%,能效比提升 50% 以上。倚天 710 是阿里云推进「一云多芯」策略的重要一步,也是阿里第一颗为云而生的 CPU 芯片,将在阿里云数据中心部署应用。 和 2019 年发布的 AI... 31 5 GitLab 正式在纳斯达克上市,市值接近 150 亿美元 GitLab 周四正式在在纳斯达克上市,股票代码为 "GTLB"。据了解,GitLab 周三晚些时将其 IPO...阅读全文

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

C++ 夺冠!成为 TIOBE 2022 年度编程语言

在上个月预想的 C++、C、Python 三种选语言中,C++ 脱颖而出,成为 TIOBE 2022 年度编程语言的最终获得者! C++ 摘得桂冠 近段时间来,C++ 的发展有目共睹,其在上个月甚至首次超过了 Java,位居榜单第三的位置。现如今之所以赢得年度编程语言的称号,TIOBE 官方也进行了总结与回顾。 其表示,「C++ 受欢迎的原因是它出色的性能,同时 C++ 是一种高级面向对象语言。正因为如此,众多开发者可以使用 C++ 快速开发庞大的软件系统(超过数百万行代码),而不一定会陷入维护的噩梦循环中。 C++ 崛起的另一个原因是它“最近”不断发布具有有趣功能的新语言标准。第一个标准被称之为 C++11,它于 2011 年发布,这是自 1998 年以来,C++ 第一次发生的重大变化...阅读全文

博文 2023-01-10 06:42:12 CSDN博客

Twitter确认接受440亿美元收购提议 埃隆·马斯克将完全控制该公司

Twitter公司今天在一份新闻稿中宣布,该公司已经接受了埃隆·马斯克以440亿美元收购该公司的提议。最终结果是马斯克以每股54.20美元的价格收购了该公司,这与他本月早些时提出的初始报价中的价格相同。 Twitter是最著名的社交媒体平台之一,现在正式成为埃隆-马斯克不断扩张的商业帝国的一部分。 新闻稿声明指出: "根据协议条款,在拟议的交易完成后,Twitter股东将为他们拥有的每一股Twitter普通股获得54.20美元的现金。该收购价格比2022年4月1日Twitter的收盘价溢价38%,这也是马斯克先生披露他在Twitter约9%的股份之前的最后一个交易日。" 正如我们在过去几天里广泛报道的那样,这个传奇故事始于4月初,当时马斯克披露了他在Twitter...阅读全文

Proxy-Go v6.6 发布啦

持在 tls 和 kcp 之后进行自定义加密, 也就是说自定义加密和 tls|kcp 是可以联合使用的, 内部采用 AES256 加密, 使用的时只需要自己定义一个密码即可。 底层压缩高效传输,http(s)\sps\socks 代理在 tcp 之上可以通过自定义加密和 tls 标准加密以及 kcp 协议加密 tcp 数据, 在加密之后还可以对数据进行压缩, 也就是说压缩功能和自定义加密和 tls|kcp 是可以联合使用的。 安全的 DNS 代理,可以通过本地的 proxy 提供的 DNS 代理服务器与上级代理加密通讯实现安全防污染的 DNS 查询。 负载均衡, 高可用,HTTP(S)\SOCKS5\SPS 代理支持上级负载均衡和高可用, 多个上级重复-P 参数即可. 指定出口 IP...阅读全文

博文 2018-12-01 09:52:14 Go v6.6 发布 新增智能模式

Prometheus 常用 PromQL 语句样例

[4h], 3600)时间获取 Unix 时间,以秒为单位: time()获取最后一次成功运行的批处理作业的年龄: time() - my_batch_job_last_success_timestamp_seconds查找一小时内没有成功的批处理作业: time() - my_batch_job_last_success_timestamp_seconds > 3600缺失数据处理当输入向量为空时,创建一个一个输出序列: absent(my_metric_name)当输入的范围向量5分钟内都是空的时,创建一个空的输出序列: absent_over_time(my_metric_name[5m])标签操作用 - 分隔符连接两个标签的值: label_join(my_metric_name...阅读全文

博文 2021-02-09 11:07:15 51CTO博客

如何在 Linux 上安装 Intel 微代码固件

revision 0x1c, date = 2015-02-26 [ 1.604672] microcode: sig=0x306a9, pf=0x10, revision=0x1c [ 1.604976] microcode: Microcode Update Driver: v2.01 , Peter Oruba 如果你是 CentOS 系列的系统,需要安装的对应的包名为 linux-firmware 和 microcode_ctl。 如何更新/安装从 Intel 网站上下载的微码 只有在你的 CPU 制造商建议这么做的时,才可以使用下列的方法去更新/安装微码,除此之外,都应该使用上面的方法去更新。大多数 Linux 发行版都可以通过包管理器...阅读全文

博文 2018-03-07 19:37:47 debian.cn

如何对一个deb包解压、修改、重新打包 全过程

有这么麻烦,只需要一个命令就搞定了。 dplg -X XXXX.deb XXXX前面 制作deb包 牛晨光的博客 07-20 4806 deb 是 Debian 系 Linux 使用的软件包格式,也是我最欣赏的软件包格式。我所知道的打 deb 软件包的方法有两种,一种是使用 checkinstall,另一种是使用 dpkg。checkinstall 不仅仅可以用来打 deb 包,还可以打 rpm 和 tgz 包, deb包的解压,修改,重新打包方法 weixin_34197488的博客 06-26 424 出于多种原因,有的时需要直接对deb包中的各种文件内容进行修改1、准备工作:mkdir -p extract/DEBIANmkdir build2、解包命令为:#解压出包中的文件到...阅读全文

博文 2021-02-16 11:44:48 CSDN

深入了解Docker背后的namespace技术

,我们往往不能预想到最终结果全貌。不论怎样,我们就把 CLONE_NEWNS添加到clone_flags变量中,结果就是, int clone_flags = CLONE_NEWNS | SIGCHLD;,再来编译mount.c并运行同样的命令。 > cp skeleton.c mount.c > gcc -o mount mount.c > ./mount mount 这次没有任何变化,为何?因为运行在新的mount namespace中的进程,在底层系统下仍然拥有一个/proc视图。结果就是新的进程继承了底层挂载点的视图。我们有一些方法来阻止出现这样的结果,比如说,使用 pivot_root,将在后续的博客中详细介绍。 然而,有一种方法,我们可以尝试在新的mount...阅读全文

博文 2015-05-17 10:03:00 debian.cn

Apollo 配置中心简单介绍

本章将介绍如何在Apollo配置中心中删除已经发布的项目。 专栏目录: 携程 Apollo 配置中心 | 学习笔记 序章 欢迎关注个人公众号: Coder编程 欢迎关注个人网站:https://coder-programming.cn/ 一、前言 之前一直学习SpringCloud, 对于配置中心,一直也是采用的Spring Cloud Config,但是用久了,发现很多地方满足不了要求,同时也感觉很low(个人看法勿喷)。在学习Spring cloud config 的时也有听到过携程的apollo,但一直没时间去弄。直到昨天看了一张图,如下:使我下定决心去看看携程的apollo配置中心。 这张图也算是综合对比了spring cloud config,netflix archaius...阅读全文

博文 2021-04-09 17:53:51 CSDN

改善 Debian Linux 软件包管理的七款工具

说,你可以用它来设定软件包安装时向你提出哪种类型的问题、重置问题的优先级,或者尽管软件包破损仍强行安装。 dpkg-reconfigure可用来配置基于Debian系统的几乎方方面面。由于出现了配置安装系统的其他工具,它的多用途性在丧失,不过dpkg- reconfigure仍可用于配置诸如此类的特性:时区、视频驱动程序、打印机和扫描仪。Ubuntu弃用了dpkg- reconfigure,但是它在其他基于Debian的发行版中仍很有用。 4.netselect-apt 如今,互联网连接的速度已经非常快。然而,一些软件包代码库的速度仍比其他代码库要快;在使用高峰期间,流行的软件包代码库会降低速度。有时,根本就缺少高速连接。 对于注重速度的那些人来说,netselect-apt为你的位置列出...阅读全文

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

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

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

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

Kotlin 一统天下?Kotlin/Native 支持 iOS 和 Web 开发

首届官方举办的 Kotlin 专题会议 KotlinConf 于昨天正式开幕,来自世界各地约 1200 名与会者齐聚旧金山,在这场盛大的 KotlinConf 大会主题演讲中,Kotlin 的首席语言设计师 Andrey Breslav 公布了一系列与 Kotlin 紧密相关的重大发展成果。 首届官方举办的 Kotlin 专题会议 KotlinConf 于昨天正式开幕,来自世界各地约 1200 名与会者齐聚旧金山,在这场盛大的 KotlinConf 大会主题演讲中,Kotlin 的首席语言设计师 Andrey Breslav 公布了一系列与 Kotlin 紧密相关的重大发展成果,我们不妨关注一下。 Kotlin 1.2 RC 首先宣布了 Kotlin 1.2 RC 版(即 1.2 首个选...阅读全文

博文 2017-11-05 19:28:14 debian.cn

Kubernetes v1.21 新特性预览

Secret 时,大量的 watch 事件会急剧增加 kube-apiserver 的负载,并会导致错误配置过快传播到整个集群。在这种情况中,给不需要经常修改的 ConfigMap 和 Secret 设置 immutable: true 就可以避免类似的问题。注意,设置 immutable: true 之后,ConfigMap 和 Secret 内容更新时需要删除并重新创建,且使用它们的 Pod 也需要删除重建。IPv4/IPv6 双栈支持 BetaIPv4/IPv6 双栈支持在 v1.20 的时进行了重构,并将于 v1.21 中进入 Beta 版本(默认开启),kubeadm 也已经支持创建 IPv4/IPv6 双栈集群。该特性开启后,Kubernetes Service 和 Pod 会同时分配...阅读全文

博文 2021-03-30 20:24:36 mp.weixin.qq.com

项目总结报告应该怎么写

每次项目进度都很紧张、项目发版时间总是一延再延、每个版本bug数量堆积成山、测试期间各种bug总是层出不穷、临近上线发现严重bug,如果项目经理总是被这些问题围绕,那么项目总结迫在眉睫。项目经理如何进行项目总结才能让项目顺利进行,让领导一看就喜欢,今天把经验分享给大家,帮助你做好项目总结。总结的思维模式想写好一份项目总结,总结人员必须具备一定的结构化思维,对问题、数据进行结构分析,且能够通过结构化思维表达出来。结构化思维具备以下四个特点。​结论:问题比较多的时,要进行抽象归纳,做到抓大放小,先解决当前最主要的问题。总结的目的✤对项目进行复盘,发现项目中存在的问题,针对问题找到根本原因并提出解决方案;✤提高项目质量,让项目“健康”前行;✤通过数据衡量当前版本的质量,对项目整体情况进行评估...阅读全文

CentOS停止维护后,我们应该用什么操作系统?

使用 Debian 安装程序,它提供了更多可以微调的选项,包括使用自动化的网络安装工具的功能。Debian 提供平滑的更新。保持操作系统最新十分容易,不论您是想升级到一个全新的发布版本,还是只想升级一个单独的软件包。Debian 是许多其他发行版的基础。许多非常受欢迎的 Linux 发行版,例如 Ubuntu、Knoppix、PureOS 以及 Tails,都基于 Debian。我们提供了所需的所有工具,使得每个人在有需要的时都可以制作自己的软件包,以补充 Debian 档案库里没有的软件包。Debian 项目是一个社区。所有人都可以成为 Debian 社区的一员;您不必是一名开发者或系统管理员。Debian 有一个民主的治理架构。由于所有 Debian 项目的成员都享有平等的权利,所以...阅读全文

Kubernetes 1.7:安全加固、有状态应用更新等

项来向 API 服务器添加自定义业务逻辑在对象创建的时进行更改,以及验证策略。 对于联合的集群,引入了基于策略的联合资源放置(Policy-based Federated Resource Placement),处于alpha状态,其基于自定义的要求如规则、定价或者性能。 废弃: 第三方资源(Third Party Resource,TPR)已经被自定义资源定义(Custom Resource Definition,CRD)取代,后者的API更加简洁,并且解决了 TPR beta 测试时出现的问题和边缘场景。鼓励从 TPR 迁移到 CRD,因为Kubernetes 1.9中社区会去掉TRP。 上面就是 Kuberenetes 1.7 关键特性的一部分。完整的列表可以查看发布说明。 采用 感...阅读全文

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

如何在 Debian 上添加和删除用户

您应该知道如何在一个新鲜的Linux服务器上执行的最基本的任务之一是添加和删除用户。当您创建一个新的系统,你往往只能给出默认root帐户。 虽然运行在root用户提供了大量的功能和灵活性,这也是危险的,可能是破坏性的。添加一个额外的,无特权的用户来执行常见任务几乎总是一个更好的主意。然后,您应为系统上可能有的任何其他用户创建其他帐户。 您仍然可以获取管理员权限,当你需要他们通过一个名为机制sudo 。 在本教程中,您将学习如何创建用户帐户,分配sudo特权,和删除用户。 如何添加用户 如果您作为root用户登录,您可以创建在通过键入任何时一个新的用户: adduser sammy 如果要在谁被赋予了非root用户登录, sudo特权,因为在证明初始服务器设置向导 ,您可以添加通过键入新用...阅读全文

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

Hadoop 核心 - HDFS 分布式文件系统详解

id,及所在的 DataNode 服务器)。 5. DataNode 数据存储 文件的各个 block 的具体存储管理由 DataNode 节点承担。每一个 block 都可以在多个 DataNode 上。DataNode 需要定时向 NameNode 汇报自己持有的 block 信息。 存储多个副本(副本数量也可以通过参数设置 dfs.replication,默认是 3) 6. 副本机制 为了容错,文件的所有 block 都会有副本。每个文件的 block 大小和副本系数都是可配置的。应用程序可以指定某个文件的副本数目。副本系数可以在文件创建的时指定,也可以在之后改变。 7. 一次写入,多次读出 HDFS 是设计成适应一次写入,多次读出的场景,且不支持文件的修改。 正因为如此,HDFS 适...阅读全文

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

会把这些信息填充到将要发送的 HTTP 请求头中: x509 证书使用 tls.TLSConfig 发送(包括 CA 证书)。bearer tokens 在 HTTP 请求头 Authorization 中发送。用户名和密码通过 HTTP 基本认证发送。OpenID 认证过程是由用户事先手动处理的,产生一个像 bearer token 一样被发送的 token。 2. kube-apiserver 认证 现在我们的请求已经发送成功了,接下来将会发生什么?这时就该 kube-apiserver 闪亮登场了!kube-apiserver 是客户端和系统组件用来保存和检索集群状态的主要接口。为了执行相应的功能,kube-apiserver 需要能够验证请求者是合法的,这个过程被称为认证。 那么...阅读全文

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

深入理解Golang之context

。这个时context就派上用场了。我们首先看看context的结构设计和实现原理。context是什么context接口先看Context接口结构,看起来非常简单。type Context interface { Deadline() (deadline time.Time, ok bool) Done() <-chan struct{} Err() error Value(key interface{}) interface{} } Context接口包含四个方法:Deadline返回绑定当前context的任务被取消的截止时间;如果没有设定期限,将返回ok == false。Done 当绑定当前context的任务被取消时,将返回一个关闭的channel;如果当前context不会被取...阅读全文

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

互联网协议正在发生变化

当上世纪九十年代互联网开始被广泛使用的时,其大部分的通讯只使用几个协议:IPv4 协议路由这些数据包,TCP 协议转发这些包到连接上,SSL(及后来的 TLS)协议加密连接,DNS 协议命名那些所要连接的主机,而 HTTP 协议是最常用的应用程序协议。 多年以来,这些核心的互联网协议的变化几乎是微乎其微的;HTTP 增加了几个新的报文头和请求方式,TLS 缓慢地进行了一点小修改,TCP 调整了拥塞控制,而 DNS 引入了像 DNSSEC 这样的特性。这些协议看起来很长时间都一成不变(除了已经引起网络运营商们的大量关注的 IPv6)。 因此,希望了解(甚至有时控制)互联网的网络运营商、供应商和决策者对这些协议采用的做法是基于其原有工作方式 —— 无论是打算调试问题,提高服务质量,或施加政策...阅读全文

域名与商标: 如何防止域名被仲裁

”、“梅花”等。从这一点上看,域名的独有性,似乎更好一些。 从商业的角度来看,域名因其独特性,可以把它当作一个企业的网上商标。不过,可以肯定地说,域名与商标没有绝对的联系。 在这个眼球经济时代,作为企业,最理想的状态,当然是希望它的实物商标与网上商标保持高度一致的,以使大众无论从哪个途径,都能将目光聚焦在它的身上,为此,企业们也付出了巨大的努力,比如商标之争比较有名的当属“加多宝”和“王老吉”,域名方面,作为米农,所听到见到的域名仲裁案例也不在少数。 由于域名和商标分属不同领域的不同系统,再加上时间差的原因,一般企业想要达到理想状态,是有难度的。比如说,自已注册的商标,其对应的域名不一定是未注册状态,这个时,域名权与商标权,甚至商号权、网站名称权等就形成了冲突。除了收购外,另外一个途径就是仲裁...阅读全文

博文 2019-01-18 14:59:59 debian.cn

journalctl 清理journal日志 - 九重霄

下面的逻辑来覆盖默认设置: 主配置文件最先被读取, 优先级也最低。 所有 *.conf.d/ 中的配置文件 都会覆盖主配置文件中的设置。 所有 *.conf.d/ 中的配置文件(无论位于哪个目录中), 统一按照文件名的字典顺序处理。 当多个配置文件都设置了同一个选项的时: (1)如果该选项仅接受一个单一值,那么仅以文件名最靠后(字典顺序)的那一个为准; (2)如果该选项可接受一个值列表,那么将会按照文件名的字典顺序将所有值列表拼接起来。 为了便于排序, 建议给所有 *.conf.d/ 中的配置文件 都加上两位十进制数字的文件名前缀。 如果系统管理员想要屏蔽 /usr/lib/ 目录中的某个配置文件, 那么最佳做法是在 /etc/ 目录中 创建一个指向 /dev/null 的同名符号链接...阅读全文

博文 2021-02-05 15:43:28 博客园

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

点 。 日志可以确保数据库在恢复时处于一致状态,它会保存日志写入时的所有数据。日志写入的时间间隔可以使用运行时选项 commitIntervalMs 来配置。 为了确保写入,就要确保 在配置文件中启用日志(storage.journal.enabled),而且提交间隔要和你能够承担的数据丢失相对应。 无索引排序 在搜索和聚合中,你经常希望排序数据。但愿那是在最后阶段完成的,在结果过滤之后,从而减少需要排序的数据量。即使在那个时,你需要 一个可以覆盖排序的索引 。单键索引或混合索引都可以。 当没有合适的索引可用时,MongoDB 就不得不在没有索引的情况下排序。对于排序操作中所有文档的总大小, 有 32MB 的内存限制 ,如果 MongoDB 达到了这个限值,它就会产生错误,或者有时 仅仅...阅读全文

阿里巴巴版 JDK 首发 GA 版 生产环境可用

某些测试用例,启动阶段跑分会有 10% 的提高。该特性在阿里巴巴的双 11 抢购场景中得到了大量验证。目前,阿里巴巴正在社区努力推进,希望通过 JEP 的方式将该功能推到上游 OpenJDK 社区。 下图是阿里一个应用在“双十一”期间使用 JWarmUp 时的效果: 说明:图中蓝线是正常启动 (默认开启分层编译),红线是启用 JWarmUp 的 CPU 使用率。 (1)是开启了 JWarmUp 选项,在应用启动时,流量进来之前积极加载和编译方法。(2)是流量进来的时刻。(3)是正常模式启动下,CPU 消耗 100% 维持了 70s。(注:作图省略了一部分数据)(4)对应的绿线是稳定后 CPU 的使用率。 可以看到应用 JWarmUp 后在流量进来的时 JWarmUp 可以减少大量 CPU...阅读全文

博文 2019-07-11 10:24:52 debian.cn

WebAssembly:无需容器的 Docker (下)

行比较:phpphp-wasmedge-aot在传统容器中运行的 php在 Wasm 容器中运行的 php-wasmedge-aot在下面所有的示例中,我们使用同样的 images/php/docroot/index.php 文件,让我们来看一下。简而言之,该脚本将:使用 phpversion 和 php_uname 展示解释器版本和它运行的平台打印脚本可以访问的所有环境变量的名称打印一条包含当前时间和日期的问消息列出根文件夹的内容 /

Hello from PHP running on ""

List env variable...阅读全文

博文 2023-01-03 06:39:46 spider

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

。 1. Geary电子邮件客户软件 Geary是一款开源桌面电子邮件客户软件,拥有一系列广泛的功能、一个方便的安装向导程序,并与Unity桌面整合起来。如果相比其他邮件客户软件(比如Outlook)你更熟悉Gmail,那么会觉得Geary用起来比默认的Ubuntu电子邮件应用软件Thunderbird更容易。 其他替代方案:WMail(Electron)、Evolution和Claws Mail。 2. 谷歌Chrome浏览器 Mozilla火狐Web浏览器已经安装在你的Ubuntu系统上;就大多数任务而言,它的表现不俗。但是如果你更多时是个谷歌用户,或者在Windows上用过Chrome,就会很高兴可以在Ubuntu上继续使用它。 除了内置和最新的Linux版Flash播放器外,你还可以用...阅读全文

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

OpenAI掌门人Sam Altman:AI的下一个发展阶段_OneFlow

希望到时会有比它更好的东西出现,不断突破创新很重要。在他看来,AI可以帮助人类创造出前所未有的新应用,这将是人类的巨大的进步和胜利,是真正的科技革命。 从大模型的商业化机会、AI+应用再到AI发展方向,Sam Altman在这场对话中分享了自己的见解。以下为对话内容,由OneFlow社区编译。 1 大模型的商业机会 Reid Hoffman:很多大型模型都通过API开放使用,能够衍生什么商业化机会? Sam Altman:现在,语言模型已经可以很好地应用到文案写作和教育服务领域,我相信未来几年内,语言模型会更加强大,将能与Google这一价值万亿美元的搜索产品一较高下。语言模型的应用将会改变我们的日常生活。 以前,大家都在调侃聊天机器人,其实它很有价值,只是当时的技术还不能满足需求。现在的...阅读全文

博文 2023-02-04 15:55:11 CSDN博客

Jono Bacon: GPL 没落了吗?

的是它不是非黑即白的,更多的时是两者混合的灰色,很少有公司有自由软件基金会(或者类似的组织,比如软件自由保护组织)的那种纯粹的理念,因此我想那些公司也不喜欢选择和那些理念相关的协议。 我需要说明,我不是在这是说自由软件基金会以及类似的组织(比如软件自由保护组织)的错。他们有着打造完全自由的软件的目标,对于他们来说,走它们选择的路十分合理。自由软件基金会以及软件自由保护组织做了了不起的工作,我将继续支持这些组织以及为他们工作的人们。我只是觉得这种对纯粹性的高要求的一个后果就是让那些公司认为自己难以达到要求,因此,他们使用了非 GPL 的其他协议。 我怀疑 GPL 的使用是随着开源软件增长而变化的。在以前,启动(开源)项目的根本原因之一是对开放性和软件自由的伦理因素的严格关注。GPL 无疑是项...阅读全文

博文 2017-08-04 08:03:43 debian.cn

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

馈项目,这将是项目最好的贡献来源。有些贡献者甚至将是加入项目团队的绝佳选人。开发采用者和扩展者的生态系统是延长项目使用寿命的好方法。 10、与开发社区联系 开发社区由项目团队成员和贡献者组成。为社区内的沟通提供众所周知的渠道。明确的沟通渠道将有助于开发人员的合作。 11、有计划 很容易就会陷入只专注软件开发的模式,但和任何进程(特别是软件开发过程)一样,有些极致的方法至关重要。确保你的项目采用开发方法,并且有人拥有该流程(例如项目负责人)。制定计划可以帮助开发人员知道他们在哪里可以贡献最大的价值,并使采纳者和扩展者更容易实现他们自己的计划(从而取得成功)。像对待任何其他软件开发项目一样地对待你的开源项目。 12、管理品牌 你的项目将有一个品牌。项目的名称是其身份;项目logo以及任何产品的...阅读全文

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

谷歌元老施密特隐退:传奇落幕 新篇开启

位。 另一个是对社交网络的犹豫,施密特曾坦言自己在谷歌最大的错误就是在社交网络兴起的时没有及时参与。不过好在创始人佩奇接任 CEO 之后马上上线了 Google+,抢回了不少市场,但是即使如此,谷歌在这场战争中的缺席还是从反面帮助 Facebook 和 Twitter 等社交巨头崛起了。 最后一件事情当然就是 Android 了,大家都知道 Android 的创始人是 Andy Rubin,但是这个项目是谷歌三巨头中哪一个主导的呢?答案是接任施密特的佩奇,当年他花了5000万美元买下了 Android 项目,而这件事情施密特甚至都不知道,布林对 Android 也是没有多大的兴趣。 所以施密特虽然能够作为谷歌的润滑剂,但是他在创新能力、远见上的不足也非常明显,事实证明世界还是属于年轻人的...阅读全文

博文 2017-12-24 09:18:44 debian.cn

Go 语言的大版本更新:Go 2.0 安排上了

任何类型的向后兼容的“增量”语言特性变更,因为他们认为无论变更多么小,都要有更全面的支持计划,并将 Go 2 考虑在内。 对于这些累积下来的提案,官方表示现在是时采取行动了! 近况 本文发布时,官方表示目前在 Go 2 的提案中,大约有 120 个尚未解决且被标记为提案的 issue。这些提案都涉及到重要的库或语言特性变更,而它们通常不能与 Go 1 互相兼容。Ian Lance Taylor 和 Robert Griesemer 一直在研究这些提案,并对它们进行了分类(Go2Cleanup, NeedsDecision 等),以理解这些提案背后的含义并使它们后续更易进行。此外,他们还合并了相似的提案,并关闭了那些看似明显超出 Go 范围的提案,或者其他方面无法实现的提案。 早期出现的两个...阅读全文

聊聊很重要的内核技术eBPF

eBPF 的程序。编写C代码,将LLVM编译成驻留在ELF文件中的eBPF字节码。将程序加载到内核中,并创建必要的 eBPF-maps。eBPF 具有用作 socket filter,kprobe 处理器,流量控制调度,流量控制操作,tracepoint 处理,eXpress Data Path(XDP),性能监测,cgroup 限制,轻量级tunnel的程序类型。将加载的程序attach到系统中。根据不同的程序类型attach到不同的内核系统中。程序运行的时,启动状态并且开始过滤,分析或者捕获信息。 2016年10月的NetDev 1.2大会上,Netronome的Jakub Kicinski和Nic Viljoen发表了标题为“eBPF / XDP硬件卸载到SmartNIC”。 Nic...阅读全文

博文 2020-08-16 11:08:44 debian.cn

Linux系统诊断-内存基础

谈及linux内存,很多时,我们会关注free,top等基础命令。当系统遇到异常情况时,内存问题的根因追溯,现场诊断时,缺乏深层次的debug能力。本篇幅不做深层讨论,能把当前系统的问题描述清楚,是每个SRE应该具备的最基础能力。free========2.1 free命令原理free是通过查看 /proc/meminfo 来获取内存的使用情况。但是 /proc/meminfo 这个文件又是怎么来的?我们先了解下 /proc 目录:/proc 是一个虚拟文件系统,该目录下的所有文件都是伪文件,该类文件只存在于内存中,并不占用空间——使用 du -sh 即可验证,该模具路下的磁盘占用都是0。/proc 下的所有文件都是内核调用proc_create() 接口来创建的虚拟条目。/proc 中...阅读全文

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

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

。每个服务都将自己的运行指标推送到 Atlas 中,用于绘制仪表盘和报警。Atlas 是Netflix的一个内存时间序列数据库。每个服务都将自己的日志发送到 ELK 集群中。每个内部服务除了deck 和 gate 必须用 mutual TLS,并且证书和认证通过 Lemur 进行管理。不允许任何外部流量进入内部服务中。所有的 API 调用必须经过 gate。每个外部服务(除了gate)都要支持 mTLS 或者 SSO。如果某个服务有数据存储的需求,那么只能存在自己的数据库中,服务之间不共享数据存储。 为了保证兼容性,Spinnaker 在开发过程中还会准守一些准则: 保证足够的单元测试和覆盖率。在 code review 的时特别注意是否会破坏API兼容性。7×24 不间断的执行集成测试。有...阅读全文

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

技术部门的 SEO 规范

为客户提供SEO顾问服务的时,经常遇到一些作为外部顾问不方便全程参与的情况。比如有的公司要新建网站,或者现有网站推到重来,问我能否从一开始就参与,提供SEO建议。 网站规划设计阶段就考虑SEO当然是好事,但作为一个远在异国的顾问,参与到这种需要大量深度讨论、沟通、协调的过程中,实在是不好操作,内部SEO人员更适合这种工作。 有的客户公司规模比较大,技术开发、内容、SEO等各部门是分开的,SEO部门的很多需求是要提交给技术、运营等部门实施的。反过来,其它部门的需求也由技术部门实施,但可就不一定经过SEO部门同意了。这个过程中就可能产生对SEO的不良影响。 也有的公司人员流动频繁,即使原先的开发人员都经过SEO培训,也还是会有完全不了解SEO的新人加入团队。 这些情况都需要有一个技术部门必须...阅读全文

博文 2019-03-28 13:58:51 debian.cn

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

。比如它的线程优先级太低,而高优先级的线程不断抢占它所需的资源,导致低优先级资源无法工作。 3、活锁的情况是线程一种非常有趣的情况,在生活中我们可能会碰到这样的情况,那就是出门的时可能会遇到有人要进门,你打算让他先进门,他又打算让你先出门,结果,两个人都互相退后了,然后你打算先出门时对方也向前一步,来来回回就一直卡在门口。当然,这种事情正常人很快就能解决,但如果是线程碰到就没那么幸运了。 如果两个线程占用着公共的资源,并且秉承着 “谦让” 的原则,主动把资源让给他人使用,你让我也让,这样就造成资源在两个线程间不断跳动但线程之间都拿不到资源的情况,这样的情况就是活锁了。 线程安全 线程安全指的是多线程的安全。如果一段程序可以保证被多线程访问后仍能保持正确性,那么程序就是线程安全的。一般来说,线...阅读全文

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

提问的智慧 – 全文

经成为一种趋势,电子邮件交流方式则更多地为项目开发者保留。所以,新手一般建议在通过论坛或在线客服寻求与该项目相关的帮助。 【本章注释】 [8]「IRC」全程为Internet Relay Chat,即时聊天工具,在国内常见的是挂在网页内的QQ客服。 [9]也有部分论坛会屏蔽来自搜索引擎的爬虫,所以有时还得在论坛中搜索。 使用项目组的论坛 当某个项目组设立有开发者论坛[10]时,要向论坛而不是其中的个人成员提问,即使你确信他能为你提供最好的回答。查看一下项目的说明文件和主页,找到论坛地址并注册使用。采用这种办法有几个很好的理由: 如果向个人开发者提的问题足够好,他的回答也将对整个项目组有益。相反,如果你认为自己的问题对整个项目组来说太白痴,这也不能成为骚扰个人开发者的理由。 向论坛提问可以分...阅读全文

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

Web前端知识体系精简

Web前端技术由html、css和javascript三大部分构成,是一个庞大而复杂的技术体系,其复杂程度不低于任何一门后端语言。而我们在学习它的时往往是先从某一个点切入,然后不断地接触和学习新的知识点,因此对于初学者很难理清楚整个体系的脉络结构。本文将对Web前端知识体系进行简单的梳理,对应的每个知识点点到为止,不作详细介绍。目的是帮助大家审查自己的知识结构是否完善,如有遗漏或不正确的地方,希望共勉。 JAVASCRIPT 篇 0、基础语法 Javascript基础语法包括:变量定义、数据类型、循环、选择、内置对象等。 数据类型有string,number,boolean,null,undefined,object等。其中,string,number和boolean是基础类型,null...阅读全文

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

Sam Altman的成功学|OneFlow

补的团队成员,而不是雇佣那些跟你擅长相同事情的人。 慧眼识珠挖掘未被发掘的人才是建立人际网络的有效途径。通过练习,我们能快速识别那些优质、有动力、有创造力的人才。挖掘人才最简单的方式就是多社交,多与他人打交道并且与那些给你留下深刻印象的人保持联系。要记住一点,不要局限于他人过往的工作经验和当前成就,我们需要发掘那些有潜力且能在短时间激发潜能的人。 每当遇到新人,我都会扪心自问“这个人有异于常人的能力吗?”对于渴求人才的人来说,这个问题很值得思考。 建立人际网络的特例是找到你生命中的贵人,特别是在职业生涯早期。毫无疑问,能做到这点的最佳方法就是主动去帮助他人(记住,你必须在日后回报你的贵人!) 最后,我们要结交那些积极向上且志同道合之人。 12 资产决定财富 小时,我对经济的最大误解就是人们...阅读全文

中国开源人访谈系列之:清风博主

,firefox和chrome就行了;QQ聊天用最新的wine,加上Yuking大神做的一个库跑精简版的QQ,很稳定;日常办公用WPS for Linux,老师用的最多的就是幻灯片,对于从网上下载的课件,Linux下的办公软件中,WPS是兼容性最好的。 12.您怎么看待开源精神,开源与商业? 答:我是开源精神的支持者,也不反对开源与商业的结合,我认为这也是开源事业能有旺盛的生命力的原因之一。多数人在吃饱穿暖的基础上,才能有更高的追求,不可否认,像Richard Stallman这样的开源领袖,不是每个人都能做到的。但也正是有了这样一群可爱的狂热开源人士,我们的世界才变得更加美好! B.您与Linux社区 1.请问您有特别加入某个社区吗? 答:2013年的时,在一位资深Gentooer的鼓动下,打算重建...阅读全文

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

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

较多:字符串(String),哈希(Hash),列表(List),集合(Set),有序集合(Sorted Set), Bitmap, HyperLogLog和地理空间索引(geospatial)等,需要根据业务场景选择合适的类型。 常见的如:String可以用作普通的K-V、计数类;Hash可以用作对象如商品、经纪人等,包含较多属性的信息;List可以用作消息队列、粉丝/关注列表等;Set可以用于推荐;Sorted Set可以用于排行榜等! 9.命名规范 虽然说Redis支持多个数据库(默认32个,可以配置更多),但是除了默认的0号库以外,其它的都需要通过一个额外请求才能使用。所以用前缀作为命名空间可能会更明智一点。 另外,在使用前缀作为命名空间区隔不同key的时,最好在程序中使用全局配置...阅读全文

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

RabbitMQ 高可用实现镜像队列

如果 RabbitMQ 集群只有一个 broker 节点,那么该节点的失效将导致整个服务临时性的不可用,并且可能会导致 message 的丢失(尤其是在非持久化 message 存储于非持久化 queue 中的时)。可以将所有 message 都设置为持久化,并且使用持久化的 queue,但是这样仍然无法避免由于缓存导致的问题:因为 message 在发送之后和被写入磁盘并执行 fsync 之间存在一个虽然短暂但是会产生问题的时间窗。通过 publisher 的 confirm 机制能够确保客户端知道哪些 message 已经存入磁盘,尽管如此,一般不希望遇到因单点故障导致服务不可用。 如果 RabbitMQ 集群是由多个 broker 节点构成的,那么从服务的整体可用性上来讲,该集群对...阅读全文

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

最全 MongoDB 基础教程

sort() 方法可以通过参数指定排序的字段,并使用 1 和 -1 来指定排序的方式,其中 1 为升序排列,而 -1 是用于降序排列 语法 db.COLLECTION_NAME.find().sort({key: 1}) 案例 ruochen 集合中的数据按字段 likes 的降序排列 db.ruochen.find().sort({'likes': -1}).pretty() skip(), limilt(), sort()三个放在一起执行的时,执行的顺序是先 sort(), 然后是 skip(),最后是显示的 limit()。 MongoDB 索引 creatIndex() 方法 MongoDB使用 createIndex() 方法来创建索引 语法...阅读全文

博文 2021-02-22 07:45:45 OSChina

Docker 核心原理

*), void *child_stack, int flags, void *arg); 我们知道容器本质上就是隔离的进程,Docker 在创建容器的时就是使用 namespace 来实现了容器与容器,容器与宿主机的隔离。 每个进程都有一个 /proc/[pid]/ns 的目录,里面保存了该进程所在对应 namespace 的链接, 我们来查看某个容器也就是某一个进程对应的 namespace 文件描述 1 2 3 4 5 6 7 8 9 10 root@lxkaka-server:~# ls -l /proc/23204/ns total 0 lrwxrwxrwx 1 root root 0 Jan 9 13:51 cgroup -> 'cgroup:[4026531835]' lrwxrwxrwx...阅读全文

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

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

优势的角度来看,尽管AMD、英特尔已经证明了多芯片架构具有一定的经济性,但实际上,与微缩晶体管相比,芯片万能胶并不是在所有时都能带来最大的成本优势。清华大学交叉院博士研究生冯寅潇和清华大学交叉院助理教授马恺声发表了一篇有关Chiplet成本计算的论文,通过建立Chiplet精算师的成本模型对多芯片集成系统的成本效益进行精准评估。结果发现,现阶段的Chiplets方案只有在800平方毫米的大芯片上才真正有收益,且工艺制程越先进,收益效果越明显。对于5nm芯片系统,当产量达到2千万时,多芯片架构才开始带来回报。戴伟民也表示,不是所有芯片都适合用chiplet的方式,不要为了拆分而拆分,不少情况下单颗集成的系统芯片(SoC), 如基于FD-SOI工艺集成射频无线连接功能的物联网系统芯片,更有价值...阅读全文

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

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

,它是以一个 circular buffer (cir_start[head++]) 的 head 来定位,或者更详细地从 graph walk 的始点说起,由于 graph->head 在初始化的时被指定为 -src_node_count (负的 source node 数量,可以参考下一部分 rte_graph 的内存布局),所以 cir_start[head] 其实就是第一个 source node。那么 tail 的作用是什么?libgraph 是如何利用它来动态修改 circular buffer 和 pending stream 帮助 node 的定位呢? 在回答这些问题之前,我们首先来了解下面两个 API 函数,分别是 __rte_node_enqueue_prologue 和...阅读全文

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

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

。 这是什么意思? 在接下来的几周内,我将: 将包转交给相应的维护团队从其他维护者的包的Uploaders字段中删除自己的名字对于那些只有我在维护的包,那就任其自生自灭吧 我将尽最大努力维护manpages.debian.org服务(https://manpages.debian.org/)和codesearch.debian.net服务(https://codesearch.debian.net/),但是随时欢迎别人来帮忙。 请所有人都当我永远休假去了。我会尽力解决管理的问题(例如许可转移等),如果有人直接向我提问,而且问题很容易回答的话,我也会尽力回答。 为什么? 当年加入Debian的时,我还是一名学生,所以我有大量的业余时间。现在,经过5年多的全职工作,我从日常的工作中学到了很多知识...阅读全文

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

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

用kafka生产者的幂等性来实现。 kafka生产者的幂等性:因为发送端重试导致的消息重复发送问题,kafka的幂等性可以保证重复发送的消息只接收一次,只需在生产者加上参数 props.put(“enable.idempotence”, true) 即可,默认是false不开启。 具体实现原理是,kafka每次发送消息会生成PID和Sequence Number,并将这两个属性一起发送给broker,broker会将PID和Sequence Number跟消息绑定一起存起来,下次如果生产者重发相同消息,broker会检查PID和Sequence Number,如果相同不会再接收。 PID:每个新的 Producer 在初始化的时会被分配一个唯一的 PID,这个PID 对用户完全是透明的。生...阅读全文

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

理解 Linux 的虚拟内存

,使用 sysctl vm [-options] CONFIG 或 直接读写 /proc/sys/vm/ 目录下的文件来查看和修改配置。 SWAP 操作 虚拟内存的 SWAP 特性并不总是有益,放任进程不停地将数据在内存与磁盘之间大量交换会极大地占用 CPU,降低系统运行效率,所以有时我们并不希望使用 swap。 我们可以修改 vm.swappiness=0 来设置内存尽量少使用 swap,或者干脆使用 swapoff 命令禁用掉 SWAP。 小结 虚拟内存的概念非常容易理解,但是它会衍生出来的一系列非常复杂的知识。本文只讲了些基本原理,略过了很多细节,比如虚拟内存寻址中段寄存器的使用,操作系统使用虚拟内存增强缓存、缓冲区的应用等,有机会单独拿出来说。...阅读全文

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