Debian 爱好者社区 为您找到相关结果 719

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

缓存功能,保证存储在客户端内存的数据,在收到来自服务器的失效通知时才失效。 另外,当客户端和服务器的连接中断时,客户端无法接收到数据失效通知,这可能会导致服务出现问题。针对这种情况,一般的做法是重新建立客户端和服务器之间的连接,并更新客户端当前的缓存。antirez 表示可以一直保持连接是最好的情况,但为了降低风险,Redis 服务器在与客户端断开连接时,会将失效通知发送给其他客户端。 这项名为”Client side caching” 的功能尚未正式确定名字,最后可能会被成为”Tracking”。Redis 作者还表示在 Redis 6 候选发布之前,这些功能都会进行调整,希望社区能积极反馈意见。 由于 Client side caching 功能需要使用 RESP3 协议来支持实现...阅读全文

Rust 1.37.0 稳定版发布

。 cargo vendor 已经在生产中使用过很多种情况:Rust 编译器 rustc 使用它在发行 tarball 中传递它的所有依赖项,而具有 Monorepos 的项目使用它在源代码管理中提交依赖项的代码。 对宏使用未命名的 const 现在可以创建未命名的 const。相比给常量一个显式的名称,只需将其命名为 _ 。例如,在 rustc 编译器中: /// Type size assertion where the first parameter /// is a type and the second is the expected size. [macro_export] macro_rules! static_assert_size { ($ty:ty, $size:expr...阅读全文

博文 2019-08-17 21:17:23 debian.cn

3个 Linux 命令让你看起来很忙:摸鱼的技巧

。它播放的序列由你决定,但默认情况下它包括一个加密货币挖掘模拟器、composer PHP 依赖管理器、内核编译器、下载器、内存管理等等。不过,我最喜欢的是显示 simcity 加载消息的设置。因此,只要没有人检查得太仔细,你就可以花整个下午的时间等待电脑完成进度条。 Genact 有 linux、os x 和 Windows 本,Rust 源码可以在 github 上找到。 Hollywood Hollywood 采取了更直接的方式。它本质上是在终端中创建一个随机数和拆分屏幕的配置,并启动看起来很忙的应用程序,如 htop、目录树、源代码文件和其他应用程序等,并每隔几秒钟进行切换。它以 shell 脚本的形式组合在一起,因此可以很容易地根据你的需要进行修改。 Hollywood 的源代码可...阅读全文

博文 2019-09-28 15:48:43 debian.cn

如何在 Debian 中安装 DHCP 服务器

果你正在使用基于 Fedora 的发行,请阅读如何在 CentOS/RHEL 中设置 DHCP 服务器。 作者简介: Aaron Kili 是 Linux 和 F.O.S.S 爱好者,将来的 Linux SysAdmin 和 web 开发人员,目前是 TecMint 的内容创建者,他喜欢用电脑工作,并坚信分享知识。 DHCP 如何工作? 目录...阅读全文

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

Java 12 / JDK 12 正式发布

取“半年发布一次本”的模式。 可访问 http://openjdk.java.net/projects/jdk/13/ 查看 JDK 13 的相关信息。 讨论 留意到不少开发者对 Raw String Literals 特性情有独钟,该特性类似于 JavaScript ES6 语法中的模板字符串,使用它基本可以告别丑陋的字符串拼接。特性详见 http://openjdk.java.net/jeps/326。 该特性原计划于 JDK 12 发布,可惜最后还是被取消了,详见:http://mail.openjdk.java.net/pipermail/jdk-dev/2018-December/002402.html 可能是因为业界呼声太高,最近委员会又把这个特性拿出来重新讨论了:https...阅读全文

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

使用 tmate 分享你的终端会话

/DeBucoyRfdOtlUmb5D214NC8 magi@magi-VirtualBox The key's randomart image is: +---[RSA 2048]----+ | | | | | . | | . . = o | | *ooS= . + o | | . =.@*o.o.+ E .| | =o==B++o = . | | o.+*o+.. . | | ..o+o=. | +----[SHA256]-----+ 如何安装 tmate tmate 已经包含在某些发行的官方仓库中,可以通过包管理器来安装。 对于 Debian/Ubuntu,可以使用 apt-get 命令或者 apt 命令来安装。 $ sudo apt-get install software-properties-common $ sudo...阅读全文

博文 2017-12-06 10:33:33 debian.cn

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

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

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

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

libgraph 的参照对象。因为 VPP 项目整体是一个非常全面的解决方案,从中剥离核心的设计框架为其它轻量项目所用就变得很有意义。这也是 Libgraph 的产生背景。虽然它目前还是DPDK 中相对比较新的 lib,但是其优秀的设计思想还是值得学习参考。 下面将首先介绍 libgraph 架构的核心概念:标量和向量包处理(scalar vs vector packet processing)以及它们之间的区别。然后再介绍 libgraph 中的核心组件,以及它们之间的联系和交互方式。最后,我们将介绍 libgraph 的具体用例以及优缺点。 背景 DPDK libgraph 是一个向量包处理的框架。与传统的标量包处理模型(一系列函数负责处理一个数据包,重复直到所有数据包处理完毕)相比,向量数据包处理...阅读全文

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

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

送下一条消息。这种情况下,如果follower没有成功备份数据,而此时leader又挂掉,则消息会丢失。 (3)acks=-1或all: 这意味着leader需要等待所有备份(min.insync.replicas配置的备份个数)都成功写入日志,这种策略会保证只要有一个备份存活就不会丢失数据。这是最强的数据保证。一般除非是金融别,或跟钱打交道的场景才会使用这种配置。当然如果min.insync.replicas配置的是1则也可能丢消息,跟acks=1情况类似。 消息消费端: 如果消费这边配置的是自动提交,万一消费的数据还没处理完,就自动提交offset了,但是此时你consumer直接宕机了,未处理完的数据丢失了,下次也消费不到了。所以消费端也要设置为手动提交; 2.1.2 消息重复消费...阅读全文

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

APISIX Ingress 如何使用 Cert Manager 管理证书

Apache APISIX Ingress Controller 是一款以 Apache APISIX 作为数据面的 Kubernetes Ingress Controller 开源工具,目前已经更新到 v1.3 本,实现了如证书管理、负载均衡、金丝雀发布等功能。 长久以来,证书管理都不是一件简单的事情,虽然 Apache APISIX Ingress Controller 支持从 Kubernetes Secrets 资源中提取证书和私钥,并转换为 Apache APISIX 可识别的 SSL 对象,但这只是整个证书管理链中的一部分,证书的颁发、轮转、吊销逻辑依然需要管理员执行,尤其当证书数量比较多时,工作量往往并不小,因而会占用管理员不少的时间。 Cert Manager 是一款致力...阅读全文

博文 2023-02-09 07:38:06 中文开源技术交流社区

深入学习golang — channel

" }() go func() { time.Sleep(time.Second * 2) c2 <- "two" }() for i := 0; i < 2; i++ { select { case msg1 := <-c1: fmt.Println("received", msg1) case msg2 := <-c2: fmt.Println("received", msg2) } } 在C中,我们一般都会传一个超时时间给select函数,go语言中的select没有该参数,相当于超时时间为0。 主要参考 https://golang.org/doc/effective_go.html 作者:YY哥 出处:http://www.cnblogs.com/hustcat/ 本文权归作者和博客园共有,欢...阅读全文

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

Golang Context 探究

在用 Golang 开发过程中,我们一定能在代码里很多函数或方法都会传递 context, 也会经常遇到这样的报错 context deadline exceeded。你有想过或去探究过 context 到底是什么吗,为什么会遇到上述的报错。在这里我们就分析一下 context 是什么及用途。 首选 Golang 中的 context 值得是 context.Context 接口,Golang 在 1.7 本中引入标准库的接口。context 主要用来在 goroutine 之间传递上下文信息,包括:取消信号、截止时间、key-value 等。 Context 定义 Context 接口定义如下 1 2 3 4 5 6 7 8 9 10 type Context interface...阅读全文

博文 2021-02-25 09:27:27 lxkaka

运维的未来:云服务兴起,运维人员会“下岗”吗?

法,tweet 本是:我们所知道的 ops 已亡,做基础设施的人有五年的时间转移到产品上。 DevOps 在很多方面正让开发者跟运维人员感同身受。新运维正好相反。殉道者式的运维团队相当自以为是,他们根本没有做好足够的工作将权利和责任转给开发团队。用这种新的合成工程的方式,我们迫使开发人员从整体角度,系统地思考问题。常言道:只有工程师直接对自己所建造的系统负责时,他们才能建造出真正可靠的系统,也就是意味着工程师要随叫随到,而不是指望其他运行人员。 因着这样的转变,老派的、西部狂野式的运维需要消亡。运维一般被看作是守门人,他们也是这么看待自己的。运维正尽可能多地嵌入进程,减缓开发速度,所以当他们开始生产时,开发人员会有近乎完美的可靠系统。一旦该系统历经千辛万苦,经受了严格指责,投入生产之后,老...阅读全文

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

CCPA vs. GDPR:欧美这两部个人数据保护法有什么差异?

去解释和适用,与GDPR作为统一立法的作用和地位相区分。 参考资料及补充说明: [1].关于“间接地识别到个人”的判定:参考欧盟法院Case 582/14 – Patrick Breyer v Germany,19 October 2016; [2]. 《一般数据保护条例评述及实务指引》,京东法律研究院著,法律出社,2018年5月第1; [3]. Opinion 4/2007 on the concept of personal data, Adopted on 20th June, Article 29 Data Protection Working Party; [4].《国内外看CCPA与GDPR的对比》,360法律研究院,http...阅读全文

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

如下: 当容器镜像挂载点文件系统的磁盘使用率大于--image-gc-high-threshold时(containerRuntime 为 docker 时,镜像存放目录默认为 /var/lib/docker),kubelet 开始删除节点中未使用的容器镜像,直到磁盘使用率降低至--image-gc-low-threshold 时停止镜像的垃圾回收。kubelet GarbageCollect 源码分析kubernetes 本:v1.16GarbageCollect 是在 kubelet 对象初始化完成后启动的,在 createAndInitKubelet 方法中首先调用 kubelet.NewMainKubelet 初始化了 kubelet 对象,随后调用...阅读全文

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

从 Debian 安装 Proxmox VE,并配置网络和双硬盘

sudoer(嘛,死循环了1visudo 在文件最后加上一行1username ALL=(ALL:ALL) NOPASSWD:ALL username 是你当前的用户,你想从哪个用户免密切换到 root 在我这里是1customer ALL=(ALL:ALL) NOPASSWD:ALL visudo 命令使用的是 nano 编辑器 所以修改好了后,ctrl+x,y,回车 回到 customer 用户, sudo su,可以免密进入 root ,说明配置好了 开启 bbr因为内核本在 4.9 以上,可以直接开启 bbr。 修改系统参数12echo "net.core.default_qdisc=fq" >> /etc/sysctl.confecho "net.ipv4...阅读全文

博文 2021-03-01 20:20:31 驱蚊器喵的插座

influxdb内存消耗分析及性能优化【探索篇】

现过于复杂,所以 go 语言团队在最新1.15本还没有着手实现。目前根据相关资料,考虑influxdb运行时会占用大规模内存,建议通过如下方式启动influxdb:numactl --interleave=all /usr/bin/influxd -config /usr/bin/influxdb.conf6.读取端优化从系统角度,应该同时关注influxdb写入和读取两个维度。写入端应从具体业务场景,提前划分好写入的tags及fields,从而避免产生大量的series导致内存膨胀过快。而读取端,应明确查询时间范围,命中更少的分片数据,来防止加载大量的无用查询结果而导致程序OOM。走查了读取端相关influxdb查询语句,发现几处类似如下消耗内存及性能的语句:#表描述 - 表名...阅读全文

博文 2021-10-27 16:06:30 知乎

深入了解Docker背后的namespace技术

output... none on /mytmp type tmpfs (rw,relatime) 这里去掉了一些常见的输出。 从结果中就能看出,多了一个新的tmpfs挂载点。赞!继续在当前shell下执行mount来对比下。 注意到了为何tmpfs挂载点为何没有显示出来了么?这是因为我们创建的挂载点是在我们自己的mount namespace下,不是在父namespace下。 前面我说过mount namespace和filesystem jail是不同的,继续执行我们的./mount和 ls命令,就能给出证明了。 UTS Namespace UTS namespace(UNIX Timesharing System包含了运行内核的名称、本、底层体系结构类型等信息)用于系统标识。包含了...阅读全文

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