InfraPub 为您找到相关结果 667

Tmux 快速教程:快捷键和配置

作逻辑 复制粘贴缓冲区 安装的话也很简单,在 mac 下直接 brew install tmux(前提需要安装 homebrew),Debian 下则直接 sudo apt-get install tmux 在终端中输入 tmux 就可以打开一个新的 tmux session,tmux 的所有操作必须先使用一个前缀键(默认是 ctrl + b)进入命令模式,或说进入控制台,就像 vim 中的 esc。 基本操作 信息查询 tmux list-keys 列出所有可以的快捷键和其行的 tmux 命令 tmux list-commands 列出所有的 tmux 命令及其参数 tmux info 流出所有的 session, window, pane, 行的进程号,等。 窗口控制 先来看看在...阅读全文

博文 2017-11-07 15:17:49 debian.cn

协议介绍之深入了解 gRPC

HTTP/1.x 做过推送的同学,大概就知道有多么的痛苦,因为 HTTP/1.x 并没有推送机制。所以通常两种做法: Long polling 方式,也就是直接给 server 挂一个连接,等待一段时间(譬如 1 分钟),如果 server 有返回或超时,则再次重新 poll。 Web-socket,通过 upgrade 机制显式的将这条 HTTP 连接变成裸的 TCP,进行双向交互。 相比 Long polling,笔还是更喜欢 web-socket 一点,毕竟更加高效,只是 web-socket 后面的交互并不是传统意义上面的 HTTP 了。 Hello HTTP/2 虽然 HTTP/1.x 协议可能仍然是当今互联网用最广泛的协议,但随着 Web 服务规模的不断扩大,HTTP/1.x 越...阅读全文

博文 2017-06-22 11:08:48 debian.cn

Golang 操作 Kafka 样例

是实际存储message的地⽅,⽽ .index 和 .timeindex ⽂件为索引⽂件,⽤于检索消息。 2.1.7. 消费数据 多个消费实例可以组成⼀个消费组,并⽤⼀个标签来标识这个消费组。⼀个消费组中的不同消 费实例可以⾏在不同的进程甚⾄不同的服务器上。 如果所有的消费实例都在同⼀个消费组中,那么消息记录会被很好的均衡的发送到每个消费实 例。 如果所有的消费实例都在不同的消费组,那么每⼀条消息记录会被⼴播到每⼀个消费实例。 举个例⼦,如上图所示⼀个两个节点的Kafka集群上拥有⼀个四个partition(P0-P3)的topic。有两个 消费组都在消费这个topic中的数据,消费组A有两个消费实例,消费组B有四个消费实例。 从图中我们可以看到,在同⼀个...阅读全文

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

Kubernetes 使用 PodPreset 注入信息到 Pods_哎_小羊的博客

文章目录 1、PodPreset 介绍2、环境、软件准备3、K8s 启用 PodPreset 配置4、PodPreset 注入信息示例4.1、匹配指定 Pod 加载配置4.2、匹配某个 Namespace 下所有 Pod 加载配置 1、PodPreset 介绍 PodPreset 是一种 K8s API 资源,用于在创建 Pod 时注入其他行时需要的信息,这些信息包括 secrets、volume mounts、environment variables 等,我们可以使用标签选择器来指定某个或某些 Pod,来将 PodPreset 预设信息应用上去。使用 PodPreset 的好处就是我们可以将一些常用 Pod 预设信息配置为模板,这样就不需要显式为每个 Pod 提供所有信息,简化...阅读全文

博文 2021-01-27 18:47:00 CSDN博客

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

冲突,可以通过手动来解决,但如果冲突数量众多,解决冲突可能会变成一件很麻烦的事情。 因此,Yarn 提供了自动合并 yarn.lock 文件的功能以解决冲突的问题。通过行 yarn install 命令可以触发合并,如果合并成功,新的无冲突 yarn.lock 文件会被保存到磁盘上。 未来计划 Facebook 表示未来的 Yarn 将要实现下面这些目标: 使用 Yarn 发布包:发布新包通常需要创建正确的更新日志、执行正确的语义版本控制、同步相关项目的版本,还需要频繁地手动或通过脚本来完成其他很多步骤。如果 Yarn 能够为包发布完成这些事情岂不是更好? 包的安全性:在添加新软件包或升级旧的包时,包的安全性也是一个很重要的需要考虑的因素。Yarn 将会与 npm 合作,将双因子认证带到...阅读全文

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

Debian 环境下安装配置 Gitlab

要在服务器上进行搭建,长期行。综合考虑后采用 debian系统,稳定,快速。 开始安装 安装过程非常简单, 按照页面中的执行步骤,依次执行命令即可。 1. 安装配置依赖项 如想使用 Postfix 来收发邮件,在安装期间请选择'Internet Site'. 您也可以用 exim4 或配置外部的SMTP服务,使用SMTP发送邮件。 上面的安装期间,我没有选择internet site 选择的是本地local sudo apt-get install curl openssh-server ca-certificates postfix 2. 添加GitLab仓库,并安装到服务器上 curl -sS https://packages.gitlab.com/install...阅读全文

博文 2017-12-22 19:42:42 debian.cn

Debian 25 岁生日快乐!精彩仍在继续

美国当地时间8月16日,即今天,Debian 在官网发文庆祝诞生 25 周年。 Debian 于1993年8月16日由 Ian Murdock 首次发布,最初将其称为"Debian Linux Release"。当时,他将这封著名的电子邮件发送到 comp.os.linux.development 邮件列表,宣布他正在开发新的 Linux 发行版,并正在寻找建议。他将其称为 Debian Linux Release,并表示这是由 Linux 开发从头开始开发的,尽管它受到 Softlanding Linux System (SLS) 的启发。 Debian 的名称由 Ian Murdock 当时的女友 Debra 和 Ian Murdock 自己的名字合并而成,所以 Debian 一词是...阅读全文

博文 2018-08-17 00:01:33 debian.cn

树莓派4上如何安装 Raspbian Buster

随着 Raspberry Pi 4 主板的问世,了解如何使用Raspbian Buster设置您的操作系统。你的新Pi 4到了邮箱,你已经设置了办公桌,您已准备好安装操作系统。 对于初学来说,Raspbian为Pi制造商提供了出色的桌面体验。最重要的是,Raspbian Buster是专为树莓派 4创建的。考虑到这些情况,我们将在 microSD卡上载入这个操作系统,用其启动树莓派。 下载 Raspbian Buster 首先,访问 Raspbian 下载页面,下载最新版 Raspbian Buster 的图像文件。第一个链接 “桌面+推荐软件版” 附带了处理日常需求所需的大部分软件,建议初学使用。如果你计划在命令行下使用你的Pi,桌面就不需要了,可以选择第三个 Lite 的选项。 下...阅读全文

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

2022年云原生服务网格展露的五大趋势

近日,OSCHINA 和 Gitee 联合发布了《2022 中国开源开发报告》。其中,云原生社区创始人宋净超在报告中对开源云原生服务网格领域进行了深入解读,以下为主要观点。2022 云原生服务网格五大趋势2022 年,云原生展露了一些趋势。因我更多地关注服务网格领域,在此就该方向谈谈我的观点,欢迎其他专家交流。一是 零信任的云原生安全备受关注。CNCF 在《云原生安全白皮书》中指出,“我们需要在应用安全生命周期中采用更自动化和安全的架构设计(如零信任)”,这表明云原生安全越来越受重视。零信任安全意味着默认情况下,网络内外都不信任任何人,并且要对试图访问网络资源的每一个人进行验证。部署服务网格有助于缩小云原生部署的攻击面,并为构建零信任应用网络提供关键框架。二是 API 网关与服务网格融合...阅读全文

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

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

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

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

数周前,开源软件爱好 Eric S Raymond 提出的观点引发热议,他认为微软应该在 Linux 内核基础上重构 Windows。他认为目前个人电脑业务持续下滑,Windows 早已不再是微软的支柱业务,通过重构能够实现利润最大化。不过,曾参与 Windows Subsystem for Linux 的 Ubuntu 移植开发的 Hayden Barnes 对此持反对观点,认为微软不会基于 Linux 重构 Windows。 Hayden Barnes 是游走在微软和 Linux 社区之间的知名开发,曾帮助 Windows Subsystem for Linux(WSL)上推进 Ubuntu 开发工作。因此他能够和很多 Linux 开发人员、开源项目人员、社区成员和微软员工进行交流...阅读全文

博文 2020-10-15 14:59:58 debian.cn

Debian 环境下有趣的命令

sl 命令 你会看到一辆火车从屏幕右边开往左边。。。。。。 安装 $ sudo apt-get install sl 行 $ /usr/games/sl sl 命令有 -alFe 几个选项, -a An accident seems to happen. You'll feel pity for people who cry for help. -l shows little one. -F It flies. -e Allow interrupt by Ctrl+C. 可以给别人来个恶作剧,他一敲 ls,不知道的肯定很有效果。 $ alias ls=sl fortune 命令 输出一句话,有笑话,名言什么的 (还有唐诗宋词 sudo apt-get install fortune-zh...阅读全文

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

开源简史基础:Linux基金会

Linux创始人Linus Torvalds和GKH(Greg Kroah-Hartman)等人拉赞助,让大神能够安心保证Linux的发展。几乎所有人都知道Linus Torvalds,但是GKH,即使你不知道他的名字,但是实际上在Linux相关的开发或维的技术人员会发现他的身影无所不在。是的,GKH主要负责Linux的stable分支的维护,staging/USB driver core/debugfs/kref/kobject/sysfs kernel/TTY layer/linux-hotplug/Userspace I/O/udev等子系统或项目中都可以看到他的存在。效力于Linux基金会之前,GKH主要在Novell 的 SUSE Labs工作,下图也是这位帅哥在2011年9月拍摄于纽...阅读全文

Golang 中的 channel 通道详解

,dataqsiz 表示缓冲区的大小,对于无缓冲区通道而言 dataqsiz 的值为 0。如果 qcount 和 dataqsiz 的值相同,则表示缓冲区用完了。__buf __缓冲区表示的是一个环形队列 。其中 **sendx 表示下一个发送的地址,recvx **表示下一个接收的地址。elemtype 是channel的中存放的具体类型,每一个通道都是一个具体类型的导管,也就是声明channel的时候需要为其指定元素类型。recvq 表示等待接收的 sudog 列表,一个接收语句执行时,如果缓冲区没有数据而且当前没有别的发送在等待,那么执行 goroutine 会被挂起,并且将对应的 sudog 对象放到 recvq 中。sendq 类似于 recvq,一个发送语句执行时,如果缓冲区已经满了,而且没...阅读全文

QEMU 5.0 稳定版发布

QEMU 是一个纯软件实现的通用模拟器和虚拟机,它有三种模式,几乎可以模拟任何硬件设备:Full-system emulation 可在任何支持的硬件架构上行任何操作系统,User-mode emulation 可用来行另一个 Linux/BSD 程序,Virtualization 可以接近本机性能行 KVM 和 Xen 虚拟机。 QEMU 5.0.0 已正式发布,官方的下载链接在此。本次更新的亮点主要包括: 支持通过 virtiofsd 将主机文件系统目录传递给访客支持对在 QEMU D-Bus 上行的外部进程进行实时迁移支持针对 main/”built-in” guest RAM 使用 Memory Backend(虚拟内存的后端)block: 支持通过块设备作业压缩备份镜像...阅读全文

博文 2020-04-30 10:20:13 debian.cn

PHP 7.4 有哪些新特性

PHP 7.4 的GA版今天正式发布了。PHP 7.4发布后,PHP 7.3或其它的PHP 7版本都可以升级到PHP 7.4版。 PHP 7.4 的主要特性包括以下几个, 短闭包函数(short closure)预加载提交性能属性类型限定Improved type variance(不会翻译)三元算简写数组展开算新增类的魔术方法:serialization数字分隔符算优先顺序允许在__toString中抛出异常支持反射引用新增字节分割函数移除php短标签弃用左关联算符不再向后兼容的变更 短闭包函数 短闭包函数可以减少冗余代码: array_map(function (User $user) { return $user->id; }, $users) array_map(fn...阅读全文

博文 2019-11-29 20:45:16 debian.cn

Debian 成为主流 Linux 操作系统的七个原因

Debian也许是历史最悠久的发行版之一,但很显然,它仍可以教其他发行版好几招。要是没有Debian,Linux领域的境况会大不一样,会黯然失色好多。Debian仍是首屈一指的Linux发行版之一,这有诸多令人信服的理由。 我头一回安装Debian是在16年前。自那以后,我试用过无数的其他Linux发行版,甚至有一两个还坚持使用了好几个月,不过我的主要发行版始终是Debian,或至少是Debian的众多衍生版之一。很熟悉,也许可以在一定程度上解释为什么我青睐它。不过,我青睐它主要源自其他发行版比不过Debian。 我认为至少有七个理由表明Debian仍是我青睐的Linux发行版: 7.软件包管理 Debian中的软件包由dpkg和apt-get来管理。如今,它们管理依赖项的能力不再很独特...阅读全文

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

字节跳动开源微服务中间件 CloudWeGo - OSCHINA

这样的场景。 因此 Netpoll 应而生,它借鉴了 evio 和 Netty 的优秀设计,具有出色的性能,更适用于微服务架构。 Thriftgo Thriftgo 是 Go 语言实现的 Thrift IDL 解析和代码生成器,支持完善的 Thrift IDL 语法和语义检查,相较 Apache Thrift 官方的 Golang 生成代码,Thriftgo 做了一些问题修复且支持插件机制,用户可根据需求自定义生成代码。 Kitex 的代码生成工具就是 Thriftgo 的插件,CloudWeGo 近期也会开源另一个 Thriftgo 的插件 thrift-gen-validator,支持 IDL Validator,用于字段值校验,解决开发需要自行实现代码校验逻辑的负担,弥补...阅读全文

博文 2021-09-09 13:56:42 中文开源技术交流社区

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

里等待,直到售货员把衣服交给你后才算购物成功,这就相当于同步的过程。 不过,如果是在网上购物的话,我们只需下单并完成支付,对我们来说整个购物过程就算完成了。网上的商家接到订单会帮我们加紧安排送货,这段时间我们可以去做其他的事,比如去外面打个篮球之类的。等送货上门并签收商品就完事了,这个过程就相当于异步。 并发和并行并发和并行的功能很相似,两都可以表示多个任务一起执行的情况,但本质上两其实是有区别的。 严格意义上来说,并行的多任务是真实的同时执行,而并发更多的情况是任务之间交替执行,系统不停的在多个任务间切换执行,也就是 “串行” 执行。 最直接的例子的就是我们的计算机系统,在单核CPU时代,系统表面上能同时进行多任务处理,比如听歌的同时又浏览网页,但真实环境中这些任务不可能是真实并行的...阅读全文

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

Go 1.16 发布,支持 macOS ARM64

Go 1.16 正式发布,该版本主要包括支持 macOS ARM64、工具链优化、行时和库的实现优化。并且,该版本保留了Go 1兼容性的承诺,几乎所有 Go 程序都能像以前一样继续编译和行。 部分更新内容: - Go 1.16 通过 GOOS=darwin,GOARCH=arm64 在macOS(也称为 Apple Silicon)上添加了对 64 位 ARM 架构的支持。与 darwin/amd64 一样,darwin/arm64 也支持 cgo、内部和外部链接、c-archive、c-shared 和 pie build 模式、竞争检测器 - Go 现在在 NetBSD(netbsd/arm64)上支持 64 位 ARM 体系架构 - Go 现在在 OpenBSD(openbsd...阅读全文

博文 2021-02-17 08:58:12 joseph

Apollo 配置中心简单介绍

钮。 点击后就进入到集群添加页面,一般情况下可以按照数据中心来划分集群,如SHAJQ、SHAOY等。 不过也支持自定义集群,比如可以为A机房的某一台机器和B机房的某一台机创建一个集群,使用一套配置。 4.2.2 在Cluster中添加配置并发布 集群添加成功后,就可以为该集群添加配置了,首选需要按照下图所示切换到SHAJQ集群,之后配置添加流程和3.2添加/修改配置项一样,这里就不再赘述了。 4.2.3 指定应用实例所属的Cluster Apollo会默认使用应用实例所在的数据中心作为cluster,所以如果两一致的话,不需要额外配置。 如果cluster和数据中心不一致的话,那么就需要通过System Property方式来指定行时cluster: -Dapollo.cluster...阅读全文

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

Debian 环境中安装git服务器 Gogs(下)

$GOPATH/src/github.com/gogits/gogs go build 确保你没有遇到错误。 现在使用下面的命令行 Gogs Go Git 服务器。 ./gogs web 此命令将会默认行 Gogs 在 3000 端口上。 打开网页浏览器,键入您的 IP 地址和端口号,我的是 http://192.168.150.100:3000/ 。 你将会得到与如下的 web 界面, Gogs 已经在您的 Debian 系统上安装完毕。现在返回到您的终端,并且键入 Ctrl + C 中止服务。 步骤 5 - 配置 Gogs Go Git 服务器 本步骤中,我们将为 Gogs 创建惯例配置。 进入 Gogs 安装目录并新建 custom/conf 目录,复制默认的配置文件到 custom 目录,并...阅读全文

博文 2018-03-10 09:52:28 debian.cn

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

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

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

Harbor 1.9 发布:新增多项企业级功能

的数据并对其所含信息采取相应的操作。例如,您可以将 Harbor 配置为在成功推送镜像后向 Webhook 侦听器发送一个 POST 请求,从而触发 Kubernetes 应用程序的部署,以执行您的测试套件,或仅仅更新您的 CMDB。 配额(Project Quotas) 配额有助于项目管理员对资源的使用加以控制。具体而言,您可以限制项目所含 tag 的数目,以及项目可占用的存储容量。您可以设置适用于所有项目的全局默认配额,也可以为个别项目设置配额以覆盖系统设置。镜像容量会根据其实际大小进行计算,并会在同时推送多个镜像时考虑所有相关镜像之间的层共享情况。配额可以与其他机制无缝协调工作,例如重新 tag、在线垃圾数据回收和保留策略,从而可始终合理管理各个工件,并且不会浪费空间。 Tag 保留...阅读全文

博文 2019-10-09 12:12:04 debian.cn

Rust 1.37.0 稳定版发布

-Guided Optimization) rustc 编译器现在通过 -C profile-generate 和 -C profile-use 标志提供了对配置文件引导优化(PGO)的支持。 Profile-Guided Optimization 允许编译器根据来自实际工作负载的反馈优化代码。它的工作方式是编译程序,在两个步骤中进行优化: 首先,程序是用编译器插入的工具构建的。这是通过将 -C profile-generate 标志传递给 rustc 来完成的。然后,需要在示例数据上行检测程序,并将分析数据写入文件之后,重新构建程序,这一次使用 -C profile-use 标志将收集到的分析数据反馈回 rustc。此构建将利用收集到的数据,使编译器能够对代码放置、内联和其他优化做出更好的决定 在...阅读全文

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

Docker 核心原理

对 Docker 的使用大部分都比较熟悉,但是说到 docker 的实现原理很多人还是一知半解。我把在团队内部做的一次 Docker 核心原理分享总结到文章里,以供参考。 Docker 的优势 Build once, Run anywhere 上面这句话很精辟的总结了 docker 的优点。我从下面几点具体描述 docker 带给开发的能力 应用标准化 无论什么语言开发的应用,我们都能用 dockerfile 和构建脚本方便的进行应用构建打包,代码库 + 构建 + registry 统一了 CI/CD 流程,也提升了效率。 环境一致 由于应用和依赖全部构建成镜像,做到了一次构建多次交付,无论是开发,测试还是上线环境都是一致的。大大提高了开发效率 应用隔离 由于通过 docker 部署的应...阅读全文

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

Debian 9 使用kubeadm创建 k8s 集群(下)

在前一篇文章中,我们介绍了 Debian Stretch 环境下,Kubernetes 集群安装的准备工作。本文我们将继续介绍 k8s集群 的安装配置工作。 第4步 - 设置主节点 在本节中,您将设置主节点。 但是,在创建任何Playbooks之前,值得介绍一些概念,例如Pod和Pod网络插件 ,因为您的群集将同时包含这两个概念。 pod是行一个或多个容器的原子单元。 这些容器共享资源,例如文件卷和网络接口。 Pod是Kubernetes中的基本调度单元:pod中的所有容器都保证在调度pod的同一节点上行。 每个pod都有自己的IP地址,一个节点上的pod应该能够使用pod的IP访问另一个节点上的pod。 单个节点上的容器可以通过本地接口轻松进行通信。 然而,pod之间的通信更复杂,并...阅读全文

博文 2019-05-13 22:57:41 debian.cn

2017 热门开源自动化测试框架优缺点对比

1. Robot Framework Robot Framework(RF)是用于验收测试和验收测试驱动开发(ATDD)的自动化测试框架。 基于 Python 编写,但也可以在 Jython(Java)和 IronPython(.NET) 上行,提供跨平台支持(Windows、Linux 或 MacOS )。 优点: 通过使用关键字驱动测试(KDT)方法简化了自动化测试过程,方便测试人员创建易读的测试。 测试数据语法简单易用。 生态系统丰富。由各种通用测试库和工具组成,这些工具都是作为独立项目开发的。 具有高度可扩展性。 可通过 pabot 或 Selenium Grid 执行并行测试。 缺点: 自定义 HTML 报告较为麻烦。 如果是针对大范围的库和扩展的 KDT 自动化测试,建议使用...阅读全文

博文 2017-11-15 08:52:47 debian.cn

Debian 向左:或将迎来根本性改革 - OSCHINA

”(procedural details)。当抉择艰难时,我们需要创造出一个能够消弭分歧的机制。这个机制甚至能够在我们失去立场的时候,发挥作用。 在 Allbery 看来,Debian 之前走错了方向。在这一层上,Allbery 聚焦在“机制”上。而从 Debian的现存机制上来看,Debian 为项目个人提供了极大的自由。 Debian 把决定权交给了个人开发,开发可以按照他们认为合适的方式来进行管理。这种自由被 Debian 章程(consitution)和 Debian policy manual 限制,主要是为了确保开发和他们创建的软件包都能共存并且和睦相处。 当大家分歧不大的时候,这个机制基本上都是可行(不然 Debian 也不会有效行这么多年)。而面对一些特殊情况,Debian 社区的机制主要...阅读全文

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

Robolinux 8.8.1 发布,基于 Debian 的 Linux 发行版

Robolinux 8.8.1 发布了,它基于 Debian 8“Jessie”,并配有 Firefox 和 Thunderbird 的最新版本,以及对 MATE 和 Xfce 桌面环境的改进,点此查看详细更新内容。 Robolinux 是基于 Debian GNU/Linux 最新稳定发行的用户友好的、直观的操作系统。该项目非常有趣的特性之一是预配置好的 VirtualBox 虚拟机支持套件,可行 Windows XP 或 Windows 7,从而允许用户在 Robolinux 中无缝安装和行 Windows 操作系统。 演示及下载地址: https://www.robolinux.org/downloads/ Robolinux 的详细介绍:点击查看 Robolinux 的下载地址...阅读全文

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

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

627891 > 627891.svg -d N 分析持续时间(以秒为单位)。如果未提供启动,恢复,停止或状态选项,则探查器将行指定的时间段,然后自动停止。 -i N 设置分析间隔(以纳秒或毫秒等作为单位),默认分析间隔为10ms。 -o 转储文件的格式。 等待15s,就会产生结果,生成 627891.svg 文件。vim 627891.svg 并删除第一行,然后下载到本地并使用浏览器打开。 结果如下图,此图俗称火焰图,主要看每个方法的横轴长度,占用横坐标越长的操作,其占用的 cpu 即最长,很直观的。 9.2 性能黑点分析 我们首先发现下图红框内的代码存在严重的性能问题。在append的过程中,获取线程 stack 的过程耗时比较大。从火焰图中分析,耗时占据了接近50%的是,一个logger操作...阅读全文

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

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

一 Kafka可视化管理工具kafka-manager 安装及基本使用可参考:https://www.cnblogs.com/dadonggg/p/8205302.html 二 线上环境规划 JVM参数设置 kafka是scala语言开发,行在JVM上,需要对JVM参数合理设置,参看JVM调优专题 修改bin/kafka-start-server.sh中的jvm设置,假设机器是32G内存,可以如下设置: export KAFKA_HEAP_OPTS="-Xmx16G -Xms16G -Xmn10G -XX:MetaspaceSize=256M -XX:+UseG1GC -XX:MaxGCPauseMillis=50 -XX:G1HeapRegionSize=16M" 这种大内存的情况一般...阅读全文

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

树莓派基于 Raspbian 的 Windows XP 现已可用

Windows XP,但其本质上还是不能原生行 Windows XP 应用,而是需要借助合适的仿真器。因此,它也确实预装了一些仿真平台 。 如果要行本机 Windows 应用程序,可以使用内置的 Windows 98 虚拟机;BOX86 则可以行旧的 PC 游戏。还可以利用其他仿真器,例如 DOSBox、Mupen64 和 MAME。通过连接 USB 控制器,整个系统可以兼作复古游戏机。此外,PI LAB 还发布了 Raspbian 95。 目前,这项工作仍在进行中,大家可以继续期待接下来会带来的一些更新内容。可访问 YouTube 上的 Pi Lab 官方频道,以获取安装详细信息和新版本。 下载地址:Raspbian 95 下载,RapbianXP 下载。...阅读全文

博文 2020-04-28 09:45:50 debian.cn

WSL2 将普遍可用,Linux 内核提供方式改变

微软博客宣布,WSL2 将在 Windows 10 2004 版中正式进入普遍可用(GA,Generally Available)状态。 WSL 2 是去年微软在 Build 2019 上宣布推出的,相比第一代,新的 WSL 重新设计了架构,使用真正的 Linux 内核,可以在 Windows 上行 ELF64 Linux 二进制文件。 Linux 二进制文件使用系统调用来执行许多功能,例如访问文件、请求内存与创建进程等。WSL 1 创建了一个转换层,对这些系统调用进行翻译,以允许它们在 Windows NT 内核上工作。但是,实现所有这些系统调用很有挑战性,导致某些应用程序无法在 WSL 1 中行。现在 WSL 2 包含自己的 Linux 内核,它具有完整的系统调用兼容性,这引入了一...阅读全文

博文 2020-03-15 10:53:59 debian.cn

Rancher 2.3 发布:支持Windows容器 集成Istio

Rancher 2.3 GA版本发布了,据说这是Rancher Labs迄今为止最重要的版本更新。Rancher 2.3是业界首个GA支持Windows容器的Kubernetes管理平台,并正式集成了Istio,还引入了创新的“集群模板”功能以增强企业集群的安全性。 支持Windows容器 通过把Kubernetes的所有优势引入Windows,Rancher 2.3极大降低了企业使用Windows容器的复杂性,并为基于Windows遗留应用程序的现代化提供快捷的途径——无论这些程序是在本地行还是在多云环境中行。此外,Rancher 2.3还可以将它们容器化并将其转换为高效、安全和可迁移的多云应用程序,从而省去重写应用程序的工作。 正式集成Istio Rancher 2.3正式完成了对...阅读全文

博文 2019-10-10 11:44:14 debian.cn

Debian 9.9 发布 修复超过120个bug与安全问题

Debian 项目今天发布了其稳定分支 Debian 9(代号 Stretch)的第九个常规维护更新 Debian 9.9。这种“point release”不是全新的发布版本,而只是更新了一些包含的软件包,所以用户没有必要扔掉之前的 9 版本,只需要使用最新的 Debian 镜像将软件包升级到当前版本。 如果您已经在计算机上行Debian GNU / Linux 9“Stretch”操作系统系列,那么您只需通过安装官方软件存储库中的所有更新来更新您的安装。为此,您可以在终端仿真器中行“sudo apt-get update && sudo apt-get dist-upgrade”命令。 Debian GNU / Linux 9.9“Stretch”维护更新包括总共122个更改,包括...阅读全文

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

Kiwi TCMS 是一个集测试计划、测试行和测试用例于一身的管理系统,用 Python 和 Django 编写。7.1 版本如下: 支持的升级路径: 5.3 (or older) -> 5.3.1 5.3.1 (or newer) -> 6.0.1 6.0.1 -> 6.1 6.1 -> 6.1.1 6.1.1 -> 6.2 (or newer) Improvements 将 Django 从 2.2.5 更新到 2.2.6将 python-GitLab 从 1.11.0 更新到 1.12.1pygithub 从 1.43.8 更新到 1.44psycopg2 从 2.8.3 更新到 2.8.4在所有遥测页面中添加帮助工具提示添加超链接验证 Fixes Issue #1147 API...阅读全文

博文 2019-10-31 09:34:07 debian.cn

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

/data/iot_cloud/_series/07/0005 62.732 778.06 ... #省略 ... /data/influxdb/data/iot_cloud/_series/01/0002 16.352 7014.15 /data/influxdb/data/iot_cloud/_series/00/0002 16.36 7030.51可以看出程序行时,会加载iot_cloud库文件:tsm数据文件(主要为当前shard的文件,共约18G)series文件(所有series文件,共约7G)加载的内存大小与SHR内存基本吻合。基于当前的分片策略retention policy周期为7天,每天一分片,所以可以从分片角度减少shard占用的内存。笔尝试调整分片策略:#当前...阅读全文

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

如何在 Debian服务器 上启用双因子身份验证

法。 当在 /etc/ssh/sshd_config 中新加一行配置,如下。这样在建立sshliaSSH 需要提交一个 SSH 密钥,然后提示输入密码: AuthenticationMethods "publickey,password" 如果你想要对指定用户设置这些方法,那么请使用以下附加配置: Match User joseph AuthenticationMethods "publickey,password" 当你已经编辑或保存了新的 sshd_config 文件,你应该通过行以下程序来确保你没有犯任何错误: sshd -t 任何导致 SSH 不能启动的语法或其他错误都将在这里标记出来。当 ssh-t 行时没有错误,使用 systemctl 重新启动 SSH: systemctl...阅读全文

博文 2018-12-05 11:44:56 debian.cn

Debian资源库已加入Spectre、Meltdown漏洞检查器

影响几乎所有现代处理器的“幽灵”(Spectre)和“熔毁”(Meltdown)安全漏洞的余波尚未散尽,软硬件厂商仍在携手努力给平台打补丁。如果你正在行 Debian GNU/Linux 环境,并且希望检查系统是否存在严重的安全漏洞,那么现在已经可以从 Debian 资源库下载 Spectre 和 Meltdown 缓和检查器了。Debian 项目团队表示,用户只需输入单行命令,即可完成该脚本的安装。 本月早些时候,外媒 Softpedia 曾发布过一篇面向 Linux PC 用户的安全检查教程。不过现在,Debian GNU/Linux 用户只需打开终端,并输入如下命令行: sudo apt-get install spectre-meltdown-checker 然后行...阅读全文

博文 2018-01-31 10:28:44 debian.cn

Robolinux 10.1 发布,基于 Debian 的发行版

Robolinux 10.1 发布了,Robolinux 是基于 Debian GNU/Linux 最新稳定发行的用户友好的、直观的操作系统。该项目非常有趣的特性之一是预配置好的 VirtualBox 虚拟机支持套件,可行 Windows XP 或 Windows 7,从而允许用户在 Robolinux 中无缝安装和行 Windows 操作系统。 Robolinux 发布了三款全新的 Raptor Series 10 操作系统:Cinnamon,MATE 3D 和 Xfce v10.1 LTS 2023 版本。 Robolinux 10 系列版本基于 Ubuntu 18.04 构建,带来了 4.15 Linux 内核以及大量增强和改进,例如: 最新硬件的驱动程序支持...阅读全文

博文 2018-10-01 23:32:39 debian.cn

Linux Kernel 5.10改进EXT4文件系统:随机覆盖性能提升10倍

在 Linux Kernel 5.10 代码中已经增加了对 EXT4 文件系统的更新,其中包括在 DAX/DIO 模式下大幅改进文件覆盖的效率。尤其是在行英特尔 Optane DCPMM 存储的情况下,并行写入尤其是随机覆盖性能可以提升 10 倍以上,常规操作也能提升 2 倍以上。但是您必须使用 EXT4 iommap 代码(例如在DAX / DIO模式下),并且此更改不会影响 EXT4 的常规操作。 另一项针对 EXT4 的重大改变是由谷歌 Harshad Shirwadkar 提交的 “fast commits”。fast commits 模式和在有序模式(挂载选项 data=ordered)行的 EXT4 用户有关,在保持最小增量的情况下与 JBD2 日志共享的快速提交空间中重新...阅读全文

博文 2020-10-25 10:58:54 debian.cn

Proxmox VE 5.0 Beta1 发布,基于 Debian 9 Stretch

Proxmox 5.0 Beta 1 “Virtual Environment” 发布了,新版基于 Debian 9 “Stretch”,采用了 Linux 4.10 内核,并且表现十分出色。例如,4.10 内核允许行 Windows 2016 Hyper-V 作为客机操作系统(嵌套虚拟化)。 这个 beta 版本提供了 Ceph Luminous v12.0.0.0 (dev) 的软件包,这也将是下一个长期 Ceph 版本的基础。在接下来的几个星期内,将会一步一步把新功能集成到 beta 版中,并将修复所有关键的错误。 阅读更多信息, 请参阅发布公告 。 下载镜像:proxmox-ve_5.0-c155b5bc-1.iso (549MB, MD5, pkglist). Proxmox...阅读全文

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

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

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

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

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

Debian Stretch 安装配置 Jenkins

本文将简单介绍 Debian 环境下,Jenkins 服务的安装与配置。通常Jenkins有两种方式安装,一种是通过官方提供的 Deb 包安装,另一种是用 tomcat 作为容器来行 jenkins。这里我们使用Deb包方式,部署简单、后期的更新维护也很方便;这也是我们选择 Debian 部署 Jenkins 的原因。 安装 Jenkins 第一步:添加 jenkins 安装源 # wget -q -O - https://pkg.jenkins.io/debian/jenkins.io.key | sudo apt-key add - # vim /etc/apt/sources.list deb http://pkg.jenkins.io/debian-stable binary 第...阅读全文

博文 2019-11-29 14:39:43 debian.cn

Go 1.15.7 新鲜出炉:修复安全问题,建议升级

Go 官方刚刚发布了 Go 1.15.7 和 Go 1.14.14,以解决最近报告的安全问题。建议所有用户都更新到以下版本之一(如果不确定哪个版本,请选择 Go 1.15.7)。具体修复的安全问题如下:1、cmd/go:使用 cgo 的包可能会在构建时导致任意代码执行。当 Windows 上使用 cgo 时,go 命令可以在构建时执行任意代码。行 “go get” 或任何其他构建代码的命令时,可能会发生这种情况。只有构建不受信任的代码(而不执行代码)的用户才会受到影响。除 Windows 用户外,这还可能影响在 PATH 中使用了 “.” 的 Unix 用户,在模块外部或禁用模块模式下行 “go get”或构建命令。具体 issue:https://github.com/golang...阅读全文

博文 2021-01-25 15:15:34 mp.weixin.qq.com

专访Docker大牛:Docker背后的真正引擎是Containerd

Kaewkasi:我十分认同这种观点,过去,我们启动行一组Web服务器是非常困难的,而有了Docker,我们几分钟之内就可以完成。 问:Docker与普通虚拟机有什么不同? Chanwit Kaewkasi: Docker基本上使用操作系统级别的虚拟化,Linux命名空间和控制组。与虚拟化技术(如虚拟机使用的虚拟机管理程序)相比,Docker开销非常小。 Docker背后的真正引擎是Containerd 问:您如何在日常工作中使用Docker? Chanwit Kaewkasi: 我曾经帮助过东南亚和欧洲的公司设计和实施使用Docker应用架构,并将它们部署在Docker Swarm集群上。 问:使用Docker时您遇到过什么问题?您认为目前存在的挑战是什么? Chanwit Kaewkasi: 多集群...阅读全文

博文 2017-11-22 10:50:11 debian.cn

Linux 上如何禁用 USB 存储设备

为了保护数据不被泄漏,我们使用软件和硬件防火墙来限制外部未经授权的访问,但是数据泄露也可能发生在内部。 为了消除这种可能性,机构会限制和监测访问互联网,同时禁用 USB 存储设备。 在本教程中,我们将讨论三种不同的方法来禁用 Linux 机器上的 USB 存储设备。所有这三种方法都在 CentOS 6&7 机器上通过测试。那么让我们一一讨论这三种方法。 方法 1:伪安装 在本方法中,我们往配置文件中添加一行 install usb-storage /bin/true, 这会让安装 usb-storage 模块的操作实际上变成行 /bin/true, 这也是为什么这种方法叫做伪安装的原因。 具体来说就是,在文件夹 /etc/modprobe.d 中创建并打开一个名为...阅读全文

博文 2017-12-18 22:52:58 debian.cn