InfraPub 为您找到相关结果 864

提问的智慧(精简版)

用替换一幅图片的色码(color table)成自己选定的色码,我现在知道的唯一是编辑每个色码区块(table slot), 但却无从某绘图程序的颜色选择器取得十六进的 RGB 值。问题解决后,加个简短的补充说明补充说明不必很长或是很深入。简单的一句 你好,原来是网线出了问题!谢谢大家。 比什么也不说要来的好。事实上,除非结论真的很有技术含量,一句话就够了:说明问题是怎样解决的,但大可不必将解决问题的过程复述一遍。对于有深度的问题,张贴调试记录的摘要是有帮助的。但请记住,先描述问题的最终状态,说明是什么解决了问题,在此之后才指明踩坑的地。在即时聊天软件里问问题为了避免重复答疑,你应该在群里询问常见问题。由于部分聊天软件没有话题串的功能(或着实现很差),同时群里还可能有多个同时讨论的...阅读全文

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

SVN切换分支用法汇总

一、SVN切换分支操介绍SVN(Subversion,下文简称SVN)是一种版本控系统,它提供了一系列的命令行工具来管理源代码。在代码的开发过程中,可能会需要更改当前工目录下所处的分支。SVN提供了switch命令供用户进行分支切换操,该命令只修改当前工目录下原本的模块链接并不会真的修改目标URL中的版本库。在SVN中,一个版本库可能会有多个分支,我们可以通过checkout命令来创建这些分支,也可以使用branches工具来进行分支的删除、移动、查看等,这些工具都是由SVN提供的。SVN提供了非常完善的分支管理机,让我们可以便地在开发过程中,随时随地地更换所处的分支。二、SVN切换分支常用命令及其参数介绍切换分支是SVN的基本操之一,下面是一些常用的命令及其参数。大家可以...阅读全文

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

如何读懂火焰图?+ 实例讲解程序性能优化 - xuxh120

。 $ perf record -F 99 -p `pgrep -n node` -g -- sleep 30 详细的操可以看这篇文章。 七、浏览器的火焰图 Chrome 浏览器可以生成页面脚本的火焰图,用来进行 CPU 分析。 打开开发者工具,切换到 Performance 面板。然后,点击"录"按钮,开始记录数据。这时,可以在页面进行各种操,然后停止"录"。 这时,开发者工具会显示一个时间轴。它的下就是火焰图。 浏览器的火焰图与标准火焰图有两点差异:它是倒置的(即调用栈最顶端的函数在最下);x 轴是时间轴,而不是抽样次数。 八、Async-profiler介绍 Async-profiler是一个对系统性能影响很少的Java采样分析器,它的实现是基于HotSpot特有的API,通过这些特有的...阅读全文

博文 2022-03-11 10:05:09 博客园

Debian告知用户其系统在没有商业固件的情况下可能无法工作

Debian 11 “Bullseye “将于8月中旬发布,今天上午发布的是Debian Bullseye安装程序的第三个候选版本。本次安装程序的更新为用户提供了更多的文件,部分技术以外的内容受到格外的关注,因为开发团队希望让用户知道将这套系统运行在现代显卡和类似产品的风险,除非加载不被认为是自由软件的固件,否则这些产品往往无使用。​对于许多现代图形处理器,包括AMD的图形处理器,甚至是NVIDIA最近几代GPU的Nouveau驱动程序经常会出现这样的情况:不仅3D硬件加速不工,甚至显示模式设置也可能失败,导致空白屏幕或以次优的分辨率驱动未加速的显示器。特别是对于较新的GPU和现代显示器来说,如果没有固件文件,这些开源驱动程序等于说是没有用的,而可公开重新发行的固件文件只有二进文件因...阅读全文

Golang 之禅: 如何写优质代码

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

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

最全的 DevOps 工具集合

目的是建立一个可扩展且高效的系统,以支持当前和将来的各种框架。这也是主要问题所在:Hadoop 和 MPI 之类的框架都是独立开发的,因此无在各个框架之间进行细粒度的共享。 Mesos 的对策是添加一个资源共享薄层,为框架提供访问集群资源的公共接口。Mesos 正在将对调度的控权委派给框架,因为许多框架已经实现了复杂的调度机。 根据要在集群上运行的业类型可以将框架分为四类,其中一些具有 Marathon 之类的原生 Docker 支持。Mesos 0.20.0 中添加了对 Docker 容器的支持。 我们将重点介绍 Mesos 与 Marathon 的搭配用,因为后者是 Mesosphere 积极维护的框架,在调度面提供了许多功能,如约束、运行状况检查、服务发现和负载平衡等。 使...阅读全文

博文 2021-05-26 14:35:21 博客园

Go1.16 新特性:一文快速上手 Go embed

在以前,很多从其他语言转过来 Go 语言的同学会问到,或是踩到一个坑。就是以为 Go 语言所打包的二进文件中会包含配置文件的联同编译和打包。 结果往往一把二进文件挪来挪去,就无把应用程序运行起来了。因为无读取到静态文件的资源。 无将静态资源编译打包进二进文件的话,通常会有两种解决: 第一种是识别这类静态资源,是否需要跟着程序走。第二种就是考虑将其打包进二进文件中。 第二种情况的话,Go 以前是不支持的,大家就会去借助各种花式的开源库,例如:go-bindata/go-bindata 来实现。 但从在 Go1.16 起,Go 语言自身正式支持了该项特性,今天我们将通过这篇文章快速了解和学习这项特性。 基本使用 演示代码: import _ "embed...阅读全文

博文 2021-02-17 08:44:12 CSDN

谷歌开源了代码评审规范:好坏代码应这样来判断

表的不同部分,都会有不同的评审者进行细致的审查。当然如果是结对编程,且你的队友能进行高质量的代码评审,那么这样写的代码一般可以视为已经过评审了。此外,我们也可以进行面对面的评审,评审者会问开发者一些问题。 根据谷歌的项目描述,代码审核规范为两套独立文档组成,代表了两面内容的最佳实践: 代码评审者的指南CL 者指南 在其中一些文档中使用了一些术语,如下: CL:表示“变更列表 (changelist)”,意思是已经提交到版本控或正在进行代码检查的一个独立的更改。其他组织通常称为“改变”或“补丁”LGTM:意思是“在我看来不错 (Looks Good to Me)”,这是代码审阅者在批准 CL 时说的 接下来我们来看看两份文档分别的主要内容是什么: 1. 代码评审者的指南——如何进行代码评...阅读全文

博文 2019-09-10 17:19:13 debian.cn

Linux Kernel 4.19 正式版本发布 将是长期支持版

Greg Kroah-Hartman 在内核邮件列表上 宣布 释出 Linux 4.19。Linux 者 Linus Torvalds 最近在 休假反省 ,Linux 的开发现在由稳定版内核维护者 Kroah-Hartman 接手。 Kroah-Hartman 表示,4.19 将会是一个长期支持版本,他也会维持几年。 Linux 4.19 的主要新特性包括: 基于异步 I/O 的轮训接口 L1TF 漏洞补丁 块 I/O 延迟控器 Common Applications Kept Enhanced (CAKE) 队列管理算 Wi-Fi 6 (802.11ax) 初步支持 实验性文件系统 EROFS Intel Cache Pseudo-locking 基于时间的包传输 改进 RISC...阅读全文

博文 2018-10-24 13:37:11 debian.cn

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

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

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

Redis 6 将采用全新协议RESP3 提供客户端缓存功能

获取数据时的延迟。此功能在大规模的应用程序上十分重要,因为数据离应用程序越近,程序就能更快获取到数据。 antirez 受 Ben Malec 演讲的启发,他想到可以将大部分需要频繁存和取的数据直接放在服务器的内存中,以便让 Redis 为客户端完成部分工,并使客户端缓存更简单、更有效。这个就是 Client side caching(客户端缓存)的概念。 不过这个思路有一个需要解决的问题是,如何控数据的有效时间?在程序允许的情况下,虽然可以直接设置数据的有效时间,让数据在一段时间后失效。但 antirez 表示,大多数的应用程序无接受提供过时的数据的风险,因此必须找到更理想的案来控数据的失效时间。 所以 antirez 决定开发新的协议 RESP3,在协议中加入新特性来支持客户端...阅读全文

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

源。相反,我们需要另一种形式的身份:以某种内在式与工负载、用户或系统相关联。而且这种身份需要以某种式进行验证,而这种式本身并不需要信任网络。这是一个具有丰富含义的大要求。提供网络安全但依赖于 IP 地址等网络标识符(如 IPSec 或 Wireguard)的系统不足以实现零信任。策略有了新的身份模型,我们现在需要一种来捕获每个身份的访问类型。在上面的边界案中,通常授予一系列 IP 地址对敏感资源的完全访问权限。例如,我们可能会设置 IP 地址过滤,以确保仅允许防火墙内的 IP 地址访问敏感服务。在零信任的情况下,我们反而需要执行必要的最低访问级别。基于身份以及任何其他相关因素,应尽可能限对资源的访问。虽然我们的应用程序代码可以自己做出这些授权决策,但我们通常会使用在应用程序之...阅读全文

Kiwi TCMS 6.11发布 开源测试用例管理系统

Kiwi_USE_TZ 和 Kiwi_Timezone 控设置 Use_TZ 和 Timezone 修复 bug 删除注释时修复错误的权限标签 详细内容见发布说明。 更细,如果使用 Kiwi TCMS 为 Docker 容器,那么: cd path/containing/docker-compose/ docker-compose down docker pull kiwitcms/kiwi docker pull centos/mariadb docker-compose up -d docker exec -it kiwi_web /Kiwi/manage.py migrate...阅读全文

博文 2019-08-03 17:18:49 debian.cn

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

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

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

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

大多数使用开源的公司都了解其商业价值,但他们可能缺乏战略性地实施开源计划和获得全部回报的工具。根据 The New Stack 最近的一项调查,“开源计划的三大好处是 1)提高了对开源的认识,2)提高了开发周期的速度和灵活性,以及 3)更好的许可证合规性。” 开源指南 运一个开源计划办公室涉及到创建策略来帮助你定义和实施你的,并衡量你的进度。由 Linux 基金会与 TODO Group 合开发的 企业开源指南基于多年的经验和实践提供了专业开源知识。 最新的指南中, 设置开源战略详细介绍了定战略和确保成功之路的基本步骤。根据该指南,“你的开源战略将管理、参与和创建开源软件的计划与计划所服务的业务目标联系起来。这可以开辟许多机会并促进创新。”该指南涵盖以下主题: 为什么定战略?你...阅读全文

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

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

!= nil { errors = append(errors, err) } return utilerrors.NewAggregate(errors) }cgc.evictContainers在 cgc.evictContainers 中会回收所有可被回收的容器,其主要逻辑为:1、首先调用 cgc.evictableContainers 获取可被回收的容器为 evictUnits,可被回收的容器指非 running 状态且创建时间超过 MinAge,evictUnits 数组中包含 pod 与 container 的对应关系;2、回收 deleted 状态以及 terminated 状态的 pod,遍历 evictUnits,若 pod 是否处于 deleted 或者 terminated...阅读全文

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

PostgreSQL 13 正式版发布

挑战,尽管之前的 PostgreSQL 版本已经做了一些工来减轻清理的开销。 PostgreSQL 13 通过引入用于索引的并行化清理来继续改进清理系统 。具体来说,VACUUM 命令能够并行处理索引。可以使用 VACUUM 命令上的新 PARALLEL 选项(或 vacuumdb 上的 --parallel)来访问其功能,该选项允许用户指定用于清理索引的并行 Worker 进程的数量。要注意的是,这不适用于 FULL 选项。由于管理员可以选择要运行的并行 Worker 进程的数量,因此可以针对特定的工负载调整此新功能的使用。除了这些性能优势之外,数据插入现在还可以触发自动清理过程。 复插槽(Replication slots),用于防止在复副本接收到预写日志(WAL, write...阅读全文

博文 2020-10-04 20:07:23 debian.cn

HAProxy用法详解 最详细中文文档

| unless } 在指定的条件满足时启用统计报告页面的管理级别功能,它允许通过web接口启用或禁用服务器,不过,基于安全的角度考虑,统计报告页面应该尽可能为只读的。此外,如果启用了HAProxy的多进程模式,启用此管理级别将有可能导致异常行为。 目前来说,POST请求被限于仅能使用缓冲区减去保留部分之外的空间,因此,服务器列表不能过长,否则,此请求将无正常工。因此,建议一次仅调整少数几个服务器。下面是两个案例,第一个限了仅能在本机打开报告页面时启用管理级别功能,第二个定义了仅允许通过认证的用户使用管理级别功能。 backend stats_localhost stats enable stats admin if LOCALHOST backend stats_auth...阅读全文

博文 2014-05-10 17:14:46 debian.cn

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

拖再拖。我举一个典型的例子:rsync,其维护者完全出于个人的喜好拒绝我的补丁包使用debhelper。 赋予个人维护者如此大的自由,导致我们无开展提高构建Debian软件包抽象级别的项目,这反过来又让工具更加困难。 更好的式是什么? 为一个项目,我们应该努力实现更多的统一。统一性并不能完全去除实验,它只是改变了两者的平衡,从简单的实验和难度较高的自动化变成了难度较高的实验和简单的自动化。我们的文化需要从“这个包归我管,你不能碰”转变为共同的所有权意识,项目中的任何人都可以很容易地贡献(经过审查的)变更,而不必凡事都要通过个人维护者。 支离破碎的工流程和基础设施 Debian似乎更倾向于采用分散式的,而不是集中式的。例如,每个包都保存在单独的代码库中(而不是在一个统一的代码库...阅读全文

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

Gitlab 12.2 发布:改进团队协作

Gitlab 12.2 已经发布,此版本将帮助团队优化他们的管道,改进协,并管理项目之间的相互依赖。更新内容如下: 更快、更灵活的管道 CI 管道的目标是自动化手工构建和测试任务,加速软件交付,同时减少错误。然而,对于某些用例,GitLab CI/CD 管道并没有那样高效。GitLab 12.2 现在支持 Directed Acyclic Graphs (DAG) 为创建和管理详细业依赖关系的,而不是依赖于顺序阶段。使您的 CI 管道变得更快和更有效率。 设计管理 软件开发是一项团队协,在 12.2 版本中,提供了新的能力,包括在 GitLab 上的设计管理。设计管理将使设计内容的共享、版本和协变得容易,从而帮助团队更有效地使用单一来源。 跨项目合并请求依赖 复杂系统通常...阅读全文

博文 2019-08-23 15:59:42 debian.cn

下一个LTS内核版本确定为 Linux Kernel 4.9

Linux内核维护者Greg Kroah-Hartman在私人Google+发布一条短消息,将Linux Kernel 4.9分支标记为“longterm”,意味着4.9版本将会为长期支持版本。 事实上关于Linux Kernel 4.9是否是长期支持版本的故事要从2016年8月12日开始说起,当时Greg Kroah-Hartman在Google+上发布信息,说“4.9 == next LTS kernel”;去年9月6日,Greg Kroah-Hartman改变了这个想,表示将会在Kernel.org网站上保留给4.9当“长期支持”的权利。 在他的私人博客中写道:“因为很多人滥用这个通知这给我们造成了很大的困扰, 因此我保留是否选择4.9为长期支持的权利。如果是这样,我可能会重...阅读全文

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

在树莓派上搭建 Raspbian 系统下的 Kubernetes 集群

态。这时如果我们要查看或更改集群,需要登录到集群的主节点 kmaster 上用 kubectl 操,这有些麻烦。因此我们会将 kubectl 放到 PC 上使用。首先,在主节点上获取一些必要的配置信息,在 kmaster 上执行: sudo cat /etc/rancher/k3s/k3s.yaml 复上面命令的输出,然后在本地PC上创建 ~/.kube 目录,在其中创建配置文件 config,并将上面复的内容写入。随后我们需要编辑这个配置文件 ~/.kube/config ,更新server的地址为网络地址。 找到记录 server: https://localhost:6443,修改为, server: https://192.168.0.50:6443 如果 PC 上还没有安装...阅读全文

博文 2020-04-12 16:30:23 debian.cn

PHP 7 的 PHP

是 nginx 的标准组件,但部分 Web 托管商仍会将其为标准 PHP 托管环境的一部分。 Web 托管商 Nextcloud 就是其中一个例子,该公司于10月24日向其客户发出安全警告,督促客户将 PHP 更新至最新版本 7.3.11 和 7.2.24,其中包含针对 CVE-2019-11043 漏洞的修复程序。另外,许多其他虚拟主机供应商也被怀疑正在运行易受攻击的 nginx + PHP-FPM 组合。 但是也有一些网站由于技术限而无更新 PHP,或无从 PHP-FPM 切换到另一个 CGI 处理器。 修复建议 将 PHP 7.1.X 更新至 7.1.33 https://github.com/php/php-src/releases/tag/php-7.1.33将 PHP...阅读全文

博文 2019-10-29 09:23:04 FPM 存在远程代码执行漏洞

聊聊很重要的内核技术eBPF

中存储任何类型的数据。内核将键和值视为二进 blobs,它并不关心您在映射中保留的内容。 BPF验证程序包括多种保护措施,以确保您创建和访问映射的式是安全的。当我们解释如何访问这些映射中的数据时,我们也将解释这些保护措施。 当然BPF映射类型有很多,比如哈希表映射,数组映射,Cgroup 数组映射等,分别满足不同的场景。 2)验证器 BPF验证程序也是在您的系统上运行的程序,因此,对其进行严格审查是确保其正确执行工的目标。 验证程序执行的第一项检查是对VM即将加载的代码的静态分析。第一次检查的目的是确保程序有预期的结果。为此,验证程序将使用代码创建有向循环图(DAG)。验证程序分析的每个指令将成为图中的一个节点,并且每个节点都链接到下一条指令。验证程序生成此图后,它将执行深度优先搜索...阅读全文

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

利用 NAT VPS 进行流量中转

port 端口号如需只允许 UDP 入站:1sudo ufw allow proto udp from 中转机地址 to any port 端口号以上命令中,中转机地址 为 NAT VPS 的公网 IP 地址。其他系统、其他防火墙控软件的操与之类似,放行来自 NAT VPS 的 IP 的指定端口号即可。 一些大陆 NAT VPS 商注:本小节包含的链接含有 aff 值。CloudIPLC:热门稳定,价格合理,需要及时关注补货情况碳云:价格较低,年付套餐手慢则无AkkoCloud:二次元风格的网站,产品同样抢手 ReferencesHow to open and close ports on RHEL 8 / CentOS 8 LinuxPort ForwardingNAT 主机的正确食用通...阅读全文

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

网易云音乐Linux版v1.1发布 支持 Debian Stretch

时隔近一年半的时间,网易云音乐 Linux 版本终于迎来了更新,本次更新除了迁移到QCEF框架,对GNOME、KDE桌面环境支持更好,支持最新 Debian 9、Ubuntu 17.10版本(仅64位),还优化和修复各个社区用户反馈的问题。 具体的细节优化如下: 迁移全新的QCEF框架; 使用了全新的播放器后端; 支持打开更多格式的本地文件; 优化播放时内存占用资源问题; 优化扫描本地音乐目录,支持读取下载任务的状态; 优化第三字体的支持; 优化淡入淡出效果和在线播放; 优化更好的支持Wayland环境; 移除了沙盒机; 修复部分本地音乐播放存在卡顿的问题; 修复Tooltip位置偏移的问题; 修复在Qt 5.9中界面乱码的问题; 修复GPU加速选项无效的问题; 修复无捕获本地目录变...阅读全文

博文 2017-12-02 18:34:00 debian.cn

项目总结报告应该怎么写

了10个工日的延期,那我们会针对这个问题抽取指标分析原因,但如果下个版本此问题不存在,则指标取消。当然,如果目前的指标集不能反映当前问题,我们会根据实际情况扩充指标集。固定通用指标是指业界认可的一些评定标准,如开发代码千行代码bug率;或者对于项目人员关注的指标信息我们也会将这类指标抽取出来为通用指标,如线上遗留问题原因等。以输入为例,下图是输入项目总结中的指标集。总结:1)定的指标可以通过定量的数据衡量;2)定的指标要项目组三认知达成一致,且三都认可。3. 项目数据分析在第二步中选取指标后,我们就要根据指标进行数据分析。在数据分析过程中我们要注意异常数据,对于异常数据我们要进行深入分析,直到找到问题的根本,数据的分析才算到位。总结:1) 对通用指标的数据分析时,一般不少于三...阅读全文

Git 介绍与使用详解

前言 Git是目前非常流行的协同开发工具,很多开源网站都使用Git为代码管理仓库(例如 开源中国,GitHub),不管是开发还是产品、设计师,Git都很适合,而且很多IDE默认集成了Git,熟练的使用Git会起到事半功倍的效果,所以今天我为大家分享一下Git的介绍与使用。 1.Git是什么? Git是目前世界上最先进的分布式版本控系统(没有之一)。 1.1什么是版本控? 版本控是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统。如果你是位网页设计师,可能会需要保存某一幅图片或页面布局文件的所有修订版本。 有了它你就可以将某个文件回溯到之前的状态,甚至将整个项目都回退到过去某个时间点的状态,你也可以比较文件的变化细节,查出最后是谁修改了哪个地,从而找出导致怪异问题...阅读全文

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

最全 MongoDB 基础教程

放空间 # 需要执行db.repairDatabase() 来回收磁盘空间 db.repairDatabase() db.runCommand({repairDatabase: 1}) remove已经过时 # 删除集合下所有文档 db.ruochen.deleteMany({}) # 删除 num 等于1 的全部文档 db.ruochen.deleteMany({num: '1'}) # 删除 num 等于1 的一个文档 db.ruochen.deleteOne({num: '1'}) 查询文档 语: db.collection.find(query, projection) 参数说明 query: 可选,使用查询操符指定查询条件 projection: 可选,使用投影操符指定返...阅读全文

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

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

,App开发运营者加强前端和后端安全防护、访问控、技术加密、安全审计等工,主动监测发现个人信息泄露等违规行为,及时响应处置要求。App开发运营者还要履行国家规定的其他个人信息保护义务。 尽管《规定》尚未正式发布实施,但是主流平台企业已经用实际行动认可了各自的信息保护义务。 7月6日,阿里巴巴开放平台发布《依加强消费者订单中敏感信息保护的公告》,称将启动订单处理链路的消费者敏感信息保护案,对涉及消费者个人敏感信息采取加密、去标识化等安全技术措施。 7月9日,京东发布《JD用户订单隐私安全案》,称为保障京东用户和商家数据信息安全,京东商家开放平台将对订单中手机号和座机号进行脱敏。 7月20日,抖音电商运营团队发布公告,为防止消费者隐私信息泄露,抖店将启动消费者隐私数据...阅读全文

WebAssembly:无需容器的 Docker (上)

Linux、Windows 和 macOS 等传统操系统。 因为无依赖可用的 JavaScript 引擎,所以他们使用不同的接口与外界通信,例如 WASI(WebAssembly 系统接口)。 这些运行时允许 Wasm 应用程序以与 POSIX 类似(但不完全相同)的式与其 host 系统交互。 WASI SDK 和 wasi-libc 等项目帮助人们将现有的兼容 POSIX 的应用程序编译为 WebAssembly。你只需将应用程序编译成 Wasm 模块一次,然后这个同样的二进文件就可以在任何地运行。Wasm 有什么了不起的?下面这些特性让 Wasm 在浏览器大放异彩,也使得它用在服务端开发颇具优势:🌐 开放 —— 它是业界广泛采用的标准。 与过去的浏览器争夺战相反,各大公司正积极合...阅读全文

博文 2023-01-03 06:35:56 spider

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

Facebook 高速发展的 2007 年到 2016 年,他们一天部署 3 次代码,cherry-pick 集齐成千上万个 commit;现在使用类似持续交付的,每个 commit 能自动部署到 production。公司里有很多员工、很多用户的好处:新代码让公司所有员工先用上,因为员工数足够多,能很快发现问题;然后让 2% 的访问量用上新代码,最后慢慢增加到 100% 的访问量。 不久前有篇关于缩短 Facebook 发布流程的文章,阐述了将代码投入生产的灵活。这篇文章着重讲述了他们在一年之内如何从“ cherry-picking ”升级到“ push-from-master ”策略。早些时候, Facebook 也分享了他们部署过程的细节。者 Chuck Rossi 是...阅读全文

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

WireGuard简明介绍及使用指引

= 21841 [Peer] PublicKey = HIgo9xNzJMWLKASShiTqIybxZ0U3wGLiUeJ1PKf8ykw= Endpoint = 142.99.55.66:51520 AllowedIPs = 0.0.0.0/0 国内运营商对 udp 使用限比较多,可能导致你所在地区体验较差。 官原版wireguard是端对端全局代理,中国用户无智能区分国内外流量。wireguard没有自带流量统计、多用户管理功能,这是目前wireguard没有被商家使用的原因。 在当前环境下,建议你优先使用wireguard代理,因为它安全性更高,速度稳定可靠。小众产品反倒生存长久;ss可备用;人在江湖,总要备几架梯子。 实测发现,Vultr升级内核后,完美支持wireguard,效果很好...阅读全文

博文 2019-11-28 12:44:00 debian.cn

“Debian 章程有毒” - OSCHINA

,DPL 代表 Debian 项目去进行关于 Debian 的演讲和演示、参加贸易展览、与其他组织和公司建立良好的关系以及处理一些律相关问题。也就是说,他是一个形象代表和官发言人。 在内部,DPL应该与其他 Debian 开发人员交谈,尤其是与代表交谈,以了解他们如何协助开发者的工。此外就是一些批准预算的财务事宜。也就是一些行政事务。 在多数的公司或组织中,对外品牌和行政都不是核心业务部门,非常边缘化,这些职能常常会面临没有价值感、陷入繁杂琐事的困境。与此同时,DPL 花费时间与精力并不少,却没有任何薪水回报。 这就不难理解为什么会有 DPL 不愿连任。比如,2019年那次轮空事件中接盘的 Sam Hartman,就在 2020年的竞选季中表示不再参选。 02 开发者们的“共同意志” 那么...阅读全文

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

Node.js 10.0.0 正式版发布 大量改进和修复

定义的 env 属性。 Console 新增 console.table() 。 Crypto crypto.createCipher() 和 crypto.createDecipher() 已被弃用,并被 crypto.createCipheriv() 和 crypto.createDecipheriv() 替代。 decipher.finaltol() 已弃用。 crypto.DEFAULT_ENCODING 属性已弃用。 新增 ECDH.convertKey() 。 crypto.fips 属性已弃用。 Dependencies V8 已升级至 6.6 版本。 OpenSSL 升级至 1.1.0h 版本。 完整更新内容请查阅发行说明: https...阅读全文

博文 2018-04-25 14:24:27 debian.cn

如何在 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

如何更改 Linux 的 I/O 调度器

Linux 的 I/O 调度器是一个以块式 I/O 访问存储卷的进程,有时也叫磁盘调度器。Linux I/O 调度器的工是控块设备的请求队列:确定队列中哪些 I/O 的优先级更高以及何时下发 I/O 到块设备,以此来减少磁盘寻道时间,从而提高系统的吞吐量。 目前 Linux 上有如下几种 I/O 调度算: noop - 通常用于内存存储的设备。 cfq - 完全公平调度器。进程平均使用IO带宽。 Deadline - 针对延迟的调度器,每一个 I/O,都有一个最晚执行时间。 Anticipatory - 启发式调度,类似 Deadline 算,但是引入预测机提高性能。 查看设备当前的 I/O 调度器: # cat /sys/block//queue/scheduler 假设磁...阅读全文

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

Jonathan Carter 当选新一任 Debian 项目负责人

Debian 的 1011 位开发人员中,有 339 位在今年的选举中投了赞成票,参与人数与往年差不多,且相比几年前票数还略有提高。 具体的投票过程与结果分析查看:https://www.debian.org/vote/2020/vote_001 新当选的 Jonathan Carter 在竞选“宣言”中写下了几个大目标: 继续做 Debian 做得好的事情。技术卓越、推广自由软件、分发新版本、稳定的版本更新。使 Debian 对贡献者有吸引力。使它成为一个有趣、有意义和受欢迎的项目,让更多贡献者有意愿参与进来。更好地了解正在完成的工。减少影响贡献者的瓶颈。收集有关阻碍个人在 Debian 中所做的事情的反馈,并找到减少这种摩擦的。改善在线协。改善项目内务管理。关于支出和可用资金,具有更好的可...阅读全文

博文 2020-04-22 13:50:05 debian.cn

处理器CPU散装和盒装有什么区别

很多人在装机过程发现,在某电商平台输入处理器信息后,会出现盒装版和标明散片装两种商品,二者在售价上也天差地别,因为担心假货,很多人愿意花费更多的售价购买正品盒装版,今天为大家讲解一下盒装版处理器和散片之间的区别。 CPU有叫做中央处理器,是一块超大规模的集成电路,它的主要功能是解释计算机指令以及处理计算机软件中的数据。通常包括运算器、高速缓冲存储器以及实现他们之间联系的数据、控、状态的总线。目前市面上主流CPU生产商包括Intel和AMD,其中散片主要集中在Intel生产的处理器当中,ADM生产的市面上几乎没有散片包装。 CPU散片一般而言即只有一块CPU包装,没有任何正规包装盒,与正规CPU最大区别在没有CPU原装散热器,无享受官正品带来的任何售后以及三包服务。通常CPU散片主要是...阅读全文

博文 2018-09-02 19:32:35 debian.cn

SpringCloud 之外的选择:国产JBoot v1.7.1 发布

JBoot 是一个基于 JFinal 和 Undertow 开发的微服务框架。提供了 AOP、RPC、分布式缓存、限流、降级、熔断、统一配置中心、Opentracing 数据追踪、metrics 数据监控、分布式 session、代码生成器、shiro 和 jwt 安全控、swagger api 自动生成等功能。 Jboot v1.7.1 主要更新如下: 新增:redis 添加自定义序列化配置的功能 新增:Jboot.java 添加 service(Class clazz, JbootrpcServiceConfig config) 便获取 rpc service 新增:JbootController 添加 getRawObject() 便获取 api 传过来的 json 数据...阅读全文

博文 2018-10-24 13:19:05 debian.cn

兼容 tmux 的文件上传/下载工具 trzsz ( trz / tsz ) 使用指南 支持进度条和目录传输

择合适的缓冲区大小,但不会超过此上限。-t 超时时间trz -t 30 或 tsz -t 30 xxx 等,设置超时秒数 ( 默认 20 秒 )。在超时时间内,如果无传完一个缓冲区大小的数据则会报错并退出。设置为 0 或负数,则永不超时。异常处理如果 tmux 不是运行在远程服务器上,而是运行在本地电脑上,或者运行在中间的跳板机上。案1:使用 tmux -CC 与 iTerm2 集成,请参考 iTerm2 与 tmux -CC 集成。案2:在本地电脑上安装 trzsz-go,设置 alias ssh="trzsz ssh" 可以便使用。如果出现了错误,且 trzsz 挂住不能动了:按组合键 control + c 可以停止服务器上的 trz 或 tsz 进程。对于 iTerm2...阅读全文

登陆 jumpserver 跳板机每天只输入一次2FA token的方法

2FA 密码了。 ** Windows ** 还是使用 ssh session clone 的式,以 XShell 为例,对跳板机会话属性做这些设置: - 在会话属性 -- 连接 -- 用户身份验证中的,选择 keyboard Interactive,输入用户名和密码。 - 这样登陆时,密码都可省略,直接输入token即可。 - 在已经登陆的session上,右键点击tab页,选择复ssh渠道,就可以免token无限复啦。...阅读全文

三个技巧 大幅减少 Docker 镜像体积

:1dd78a123212328bd… 123MB 文件大小是否已发生改变? $ docker images | grep node- node-multi-stage 331b81a245b1 678MB node-vanilla 075d229d3f48 679MB 最后一个镜像(node-multi-stage)更小一些。你已经将镜像的体积减小了,即使它已经是一个很小的应用程序。但整个镜像仍然很大!有什么办可以让它变得更小吗? 2. 用 distroless 去除容器中所有不必要的东西 这个镜像包含了 Node.js 以及 yarn、npm、bash 和其他的二进文件。因为它也是基于 Ubuntu 的,所以你等于拥有了一个完整的操系统,其中包括所有的小型二进文件和实用程序。 但在运行容器时是不需要这些东西的,你...阅读全文

博文 2018-09-06 10:50:29 debian.cn

架构师详解 Nginx 架构

主进程(master process)生成一个子进程(worker process)出来和客户端建立连接进行交互,直到连接断开,该子进程就结束了。使用进程的好处是各个进程之间相互独立,不需要加锁,减少了使用锁对性能造成影响,同时降低编程的复杂度,降低开发成本。其次,采用独立的进程,可以让进程互相之间不会影响,如果一个进程发生异常退出时,其它进程正常工,master 进程则很快启动新的 worker 进程,确保服务部中断,将风险降到最低。缺点是操系统生成一个子进程需要进行内存复等操,在资源和时间上会产生一定的开销;当有大量请求时,会导致系统性能下降。 异步非阻塞 每个工进程使用异步非阻塞式,可以处理多个客户端请求。当某个工进程接收到客户端的请求以后,调用 IO 进行处理,如果不能...阅读全文

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

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

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

沃顿商学院联合世界经济论坛发布DeFi报告:DeFi具有改变全球金融的潜力

巴比特消息,美国宾夕尼亚大学沃顿商学院近日联合世界经济论坛合发布了一份标题为《超越炒的DeFi:新兴的去中心化金融世界》的新报告。该报告指出,DeFi是一个快速发展的新领域。然而,它仍然不成熟,有许多未解决的经济,技术,运营和公共政策问题。尽管某些协议在短时间内吸引了巨大的资金和相关的网络效应,但DeFi领域仍然动荡不安。 DeFi有改变全球金融的潜力,但迄今为止的活动主要集中在现有数字资产所有者社区中的投机,杠杆用和产生收益上。此外,使DeFi服务如此新颖的灵活性,可编程性和可组合性也暴露了新的风险,从黑客入侵到协议之间意外的反馈循环。 散户投资者,专业交易员,机构参与者,监管者和政策定者需要在清楚了解DeFi所面临的挑战的同时,激发对DeFi创新潜力的热情。开发人...阅读全文

在 Kubernetes 上扩展 TensorFlow 模型

由于人工智能 / 机器学习日益集成到应用和业务流程中,因此生产级机器学习模型需要更多可扩展的基础设施和计算能力,以用于训练和部署。 现代机器学习算在大量数据上进行训练,并且需要数十亿次迭代才能使成本函数最小化。这类模型的垂直扩展会遇到操系统级别的瓶颈,包括可提供的 CPU、GPU 和存储的数量,而且对于这种类型的模型,已经证明效率并不高。更为高效的并行处理算,例如异步训练和 allreduce 式训练,需要一个分布式集群系统,由不同的 worker (工器)以协调的式同时学习。 可扩展性对于在生产环境中服务深度学习模型也非常重要。将单个 API 请求处理到模型预测端点可能会触发复杂的处理逻辑,这将花费大量时间。由于更多用户访问模型的端点,为了有效地处理客户端请求,需要更多服务实例...阅读全文

Django 面临困境 欲重组核心团队

也将对 django-developers 列表的成员开放。 James Bennett 表示,删除拥有超高权利的“提交者”角色,以“贡献者”和“合并者”取而代之,将有助于让项目对一般人更加开放,并让提交流程更度化。虽然这个不能立马解决贡献者不足的问题,但却是能更好的解决这个问题的途径。技术委员会权利的提高,可能并非最佳解决案,但却是在必要时打破僵局、避免混乱的手段。技术委员会上面还有中立的管理者 DFS(Django 软件基金会)。 据悉,该提案细节仍在不断完善中,James Bennett 仍在收集反馈并根据反馈对提案进行调整,预计在下个月会以合理的形式进行投票表决。James Bennett 最后表示,希望在 2019 年年中,Django 能以新提案的模式运,并有效解决现有...阅读全文

博文 2018-11-23 10:24:21 debian.cn

Ubuntu 17.10新功能抢先看

、NVIDIA显卡将加入其中,进度会稍后一些。 五、改善免费Wifi连接 大家外出工,经常需要连接咖啡店、机场等免费WiFi,新版系统将支持captive portal的系统,连接WiFi更容易。 六、蓝牙和音频 在GNOME桌面环境上,无通过键盘式突破音量100%的上限。Ubuntu系统可通过物理键盘突破的限。采用Gnome为默认桌面后,17.10 开发团队也将解决该问题。 蓝牙音箱设备连接的稳定性、可用性提升。比如在登录系统前可使用蓝牙音箱设备。如对屏幕阅读器有需求的人来说,这个功能将提高系统的使用体验。...阅读全文