InfraPub 为您找到相关结果 475

Open Source Initiative 批准四个新的开源许可证

许可证。 四个新的许可证 首先是 Cryptographic Autonomy License(CAL)。这个许可证是为分布式密码学应用而设计的。现有的开源许可证无法保证开放性,因为如果没有义务与其他对等体共享数据,那么一个对等体就有可能损害网络的运行。所以,CAL 除了是一个强大的版权许可以外,还包括向第三方提供独立使用和改软件所需的权限和材料,而不使第三方有数据或功能的损失。 随着分布式密码学在加密结构的点对点共享中越来越多的使用,如果更多的开发者发现自己需要一个像 CAL 这样的法律工具,也就不足为奇了。我们希望由此产生的许可证是清晰易懂的,并希望开源从业者会发现它大有用处。 在我们之前的报道中曾提到,欧洲核子研究组织 CERN 提交的 CERN Open Hardware...阅读全文

博文 2021-03-01 10:44:35 OSChina

Debian 9 Vim无法使用鼠标右键复制 解决方法

由于日常大部分工作需要在 Debian 环境下完成,最近发现升级到 Debian Stretch 后,Vim 的一个常用操作没法做了,没法使用鼠标,直接选择并制。很别扭,之前用着没问题的。今天来分享一个解决办法,为大家解决 Debian 9 VIM 环境下,无法使用鼠标右键进行选择、制的问题,供大家参考。 Debian 9 (Stretch) 无法使用鼠标右键选择、制的解决方法,Debian 9怎么使用右键制 装了 debian 9 以后,vim没有办法使用鼠标直接选择并制,检查后发现是一个默认的配置问题。可以使用以下方法彻底解决。 1、 打开 Vim 的默认配置文件 vim /usr/share/vim/vim80/defaults.vim 2、 转至第 70 行,找到: if...阅读全文

博文 2018-01-23 17:39:18 debian.cn

Java Annotations详解

(@Deprecated饰)的方法时。 创建你自己的注释 创建自己的注释是有可能的。注释被定义在它们自己的文件中,就像Java中的类或接口一样。下面是一个例子: @interface MyAnnotation { String value(); String name(); int age(); String[] newNames(); } 这个例子定义了一个包含四个元素的叫MyAnnotation的注释。 注意,每个元素的定义都很像接口中的方法定义。你可以使用原始数据类型定义元素的数据类型,你也可以使用数组定义元素的数据类型。但是不能使用合对象(Complex Object定义元素的数据类型。 要使用上面自定义的注释,可以这样做: @MyAnnotation( value="123", name...阅读全文

博文 2013-03-02 08:04:55 CSDN博客

如何对一个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

Debian 9.1 发布 包括一些包的更新

Debian项目很高兴地宣布其稳定分布的Debian 9(“stretch”)的第一次更新。这一点的发布主要增加了对安全问题的正,以及对严重问题的一些调整。这实际上不是一个新的版本,只是一些包的更新。所以没必要换掉 “stretch” 版本号。 该稳定版本主要对如下包进行了正: 3dchess:Reduce wasteful CPU consumption adwaita-icon-theme:Fix malformed send-to-symbolic icon anope:Fix incorrect mail-transport-agent relationship apt:Reset failure reason when connection was successful...阅读全文

博文 2017-07-23 08:00:38 debian.cn

Debian 系统中如何禁用 IPv6

国内腾讯云和阿里云的机器是没有ipv6的,但安装完 Debian 9 却发现默认启用了ipv6,所以需要将 IPv6 禁用,或者降低优先级。 方法一:降低 IPv6的优先级 使IPv4优先 默认的安装中,ipv4 和 ipv6 并存,并且 ipv6 却优先于 ipv4。如果不需要彻底关闭 ipv6,可以设置让 ipv4 优先于 ipv6。配置方式如下: echo "precedence ::ffff:0:0/96 100" >>/etc/gai.conf 当然也可以直接改 /etc/gai.conf 文件,找到下面这一行 #precedence ::ffff:0:0/96 100 把前面的#去掉即可。 方法二:设置 GRUB 启动参数禁用 IPv6 编辑 /etc/default...阅读全文

博文 2019-07-12 11:06:50 debian.cn

SVN切换分支用法汇总

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

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

新改进让Linux 5.10能更快地休眠以及恢复工作

如果你经常让你的系统经历休眠周期,那么从即将开始的 Linux 5.10 周期开始,性能应该会好很多。在即将到来的Linux 5.10合并窗口中,有一个变化允许对休眠/恢的I/O请求进行批处理,以加快休眠和恢进程。 到目前为止,Linux 内核依靠为每一页数据提交单独的 I/O 请求,但现在 Linux 5.10+ 的时候,它设置为使用 batch 与 blk_plug。 开发者Xiaoyi Chen的内核补丁解决了这一问题:合并I/O请求让系统休眠和恢的速度提升了一个数量级以上。在使用的32GB内存中,16GB内存的一个休眠和恢周期在改变前需要21分钟左右,在存储IOPS有限的系统上,改变后仅需要1分钟。" Xiaoyi Chen在亚马逊EC2旗下主导了这项工作,这项改变是在系统...阅读全文

博文 2020-10-04 20:25:21 debian.cn

Debian 9、RHEL 9 移除了对 MongoDB 的支持

许可,Red Hat 技术和社区外展计划经理 Tom Callaway 解释:“Fedora 认为 SSPL 是具有针对性的,它对特定类别的用户具有严重歧视性。” 此外,Debian Linux 也已经从它的发行版中删除了 MongoDB。 外界普遍认为从去年开始酝酿的开源与其它各势力的较量,到今年会发展成混战。联系一下前阵子 Confluent 宣布改其平台部分组件的开源协议,Redis 模块协议的改,其实目的是一样的,就是不想云厂商坐收渔翁之利。 这几位开源大佬与 MongoDB 其实可以视为开源厂商阵营;而前边提到的英国卫报可以看成是最终用户商阵营;AWS 可以归为云厂商阵营;Debian、RHEL 这一类则是操作系统层面,用于托管开源项目的阵营;当然还有最终个人用户一大阵营。 开...阅读全文

博文 2019-01-17 10:02:06 debian.cn

Kubernetes源码探疑:Pod IP泄露排查及解决方法

UK8S是UCloud推出的Kubernetes容器云产品,完全兼容原生API,为用户提供一站式云上Kubernetes服务。我们团队自研了CNI(Container Network Interface)网络插件,深度集成VPC,使UK8S容器应用拥有与云主机间等同的网络性能(目前最高可达10Gb/s, 100万pps),并打通容器和物理云/托管云的网络。过程中,我们解决了开源kubelet创建多余Sandbox容器导致Pod IP莫名消失的问题,确保CNI插件正常运行,并准备将后的kubelet源码提交给社区。 深度集成VPC的网络方案 按照我们的设想,开发者可以在UK8S上部署、管理、扩展容器化应用,无需关心Kubernetes集群自身的搭建及维护等运维类工作。UK8S完全兼容原生...阅读全文

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

(对于大中型机,甚至重启都是一种奢侈的)。所以,在当时不可变基础设施的设想是难以实现的,开发人员总是需要在服务器上对运行环境做一下持续的更改,如:系统升级,配置改,补丁等。在许多手动改之后,服务器的不同配置的重要性或必要性变得不清楚,因此更新或更改任何配置可能会产生意想不到的副作用(这就导致了 Martin Fowler所说的snowflake server “Phoenix Server”,2012)。可变基础设施通常会导致以下问题。在灾难发生的时候,难以重新构建服务。持续过多的手工操作,缺乏记录,会导致很难由标准初始化后的服务器来重新构建起等效的服务。在服务运行过程中,持续的改服务器,就犹如程序中的可变变量的值发生变化而引入的状态不一致的并发风险。这些对于服务器的改,同样会引入中间...阅读全文

FFmpeg 3.4 发布,多媒体处理工具合集

FFmpeg 3.4 已发布。FFmpeg 是用于处理音频、视频、字幕和相关元数据的多媒体内容的库和工具的合集。 库版本列表: libavutil 55. 78.100, libavcodec 57.107.100, libavformat 57. 83.100, libavdevice 57. 10.100, libavfilter 6.107.100, libavresample 3.7.0, libswscale 4.8.100, libswresample 2.9.100, libpostproc 54.7.100. 新型视频滤波器,音频滤波器,解用器和解码器以及其他更新。 在 FFmpeg 3.4 中包含的新视频滤镜中,有 deflicker,doubleweave...阅读全文

博文 2018-01-03 08:52:45 debian.cn

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

1.新的问题influxdb目前支持内存型索引inmem及文件型索引tsi1。之前追踪篇将influxd索引改为tsi1之后,经过一段时间的运行,从监控观察到,由于调用方采用异步队列+批处理的方案将数据写入influxdb,会在某些时刻调用方内部出现数据堆积,指标如图:横坐标: 时间轴,从12-29 00:00 到 12-30 00:00纵坐标: 队列中数据堆积长度,坐标最大值250k,即最大25w个数据堆积从上图可以看到,当天监控出现数次堆积,上午7:00-10:00尤为严重。在堆积时,登录influxdb服务器,查看机器状态如下:top - 09:40:58 up 120 days, 19:18, 1 user, load average: 32.29, 32.32, 29.82...阅读全文

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

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

是看顶层的哪个函数占据的宽度最大。只要有"平顶"(plateaus),就表示该函数可能存在性能问题。 颜色没有特殊含义,因为火焰图表示的是 CPU 的繁忙程度,所以一般选择暖色调。 三、互动性 火焰图是 SVG 图片,可以与用户互动。 (1)鼠标悬浮 火焰的每一层都会标注函数名,鼠标悬浮时会显示完整的函数名、抽样抽中的次数、占据总抽样次数的百分比。下面是一个例子。 mysqld'JOIN::exec (272,959 samples, 78.34 percent) (2)点击放大 在某一层点击,火焰图会水平放大,该层会占据所有宽度,显示详细信息。 左上角会同时显示"Reset Zoom",点击该链接,图片就会恢原样。 (3)搜索 按下 Ctrl + F 会显示一个搜索框,用户可以输入关键词...阅读全文

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

本田 40GB 数据险遭泄漏 因云端数据库未设密

近日,一位安全研究员在博客上表示发现了本田公司的云端数据库未设密码,这可能导致 1.34 亿份文档,约 40GB 数据被泄漏,其中包括机器主机名、MAC 地址、内部 IP 及操作系统版本等。在收到该研究员的提醒后,本田方面已对漏洞进行。 本田 1.34 亿份文档,40GB 数据险遭泄漏 根据安全研究员 Justin Paine 的说法,自 2019 年 7 月 1 日起,他就发现了本田对外暴露的 ElasticSearch 数据库未设置任何密码,内部包含大约 1.34 亿份文档,这些文档可以转换为大约 40GB 数据,而这些数据的日期最早可以追溯至 2019 年 3 月左右。 最初,Justin Paine 以为这些数据来自本田的一家经销商,但他很快否定了这一想法,因为这些文档包含了本...阅读全文

深入了解Docker背后的namespace技术

-rwxr-xr-x 1 nobody nogroup 8408 Nov 16 22:40 uts -rw-r--r-- 1 nobody nogroup 1694 Nov 16 22:36 uts.c 这是个很简单地例子,但是细想你会发现通过user namespace,可以以root权限在容器中运行(不是主机系统中的root)。不要忘记你可以随时更改 ls -la到bash中,并通过shell深入了解namespace。 总结 本文中,我们回顾了mount,network,user,PID,UTS和IPC Linux namespace,并没有改太多代码,只是增加了一些flag。杂的工作集中在管理多个内核子系统的交互。就像我一开始提到的,namespace只是我们用来创建容器的一种工具,我希...阅读全文

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

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

本文记录如何从 Debian 安装 Proxmox VE,以及配置 IPv4 和 IPv6 网卡,为硬盘分区。 预配置系统装好后,从 NOCIX 后台面板取得 登陆用户名 和 密码。 用户名是 customer密码是一串随机生成的字符串 使用 su 切换到 root 还需要输入密码,这样频繁操作比较麻烦。 免密登陆 root安装 sudo 实现免密 su 12apt updateapt install -y sudo 改 /etc/sudoers 文件注意:只能用 visudo 交互式来改 sudoers 文件 这是为了防止被脚本改,就别想用 echo 来改了 visudo 会验证配置的格式,如果不验证,而你写的配置有问题,那么你无法切换到 root,而只有 root 用户才能改...阅读全文

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

Debian Linux下安装配置 Pure

的目录为/usr/sbin/nologin,而 /etc/pure-ftpd/conf/PAMAuthentication 的内容为 yes,即pure-ftp使用PAM,可以关掉它。若不关掉,则需要在/etc/shells中,加入目录 /usr/sbin/nologin 。如果不注意这一点,将会总是登录不上。 参考官方文档中--with-pam项。/etc/pure-ftpd/conf/中每一个文件是一个启动参数项。 2. 增加仅供ftp的虚拟用户 sudo pure-pw useradd user01 -u ftpuser -d /noc (这时系统会提示为新增的虚拟用户输入口令。若后面需要改,用 sudo pure-pw passwduser01 ) sudo pure-pw...阅读全文

博文 2021-01-28 17:50:24 ftpd

社交巨人Facebook使用Linux和Btrfs的姿势

被我们称之为“影子层”的地方进行——我们可以在一个非生产环境重放生产网络的流量,这样我们能够在一个非常安全的地方检测系统的稳定性和性能。我们可以像做实验那样一边加大流量一边说:“好了,我先给它(测试环境)5%的生产网络流量,然后一路增加到100%,看看会有什么发现吧。”像做A/B测试那样,我就能得到两个内核在整个实验过程中对比鲜明的数据。 我们有工具能验证内核并帮助测试上游内核。这样比较容易发现上游内核新的有意思的bug,而非只是找到已经被上游内核过的bug。 Linux.com:您比较担心什么问题? Chris Mason:就运行Linux内核或者文件系统而言,我们还没遇到什么问题;况且有这么多的社区在支持Linux,我也没有必要担心什么。 Linux.com:您参与Linux开发也有...阅读全文

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

kubenetes 如何给资源打标签?如何删除标签?

给名为foo的Pod添加label unhealthy=true, `kubectl label pods foo unhealthy=true` 给名为foo的Pod改label 为 'status',值为 'unhealthy',且覆盖现有的value。 `kubectl label --overwrite pods foo status=unhealthy` 给默认的 namespace 下的所有 pod 添加 label, `kubectl label pods --all status=unhealthy` 仅当resource-version=1时才更新名为foo的Pod上的label, `kubectl label pods foo...阅读全文

如何在 Debian 中安装 DHCP 服务器

动态主机配置协议(DHCP)是一种用于使主机能够从服务器自动分配 IP 地址和相关的网络配置的网络协议。DHCP 服务器分配给 DHCP 客户端的 IP 地址处于“租用”状态,租用时间通常取决于客户端计算机要求连接的时间或 DHCP 服务器配置的时间。 DHCP 如何工作? 以下是 DHCP 实际工作原理的简要说明: 一旦客户端(配置为使用 DHCP 的机器)连接到网络后,它会向 DHCP 服务器发送DHCPDISCOVER数据包。 当 DHCP 服务器收到DHCPDISCOVER请求报文后会使用DHCPOFFER包进行回。 然后客户端获取到DHCPOFFER数据包,并向服务器发送一个DHCPREQUEST包,表示它已准备好接收DHCPOFFER包中提供的网络配置信息。 最后,DHCP...阅读全文

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

开源软件对于商业机构的6大好处

从根本上说,开源模式要由于专有模式,为什么这么说呢?下面总结了商业机构及政府机构可以从开源软件中获得的六大好处。 1、能更直观的选择供应商 在你投资工程和经济资源将产品整合到你的基础设施之前,需要确保产品的合格性:是否处于积极开发状态?是否有定期的漏洞和安全更新?产品是否能根据需求按时更新? 最后一点或许比你想象的还要重要。解决方案必须满足产品需求。但需求会随市场及商业的变化而变化,如果产品不随之做出改变,未来就需要花费一笔不菲的迁移成本。 而在开源的世界里,你可以综合产品的发展速度以及社区的健康程度来比较供应商。一个更积极、更多元化的社区能在一两年后开发出更好的产品,这是一个关键的参考因素。当然,供应商必须要有能力解决在项目发展过程中出现的不稳定性问题。最后,还需要供应商具备较长的支...阅读全文

博文 2017-11-15 23:41:11 debian.cn

Stackstorm 入门介绍

结果发布到IM中,比如 HipChat、JIRA 或者 Slack 等。 自动 - 识别和验证OpenStack计算节点上的硬件故障,正确排空实例并向管理员发送关于潜在停机时间的电子邮件,但如果出现任何问题 - 冻结工作流程并呼叫PagerDuty唤醒人员。 持续部署 - 与Jenkins一起构建和测试,配置新的AWS群集,基于NewRelic的应用程序性能数据,打开负载均衡器的一些流量,以及前滚或回滚。 Stackstorm工作原理 主要组件角色: 传感器(Sensors) 用于分别接收或监视事件的入站或出站集成的Python插件。 当来自外部系统的事件发生并由传感器处理时,StackStorm触发器将发射到系统中。 触发器(Triggers)外部事件的StackStorm表示形式...阅读全文

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

微代码就是由 Intel/AMD 提供的 CPU 固件。Linux 的内核可以在引导时更新 CPU 固件,而无需 BIOS 更新。处理器的微码保存在内存中,在每次启动系统时,内核可以更新这个微码。这些来自 Intel/AMD 的微码的更新可以去 bug 或者使用补丁来防范 bug。 如果你是一个 Linux 系统管理方面的新手,如何在 Linux 上使用命令行方式去安装或者更新 Intel/AMD CPU 的微码固件呢? 如何查看当前的微码状态 以 root 用户运行下列命令: # dmesg | grep microcode 输出如下: 注意,你的 CPU 有可能出现没有可用的微码更新的情况。这时它的输出可能是如下这样的: [ 0.952699] microcode: sig...阅读全文

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

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

两种集成测试,一种是一个 jenkins job,会不断调用 API 接口,确保API是按照预想的在工作,另一种是一个 Spinnaker 的 pipeline,用来执行日常任务(比如创建镜像,部署环境等)。当发现未知的失败是,首先执行回滚操作,直到这个问题被。 总结 Netflix 是一个优秀的企业,有着自由的精神和先进的技术,崇尚 DevOps 文化。而 Spinnaker 是他们在践行 DevOps 文化时创造出的优秀工具,通过这些工具我们能窥见他们对微服务和敏捷开发的深刻理解,希望能够给国内的开发者一些启发和帮助。 pipeline stage 目录...阅读全文

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

如何在敲代码时快速冷静 海豹突击队呼吸法

美国海豹突击队有一套 “让自己快速平静下来” 的技术,名曰:作战呼吸法(Combat Tactical Breathing)。这个中文名是我比比的,这三个单词我都认识,放一起这么翻译没错吧。 下次你遇到测试不通过啊,莫名其妙的 Bug,PM 找你改需求,在线系统的莫名其妙故障啊,你感到沮丧或者焦虑的时候,试试这个方法。我保证,效果比你用头撞墙好。 操作步骤(跟着以上 GIF 呼吸): 吸气 4 秒(蓝色圆圈扩大)保持你的肺部充满空气 4 秒(当蓝色圆圈最大并静止)呼气 4 秒(蓝色圆圈收缩)保持你的肺部空 4 秒(圆收缩并静止) 多次重以上步骤,直到你恢了平(lǐ)静(zhì)。然后,回去继续敲代码吧。...阅读全文

博文 2019-03-04 13:24:50 debian.cn

Debian 环境下安装配置 Gitlab

/repositories/gitlab/gitlab-ee/script.deb.sh | sudo bash 安装的过程中会有个蓝色的窗口提示你输入名称,这个是gitlab的访问域名,因为默认通过nginx进行解析的时候,指向的是你配置的这个域名,并且通过80端口。安装完成后可以看nginx的conf文件。 sudo apt-get install gitlab-ce 3. 启动GitLab 这个会加载所有的配置,启动相应的服务。所以说,和网络上其他的安装教程来比,新版本安装起来实在是太爽了。 sudo gitlab-ctl reconfigure 配置 更换域名 如上图,域名被替换为域名了,但是之前是字符串git@debian...,因为在安装的时候,蓝色窗口弹出的时候直接按了回车使用了默认值。改方法如下...阅读全文

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

Cortex: 高可用和水平扩展Prometheus监控系统

Prometheus已成为cloud-native世界中的默认监控应用程序和系统。对于真是使用案例,Prometheus应该是高可用的,这是有挑战的。一旦在高可用性模式下运行Prometheus,就会遇到很多问题,例如数据重,为重数据实现single pane等。为了解决此问题,Cortex诞生了。Cortex是一个CNCF sandbox project,旨在为使用Prometheus 收集的指标提供长期存储和全局指标视图。首先让我们看一下Cortex的主要目标,然后看一下它为Prometheus解决的一些问题。水平可伸缩性– Cortex可以分成多个微服务,每个微服务都可以独立地水平伸缩。例如,如果许多Prometheus实例正在向Cortex发送数据,则可以扩展Ingester微...阅读全文

博文 2021-10-09 17:00:22 知乎

理解 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

Golang 操作 Kafka 样例

1. Kafka介绍 1.1.1. Kafka是什么 kafka使用scala开发,支持多语言客户端(c++、java、python、go等) Kafka最先由LinkedIn公司开发,之后成为Apache的顶级项目。 Kafka是一个分布式的、分区化、可制提交的日志服务 LinkedIn使用Kafka实现了公司不同应用程序之间的松耦和,那么作为一个可扩展、高可靠的消息系统 支持高Throughput的应用 scale out:无需停机即可扩展机器 持久化:通过将数据持久化到硬盘以及replication防止数据丢失 支持online和offline的场景 制代码 1.1.2. Kafka的特点 Kafka是分布式的,其所有的构件borker(服务端集群)、producer(消息生产...阅读全文

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

Ubuntu发布重要更新将修复九个漏洞

Canonical发布了针对所有支持的Ubuntu操作系统的新的Linux内核安全更新,解决了由各个研究人员发现的总共九个漏洞。 新补的Linux内核漏洞影响 Ubuntu 17.10(Artful Aardvark),Ubuntu 17.04(Zesty Zapus),Ubuntu 16.04 LTS(Xenial Xerus),Ubuntu 14.04 LTS(Trusty Tahr)和 Ubuntu 12.04(Precise Pangolin)ESM(扩展安全维护)以及所有官方衍生版,包括 Kubuntu,Lubuntu等。 它们包括Mohamed Ghannam在Linux内核的Netlink子系统(XFRM)中发现的释放后使用漏洞,以及Linux内核不能正确处理大页内存的拷贝...阅读全文

博文 2017-12-20 11:31:08 debian.cn

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

无论你是刚接触Ubuntu,还是最近从微软Windows改用Ubuntu,都会在下文中找到适合你的一款软件。并非所有的应用程序对每个人都有用,欢迎分享你认为最出色的Linux应用程序。 有读者常常问我们必不可少的Ubuntu应用程序有哪些,本文我将逐一介绍21款对Ubuntu来说必不可少的应用程序,而不是仅仅在留言区回。 无论你是刚接触Ubuntu,还是最近从微软Windows改用Ubuntu,都会在下文中找到适合你的一款软件。并非所有的应用程序对每个人都有用,欢迎分享你认为最出色的Linux应用程序。 我们不会介绍默认情况下随Ubuntu交付的任何软件,比如火狐、LibreOffice、Thunderbird和Transmission等,可能的话,重点介绍不需要为它添加PPA的软件...阅读全文

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

最全 MongoDB 基础教程

源文档的排序获取第一个文档数据 db.ruochen.aggregate([{$group: {_id: "$by", url: {$first: "$url"}}}]) $last 根据资源文档的排序获取最后一个文档数据 db.ruochen.aggregate([{$group: {_id: "$by", url: {$last: "$url"}}}]) 管道 管道在Unix和Linux中一般用于将当前命令的输出结果作为下一个命令的参数 MongoDB的聚合管道将MongoDB文档在一个管道处理完毕后将结果传递给下一个管道处理 管道操作是可以重的 表达式:处理文档并输出 表达式是无状态的,只能用于计算当前聚合管道的文档,不能处理其它的文档 常用操作 $project:改输入文档的结构...阅读全文

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

Python3: 二分法查找的两种实现方法

二分法查找是一种基础的、简单而高效的算法,又称为折半查找。顾名思义,就是将待查表一分为二,从而减少了查找次数,提高了效率。但缺点就是待查表必须为顺序表,并且待查表在查找时不宜做增删操作。 其最优时间杂度为O(1),最坏时间杂度为O(logn)。代码样例: ``` # coding:utf-8 方法一:递归法 def binarySearch_01(listx, item): """Be of recursion""" length = len(listx) if length > 0: #定义中间值下标: split = length // 2 if listx[split] == item...阅读全文

Kafka 3.0新特性全面曝光,真香!

.tgz -C /opt/install/改kafka的配置文件broker.properties:[hadoop@bigdata01 kafka_2.12-3.1.0]$ cd /opt/install/kafka_2.12-3.1.0/config/kraft/[hadoop@bigdata01 kraft]$ vim broker.properties改编辑内容如下:node.id=1controller.quorum.voters=1@bigdata01:9093listeners=PLAINTEXT://bigdata01:9092advertised.listeners=PLAINTEXT://bigdata01:9092log.dirs=/opt/install...阅读全文

博文 2022-04-28 16:02:11 mp.weixin.qq.com

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

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

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

望的唯一方式是把它直接和另一种类型的数据库如 RDBMS 比较,或者对它有特别的期待。这就像把桔子和叉子比较。数据库系统有它们的用途。最好是理解并领会这些差别。强迫 MongoDB 开发人员按照 RDBMS 的方式做事就太遗憾了,我希望继续看到解决旧问题的有趣的新方法,如确保数据完整性、使数据系统具有从故障和恶意破坏中恢的能力。 在 4.0 版本中,MongoDB 引入了 ACID 事务处理,这是以创新方式引入重大改善的一个很好的例子。多文档、多语句事务现在是原子的了,它允许开发人员调整用于获取锁的时间,过期挂起事务以及改隔离级别。 关于作者 Phil Factor(为保护作者隐去真名),又称数据库摩尔,他有将近四十年的数据库密集型应用程序经验。在 20 世纪 80 年代初的一次展览会上...阅读全文

Debian、Ubuntu安装源配置文件说明

版本的发行说明,并未做好升级的准备。 Debian 的仓库自 squeeze 起与 Ubuntu 基本相同。除主仓库外,有: 「security」,Ubuntu 用于指安全性更新。即影响系统安全的 bug 补。Debian 特殊一些,见下文。 「updates」,非安全性更新。即不影响到系统安全的 bug 补。 「proposed-updates」,预更新。小 beta 版。过后会进入「updates」或「security」。Ubuntu 仅用「proposed」,无后缀「updates」。 「backports」,后备。Debian stable 发布后,Ubuntu 某版本正式发布后,其所有软件版本号便已被冻结,所有软件只 bug,不增加任何特性。但有人可能需要新特性,甚至某些较新...阅读全文

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

西数今年推出20TB HDD硬盘:MAMR革命来临

随着希捷、东芝先后推出16TB容量的HDD硬盘,现今的垂直磁道PMR机械硬盘不论容量还是技术水平应该是到头了,西数计划今年出样18TB及20TB的硬盘,会用上MAMR全新技术。 访问购买页面: 西部数据自营旗舰店 机械硬盘要想再提高容量,现在的磁记录技术已经没多少潜力可挖了,新一代HDD硬盘技术会转向HAMR热磁辅助记录技术,不过西数认为HAMR使用激光辅助加热,技术杂,成本高,可靠性也低,所以他们更倾向于MAMR微波辅助磁记录技术。 根据西数所说,MAMR硬盘技术的成本和传统垂直记录类似,杂性、可靠性也都更可控(99.99%的MAMR磁头写入寿命HAMR磁头高出几个数量级),生态方面也不需要更换新的主机管理损耗均衡。 西数最新表态今年底会推出两款MAMR技术的容量,一款是18TB容量...阅读全文

博文 2019-09-04 21:17:10 debian.cn

Google Chrome开始加入HTTP/3和IETF QUIC支持

谷歌开始在其Chrome浏览器中实现对HTTP/3的支持,该公司在一篇博客中宣布。此次更新将带来一些额外的性能改进,主要得益于实现了QUIC作为传输协议。互联网工程任务组(或IETF)早在2015年就推出了HTTP/2,它带来的一大改进就是支持用。 但是,它采用了TCP作为传输协议,以及TCP中的丢失恢机制,所以丢失的数据包仍然会造成所有活动事务的延迟。通过采用QUIC,HTTP/3可以进一步改善传输过程,因为丢失的数据包只会影响到直接受其影响的事务。 谷歌是QUIC的最初开发者,但该协议在IETF手中已经有一段时间了,现在IETF版本的QUIC与谷歌内部的QUIC有很大不同。到目前为止,谷歌只支持自己的QUIC实现,而IETF则还在研究其版本,但现在这种情况正在改变。谷歌表示...阅读全文

博文 2020-10-08 11:16:05 debian.cn

Linux 新提议,JFS 文件系统面临弃用和删除

在去年年初,SUSE 的开发者向 Linux 内核提交了一个 v2 补丁,该补丁将 ReiserFS 文件系统标记为已弃用,并将会在 2025 年从内核中正式删除它。删除的原因主要是过去十多年该文件系统都不再活跃,并且在现代内核的生产用例中也不太可能再使用。基于差不多的原因,日前开发者也开始着眼讨论 Journaled File-System(JFS)文件系统是否还应该在内核中继续保留的问题。​内核开发者 Christoph Hellwig 在邮件列表中表示:不久前,我们已经弃用了 ReiserFS,并计划将其删除。看着 JFS 中的代码,我想知道我们是否也应该这样做。虽然 JFS 不像 ReiserFS 那么杂,但它的使用率也很低,而且从未成为任何主要发行版中的默认文件系统。1990...阅读全文

博文 2023-01-17 06:14:05 joseph

Tiny Core Linux 8.0 发布,桌面 Linux 发行版

Tiny Core Linux 8.0 发布了。 更新内容: busybox 更新为 1.25.1,cpio 补了 uid / gid 错误 内核更新至 4.8.17 glibc 更新至 2.24 gcc 更新至 6.2.0 e2fsprogs 基础库/应用更新至 1.43.3 util-linux base libs/apps 更新至 2.28.2 下载地址 TinyCore-8.0.iso (16.0MB, MD5, includes flwm only) CorePlus-8.0.iso (116MB, MD5, includes flwm, JWM, IceWM, Fluxbox, Hackedbox, Openbox) TinyCorePure64-8.0.iso...阅读全文

Debian 环境安装新版 nginx

&& apt install nginx -y 到这一部分就完成了最新稳定版的 Nginx 的安装。 需要注意的是,这一步安装的 Nginx 和系统自带的 nginx 的配置目录略有区别,可以用一下几个简单的命令正: sudo mkdir /etc/nginx/{sites-available,sites-enabled}sudo mv /etc/nginx/conf.d/* /etc/nginx/sites-availablesudo rmdir -f /etc/nginx/conf.d/sudo perl -pi -e 's/conf.d/sites-enabled/g' /etc/nginx/nginx.conf...阅读全文

博文 2019-01-21 13:58:08 debian.cn

iTerm2 如何保持连接?

使用 Linux 进行命令行操作时,一不留神 SSH 客户端就断开了连接,如何配置 SSH 客户端保持连接? 第一种:改配置文件 /etc/ssh/ssh_config 在文件末尾添加: ``` TCPKeepAlive yes ServerAliveInterval 300 ``` 第二种 在 iTerm2 的 Perferences > Profiles > session 中设置找到选项, 勾选 When idel, send ASCII code就可以了 ``` ☑️ When idle, send ASCII code 0 every 60 seconds ``` ASCII和时间间隔可自定义。通过这个配置,可以达到保持 SSH 连接的目...阅读全文

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

一方面通过具体列举为企业提供了相对明确的判定指引,以试图一定程度上避免交易双方对“个人数据”范围达不成一致的情况,也可以针对诸如面部识别、声纹识别、虹膜识别等新技术领域出现的存在标识属性的个人信息进行更加明确的界定。 当然,CCPA这种列举式定义优劣参半,可能出现“挂一漏万”的情况,需不断根据随着技术发展而新产生的数据类型进行订。 2. 管辖权原则:GDPR规定杂覆盖面广,CCPA规定简练聚焦重点 2.1.1 GDPR的管辖权原则——属地+属人+保护性管辖,逻辑杂,范围广泛 按照传统的定义,GDPR的管辖原则为 “属地管辖”+“属人管辖”+“保护性管辖”的结合。 (1) 属地管辖:GDPR管辖任何发生在欧盟境内的数据处理行为; (2) 属人管辖:数据控制者和处理者的经营场所...阅读全文

RabbitMQ 高可用实现镜像队列

列中某个节点宕掉的后果: 当slave宕掉了,除了与slave相连的客户端连接全部断开之外,没有其他影响。 当master宕掉时,会有以下连锁反应: 与master相连的客户端连接全部断开;选举最老的slave节点为master。若此时所有slave处于未同步状态,则未同步部分消息丢失;新的master节点requeue所有unack消息,在此我向大家推荐一个架构学习交流圈:830478757 帮助突破瓶颈 提升思维能力,因为这个新节点无法区分这些unack消息是否已经到达客户端,亦或是ack消息丢失在老的master的链路上,亦或者是丢在master组播ack消息到所有slave的链路上。所以处于消息可靠性的考虑,requeue所有unack的消息。此时客户端可能有重消息;如果客户端连着...阅读全文

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

如何在 Debian 下配置邮件服务器

example.tst的Reverse zone配置: 192.168.10.1 IN PTR mail.example.tst. 在配置邮件服务器的过程中,这些记录可以根据系统的要求进行改。 2.设置主机名 首先,必须在/etc/hostname和/etc/hosts文件中指定邮件服务器的主机名。前者应仅包含主机名。 root@mail:~# vim /etc/hostname mail root@mail:~# vim /etc/hosts ## IP Fully Qualified Domain Name Hostname ## 192.168.10.1 mail.example.tst mail 增加用户 每一个Linux用户,在默认情况下,系统会为其自动创建一个邮箱。这些用户和邮箱将被用作电子邮件帐...阅读全文

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

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

Harbor 1.9 发布了,此版本新功能众多,包括 tag 保留和配额、可与 CI/CD 工具集成的 Webhook 通知、数据制、Syslog 集成以及 CVE 例外策略等安全功能。 Webhook 如果您是项目管理员,可以通过 Webhook 的通知机制,将 Harbor 的项目与您技术栈的其余部分连接在一起。简言之,如果您配置了 Webhook,Harbor 会就把该项目中发生的某些事件(包括推送、拉取、删除镜像和 Helm Charts、镜像扫描及 CVEanqu 漏洞发现)向 Webhook 端点发出通知。通过这些事件,您可以将 Harbor 与其他系统集成在一起,以简化持续集成和开发过程。理想情况下,获得 Webhook 的端点应具有一个操作侦听器,用于解释 JSON 格式...阅读全文

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