InfraPub 为您找到相关结果 767

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

个基于路径的处理器注册到该路径,请求就会被转交给 not found 处理器,最后返回 404。幸运的是,我们有一个名为 createHandler 的注册路由!它有什么作用呢?首先它会解码 HTTP 请求并进行基本的验证,例如确保请求提供的 json 与 API 资源的版本相匹配。接下来进入审计和准入控制阶段。然后资源将会通过 storage provider 保存到 etcd 中。默认情况下保存到 etcd 中的键的格式为 /,你也可以自。资源创建过中出现的任何错误都会被捕获,最后 storage provider 会执行 get 调用来确认该资源是否被成功创建。如果需要额外的清理工作,就会调用后期创建的处理器和装饰器。最后构造 HTTP 响应并返...阅读全文

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

Scrapy 架构及数据流图简介

)。 其提供了一个简便的机制,通过插入自代码来扩展Scrapy功能。 数据流(Data flow) Scrapy中的数据流由执行引擎控制,其过如下: 引擎打开一个网站(open a domain),找到处理该网站的Spider并向该spider请求第一个要爬取的URL(s)。 引擎从Spider中获取到第一个要爬取的URL并在调度器(Scheduler)以Request调度。 引擎向调度器请求下一个要爬取的URL。 调度器返回下一个要爬取的URL给引擎,引擎将URL通过下载中间件(请求(request)方向)转发给下载器(Downloader)。 一旦页面下载完毕,下载器生成一个该页面的Response,并将其通过下载中间件(返回(response)方向)发送给引擎。 引擎从下载器中接收到...阅读全文

博文 2017-07-23 22:56:26 debian.cn

Linux 内核将停止支持旧CPU架构 可减50万行代码

4.17 内核将删除 blackfin,cris,frv,m32r,metag,mn10300,score 和 tile(包括关联的设备驱动)的整个架构代码。我一直与每个维护人员一起工作,以确保我的解释是正确的,许多人都对在各支持这些 CPU 架构开展的工作留下了美好的回忆,但也认为在没有任何用户的情况下保持这些 CPU 架构活力毫无意。” 在即将发布的版本中放弃对旧 CPU 架构的支持,会减小内核的大小,并且如果存在任何潜在的错误,它还可以减少内核中的攻击媒介的数量。...阅读全文

博文 2018-04-10 10:29:09 debian.cn

如何使用 journalctl 清理 journal 日志

#TTYPath=/dev/console MaxLevelStore=warning MaxLevelSyslog=warning MaxLevelKMsg=warning MaxLevelConsole=info #MaxLevelWall=emerg #LineMax=48K 配置目录及其优先级 默认设置是在编译期间确的, 所以仅在确实需要修改默认设置的情况下, 才需要使用配置文件。位于 /etc/systemd/ 目录中的初始配置文件, 仅包含了展示选项默认值的注释, 目的在于方便系统管理员查看和直接修改。 如果软件包想要自某些默认设置, 那么必须将自的配置文件安装到 /usr/lib/systemd/*.conf.d/ 目录中。 /etc/ 目录仅供系统管理员使用。 系统管理员可以利用...阅读全文

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

打破IP协议重塑互联网 华为能做到吗

打破长达半世纪的 IP 协议,重塑互联网,可能实现吗?华为正在尝试中。据《金融时报》报道,华为联合中国工会、中国电信、中国工业和信息化部向国际电信联盟(International Telecommunication Union,ITU)提出一项名为“New IP” 的提案。 华为在提交的议案文章(题为“New IP framework and Protocol for Future Applications”)中介绍到,New IP 是一种新型互联网协议框架,能够更好地支持新兴网络应用,比如多网络和全息通信等,将从根本上支持网络层的可变长度、多语地址以及用户制的网络。 华为指出,现有的 IP 协议已面临着网络挑战,主要有两个方面:一是 AR/VR、全息通信等新兴应用的发展需要更高效和...阅读全文

博文 2020-03-31 06:40:15 debian.cn

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

>:指记录首部值时所记录的精确长度,超出的部分将会被忽略。 可以捕获的请求首部的个数没有限制,但每个捕获最多只能记录64个字符。为了保证同一个frontend中日志格式的统一性,首部捕获仅能在frontend中。 3.10 capture response header capture response header len 捕获并记录响应首部,其格式和要点同请求首部。 3.11 stats enable 启用基于编译时默认设置的统计报告,不能用于“frontend”区段。只要没有另外的其它设,它们就会使用如下的配置: - stats uri : /haproxy?stats - stats realm : "HAProxy Statistics...阅读全文

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

2017 年会是 Serverless 爆发之年吗

器容灾稳性等非专业逻辑的开发。这些服务器的运维和开发知识、经验极大地限制了开发者进行业务开发的效率。设想一下,如果开发者直接租用服务或者开发服务而无须关注如何在服务器中运行部署服务,是否可以极大地提升开发效率和产品质量?这种去服务器而直接使用服务的架构,我们称之为 Serverless 架构(无服务器架构)。 Serverless 架构的问世 2014 年,云厂商 AWS 推出了“无服务器”的范式服务。其实,最初“无服务器”意在帮助开发者摆脱运行后端应用所需的服务器设备的设置和管理工作。这项技术的目标并不是为了实现真正意上的“无服务器”,而是指由第三方供应商负责后端基础结构的维护,以服务的方式为开发者提供所需功能,例如数据库、消息,以及身份验证等。这种服务基础结构通常可以叫做后端即服...阅读全文

博文 2021-01-28 17:50:27 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

如何在 Debian 中安装 DHCP 服务器

/default/isc-dhcp-server 使用 INTERFACES 选项 DHCPD 响应 DHCP 请求所使用的接口。 比如,如果你想让 DHCPD 守护进监听 eth0,按如下设置: INTERFACES="eth0" 同样记得为上面的接口配置静态地址。 步骤 2:在 Debian 中配置 DHCP 服务器 3、 DHCP 配置的主文件是 /etc/dhcp/dhcpd.conf, 你必须填写会发送到客户端的所有网络信息。 并且 DHCP 配置中了两种不同的声明,它们是: parameters - 指如何执行任务、是否执行任务,还有指要发送给 DHCP 客户端的网络配置选项。 declarations - 网络拓扑、指客户端、为客户端提供地址,或将一组参数应用于一组声明...阅读全文

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

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

,很难做到井井有条。 Go For It!相比其他工具(比如Simplenote for Linux),它的真正卖点在于简单性。GFI不是试图帮助你整理你的论文,而是帮助你提醒自己:你需要开始使用它! 内置的闹钟功能和支持装入自的todo.txt,你就能在应用和设备之间同步待办事项列表,让GFI成为一款完全值得关注的应用。 应该关注的其他必要应用 就像我在文章开头所说的那样,本文可以轻松介绍101款必不可少的Linux应用。你会注意到,我尽量避免基于命令行接口(CLI)的工具,但是有几款工具要点赞,包括ncdu、rainbowstream和sudocabulary。 Peek是一款出色的动画GIF屏幕记录器。GNOME-Twitch是一款出色的桌面Twitch.tv应用...阅读全文

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

7大维度看国外企业为啥选择gRPC打造高性能微服务

解释,否则错误很容易产生,事情很容易被拖延。 以下是在选择框架时的一些设计考虑因素: 强类型 - 消息是否是强类型的?如果通过服务边界发送的消息清晰可见,那么可以消除由于类型而造成的设计和运行时错误。 打开解释 - 能够直接从服务API规范生成客户端库,减少了误解的问题。错误条件 - 有一套明确的错误代码可以更容易一致地交流问题。 文档 - 服务API应该是易读易懂的。服务API的格式应该尽可能清楚,准确地描述端点。 版本控制 - 更改是不可避免的,这是一个很好的选择,在某些时候,服务API将需要修改。所使用的消息传递格式和服务可以影响修改API并将其部署到生产的容易度。是否有明确的路径来增加版本及其相应的库,并推出更改? 微服务最佳实践,为什么可扩展性是重要的 除了上面列出的...阅读全文

博文 2018-03-19 17:51:32 debian.cn

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

Spinnaker 是 Netflix 在2015年开源的一款持续交付平台,它继承了 Netflix 上一代集群和部署管理工具 Asgard:Web-based Cloud Management and Deployment的优点,同时根据公司业务以及技术的的发展抛弃了一些过时的设计:提高了持续交付系统的可复用性,提供了稳可靠的API,提供了对基础设施和全局性的视图,配置、管理、运维都更简单,而且还完全兼容 Asgard,总之对于 Netflix 来说 Spinnaker 是更牛逼的持续交付平台。 在深入了解 Spinnaker 之前,先扯一扯 Netflix 的技术文化:这是一家全面拥抱云的公司,据报道数据中心完全部署在 AWS 上,是 AWS 的超级大客户。在上云后他们发现故障仍...阅读全文

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

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

志(Audit log),现在制化和可扩展性更强,支持事件过滤和 webhook。它们同时为系统审计提供了更丰富的数据。 状态化工作负载: StatefulSet Update 是1.7中一个新的 beta 状态的特性,能允许有状态应用如 Kafka,Zookeeper 和 etcd 的更新自动化。它使用了各种升级策略,包括滚动更新。 对于无顺要求的应用,通过 Pod 管理策略(Pod Management Policy),StatefulSet 现在支持更快的伸缩和启动。这可以大大提升性能。 本地存储( alpha状态 )是有状态应用一个最常被请求添加的特性。用户现在可以通过标准的PVC/PV接口和StatefulSet中的StorageClass来访问本地存储卷。 DaemonSet...阅读全文

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

Debian 相比 Ubuntu 有哪些不同之处

。Ubuntu的标准安装被设计成主要为了要求尽量少的用户输入,以便确保安装简单、速度尽可能快。要是你遇到任何问题,可以试试专家模式安装,这是Debian安装稍稍改头换面的版本。 Debian安装显然有其他优先事项。比如说,其图形化版本是GUI,这有别于主要在工具包中的基于文本的安装:除了让害怕使用命令行的那些用户感到安心外,没有任何优势可言。 相比之下,Debian之前的声誉是,只要按照在线操作说明,此外每个阶段接受默认设置,通常就可以安装Debian。然而,如果你决亲自选择,可以在安装过的每一步选择每个设置,这大大增加了安装所需的时间。Debian安装并不是迎合没有经验的用户,而是兼顾所有不同水平的用户。它不是很漂亮,但是不用编译自己的包,所以你不可能找到...阅读全文

博文 2017-12-22 23:41:07 debian.cn

谷歌公开了内部管理Infra层的两个工具的Paper

丝雀部署,然后是一段时间的延迟,然后增量到生产环境的其余部分,每个步骤之间还有一些进一步的延迟。 select步骤是通过名为Target Selection的无状态服务来实现的。这个服务提供了一个RPC方法: 输入是上线的asset列表和哪些asset已经更新的信息输出是还没有更新,但是已经准备更新的asset列表。这个列表通常是空的——比如,因为推出阶段中间配置了一些延迟。 Target Selection通过Prodspec配置,并且实现如下策略: 一次性推送所有东西以预先好的顺,一次推送一个集群推送一个asset,随后所有其他asset 我们发现,即使在单次推出的时间范围内,也需要能够应对不断变化的环境。比如,如果推出持续两周并影响数百个asset,则在推出过中可能会添加和删除...阅读全文

博文 2023-01-08 11:23:20 CSDN博客

协议介绍之深入了解 gRPC

发显得捉紧见拙,我们急需另一套更好的协议来构建我们的服务,于是就有了 HTTP/2。 HTTP/2 是一个二进制协议,这也就意味着它的可读性几乎为 0,但幸运的是,我们还是有很多工具,譬如 Wireshark, 能够将其解析出来。 在了解 HTTP/2 之前,需要知道一些通用术语: Stream: 一个双向流,一条连接可以有多个 streams。 Message: 也就是逻辑上面的 request,response。 Frame::数据传输的最小单位。每个 Frame 都属于一个特的 stream 或者整个连接。一个 message 可能有多个 frame 组成。 Frame Format Frame 是 HTTP/2 里面最小的数据传输单位,一个 Frame 如下(直接从官网...阅读全文

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

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

每个人适用同样的规则(环境可能是公平的,因此你需要用自己的方法胜出)。英才制度意味着你需要用自己的方式脱颖而出。有些项目实施英才制度,例如,在邀请开发者加入项目团队之前,通过要求他们作出一些贡献,以表明他们了解项目的代码、规则和文化。确保增加新的开发人员到项目中的过是众所周知的,并且这些流是透明的(例如公开投票)。 5、供应商中立 为了实现真正的开放,开发者需要大家认可他们的贡献。如果项目是供应商中立的,那么这更容易实现。供应商中立的项目不由任何组织或机构主导;英才制度应以个人的贡献为基础,不能基于任何特组织的目标或招聘方法。在供应商中立的基础上托管是实现此目标的一种方式。 6、有良好的和文件标准 文档化项目的代码格式规则(使代码格式化预设易于访问),对测试覆盖面、开发方法、软件和...阅读全文

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

gRPC 1.23.0 发布,Google高性能 RPC 框架

gRPC 1.23.0 发布了。gRPC 是 Google 开源的高性能、通用 RPC 框架,面向移动和 HTTP/2 设计,是由谷歌发布的首款基于 Protocol Buffers 的 RPC 框架。gRPC 基于 HTTP/2 标准设计,带来诸如双向流、流控、头部压缩、单 TCP 连接上的多复用请求等特性。这些特性使得其在移动设备上表现更好,更省电且节省空间占用。 主要更新内容如下: Core 反向移植 #19924 到 v1.23.x. (#19935)为自 iomgr 添加缺少的 APP 回调上下文 (#19687)将 DNS 重新解析期间的下限提高到 30 秒 (#19661)确保在 H2 的框架中至少有一个标题 (#19657)在使用 gevent 时分叉时修复段错误...阅读全文

博文 2019-08-18 18:31:20 debian.cn

Java 12 / JDK 12 正式发布

Mixed GC 如果 G1 Mixed GC 存在超出暂停目标的可能性,则使其可中止。 Promptly Return Unused Committed Memory from G1 G1 及时返回未使用的已分配内存 增强 G1 GC,在空闲时自动将 Java 堆内存返回给操作系统。为了实现向操作系统返回最大内存量的目标,G1 将在应用不活动期间期执行或触发并发周期以确整体 Java 堆使用情况。这将导致它自动将 Java 堆的未使用部分返回给操作系统。而在用户控制下,可以可选地执行完整的 GC,以使返回的内存量最大化。 上述每一个新特性都有详细的说明文档,可以点击相应链接查看。 观望 JDK 13 根据 JDK 13 的迭代计划,预计将于 2019 年 9 月发布 —— Java 现在采...阅读全文

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

Gitlab 12.2 发布:改进团队协作

跨越多个项目,代码更改之间具有相互依赖关系,其中合并更改的顺很重要。GitLab 现在支持 跨项目合并请求依赖 ,使这些依赖关系成为可能,并防止因更改按错误的顺合并而导致的错误。减少错误意味着能够减少修改,并更快地部署更改。 Gitlab 12.2 还有其他改进,包括 合并请求中的安全审批 、 Core 中包含的范围内的环境变量 、按域限制组成员 、 功能标志百分比推出策略和功能标志用户 ID 推出策略 等内容。 详情见发布说明:https://about.gitlab.com/2019/08/22/gitlab-12-2-released/...阅读全文

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

Netty+Nacos+Disruptor自研企业级API网关

: 1. 搭建环境 首先,我们需要安装Node.js和NestJS CLI,并创建一个NestJS项目。然后,我们需要安装TypeScript、GraphQL、TypeORM和其他依赖库。 2. 设计数据模型和API 在设计数据模型和API时,我们需要GraphQL Schema和TypeORM实体类。为了提高可维护性,我们可以使用代码生成工具进行自动化生成。 3. 实现后端功能 在实现后端功能时,我们需要编写NestJS控制器和服务,并调用TypeORM进行数据库操作。同时,我们需要集成GraphQL,并编写Resolver进行数据查询和操作。 4. 实现前端功能 在实现前端功能时,我们需要编写React组件,并使用Apollo Client调用GraphQL API。同时,我们需要...阅读全文

博文 2023-05-27 12:49:20 bianchengyuan123

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

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

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

Docker 快速入门之 Dockerfile

在容器环境中,我们可以通过容器创建一个我们自过的镜像,那么我们是否可以直接通过基础的镜像直接自镜像呢?答案当然是可以的,在 Docker 中我们可以从名为 Dockerfile 的文件中读取指令并且自动构建镜像。在本文中,将介绍 Dockerfile 的基本语法以及基本知识。 1 Dockerfile 是什么? Dockerfile 其实是一份文本文档,里面包含了用户可以用来操作镜像的一些指令。通过顺执行这些指令,最后得到一个自的镜像,这有点类似于我们的 shell script。 2 Dockerfile 示例 接下来先看一个 Dockerfile 示例: FROM centos LABEL maintainer="Locez " ENV...阅读全文

博文 2017-12-16 13:50:31 debian.cn

Go 泛型的括号选择:[ ] or ( )

( ) 和 [ ] 可供选择。然而缺少修饰的方括号会在数组和 slice 的类型声明中造成歧,在解析索引表达式时也会引起小度的歧。因此在设计之初他们决使用小括号,因为小括号似乎更符合 Go 语言的风格,而且看起来问题最少。 为了使小括号正常工作,并且为了向后兼容,他们表示不得不在类型参数列表中引入type关键字。最后,他们在参数列表、复合字面量和嵌入类型中发现了额外的解析歧,而这些歧需要嵌套更多的小括号来解决。不过即便如此,他们还是决继续使用小括号,因为当时还有更重要的设计问题需要解决。 现在他们决重新考虑这个最初的决。如果仅使用方括号声明类型参数,那么声明数组的方式如下所示: type A [N]E 不过这就无法与泛型的声明进行区分: type A[N] E 但如果能接受额外的...阅读全文

博文 2020-07-16 10:38:01 debian.cn

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

容器要求。换句话说,即使有一个未使用的节点可以在其中运行应用容器,但如果初始化容器具有该节点可以处理的更高资源先决条件,则Pod也不会部署到该节点。因此,在初始化容器的请求和限制时,您应尽可能严格。最佳做法是,除非绝对必要,否则请勿将这些参数设置为高于应用容器的值。 标准容器和Sidecar容器 在k8s1.18 之前,这两种容器从k8s管理的角度来看,并没有什么区别。只不过人为从功能上做了区分。 使用sidecar容器(模块化)具有的优点 加速应用开发,因为容器可以在团队甚至更大的社区之间重复使用 整理专家知识,因为每个人都在一个容器化的实现上进行协作,该实现反映了最佳实践,而不是无数种功能大致相同的自家生产的不同容器 启用敏捷团队,因为容器边界是自然边界,是团队职责的契约...阅读全文

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

SonarQube 8.4 发布,分析时间最多可减少 80%

SonarQube v8.4 发布了。SonarQube 是一个用于管理源码质量的平台,帮助开发者编写干净的代码,其支持的语言包括:Python、Java、PHP、C#、C、Cobol、PL/SQL 与 Flex 等。 此版本扩展了 OWASP(Open Web Application Security Project,开放式 Web 应用安全项目)类型覆盖范围、带来了更快的分析速度、热备份和更快的启动。 Python 添加了 XSS 检测,以及另外 4 个 OWASP Top 10 类型 此版本中添加了一个与 XSS 相关的 Security Hotspot:S5247 查找在模板引擎中已关闭自动转的所有位置。XSS 在OWASP Top 10 中属于 A7,此版本还增加了其它四个...阅读全文

博文 2020-07-13 12:55:22 debian.cn

Oracle Linux 8.0 发布

Oracle Linux 8.0 发布了,更新包中包括基础 BaseOS 和 Application Streams,其中 BaseOS 提供运行环境的用户空间,Application Streams 提供了一系列以往分发在软件集中的应用,以及可在用户空间内运行的其它产品和。 Application Streams Oracle Linux 8 引入了 Application Streams 的概念,它可以比核心操作系统包更频繁地交付和更新多个版本的用户空间组件。Application Streams 包含必要的系统组件和一系列以往分发在软件集中的应用,以及其它产品和。 系统管理 引入 Dandified Yum 软件包管理器,它是基于 DNF 技术的 yum 工具的新版本,可在基...阅读全文

博文 2019-07-20 22:39:32 debian.cn

在 Kubernetes 上扩展 TensorFlow 模型

,并相关的分发策略,就足以实现 Kubeflow 的同步策略。 初始化 TFJob 后,将会在每个 worker 节点上创建一个新的 **TF_CONFIG** 环境变量。其中包含了关于训练批次、当前训练迭代以及 TFJob 用于执行分布式训练的其他参数的信息。通过与各种 Kubernetes 控制器、 API 进行交互,Tf-operator 协调训练过,并维护在清单中的预期状态。 另外,通过 tf-operator,异步训练模式可以使用 **ParameterServerStrategy**。在[这里](https://iamondemand.com/blog/scaling-tensorflow-models-on-kubernetes/)(以及下面),你将看到一个由 tf...阅读全文

WebAssembly:无需容器的 Docker (上)

布与 WasmEdge 合作支持 WebAssembly。本文将解释什么是 WebAssembly(Wasm),为什么它与 Docker 生态相关,并提供一些实践示例供大家尝试。 我们假设你已经熟悉 Docker 工具。 我们将使用我们在 PHP 的 WebAssembly 端口上做的工作来演示如何构建 PHP 解释器,将其打包为 OCI 镜像的一部分,并使用 Docker 运行它。请注意,本文专注动手经验,而不是讨论技术细节。WebAssembly 是什么?为什么选它?本节是对 WebAssembly 的基本介绍。 已经熟悉 Wasm 的小伙伴,可以快速重温一下,明天的文章将介绍更多实践。什么是 WebAssembly?WebAssembly 是一种二进制指令格式的开放标准,它支持从不...阅读全文

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

GlusterFS 和 Ceph 比比看

Ceph 的差异。顾名思,GlusterFS 是来自 Linux 世界的文件系统,并且遵守所有 POSIX 标准。尽管你可以将 GlusterFS 轻松集成到面向 Linux 的环境中,但在 Windows 环境中集成 GlusterFS 很难。 Ceph 是一种全新的存储方法,对应于 Swift 对象存储。在对象存储中,应用不会写入文件系统,而是使用存储中的直接 API 访问写入存储。因此,应用能够绕过操作系统的功能和限制。如果已经开发了一个应用来写入 Ceph 存储,那么使用哪个操作系统无关紧要。结果是,Ceph 存储在 Windows 环境中像在 Linux 环境中一样容易集成。 基于 API 的存储访问并不是应用可以访问 Ceph 的唯一方式。为了最佳的集成,还有一个...阅读全文

博文 2017-08-09 10:35:29 debian.cn

Dubbo 2.7.0发布 分布式RPC服务框架

中心解耦,增加对 Apollo 等第三方专业配置中心的支持,更易于扩展新增应用级别的动态配置规则规则体使用更易读、易用 YAML 格式外部化配置。支持读取托管在远的集中式配置中心的 dubbo.properties,实现应用配置的集中式管控。更精炼的注册中心 URL,进一步减轻注册中心存储和同步压力,初步实现地址和配置的职责分离。新增服务元数据中心,负责存储包括服务静态化配置、服务(如方法签名)等数据,默认提供 Zookeeper, Redis 支持。此功能也是 OPS 实现服务测试、Mock 等治理能力的基础。异步编模式增强(限于 Dubbo 协议)原生 CompletableFuture 签名接口支持服务端异步支持异步 Filter 链新增 Protobuf 列化协议扩展新增...阅读全文

博文 2019-01-18 09:43:16 debian.cn

Debian GNU/Linux 删除旧驱动程序,激怒老式硬件用户

Phoronix表示,该网站近期收到了许多用户的来信,称对 Debian GNU/Linux 放弃许多旧的硬件驱动的举措感到愤慨。本月初,Debian“X Strike Force”团队决从 Debian 中删除一些过时的输入和视频驱动。其指出,作出该决的依据是“它们在上游没有维护,或没有任何价值。” 受影响的驱动包括有 Mach 64、ATI Rage R128、Savage、Silicon Motion、SiS、Trident 和 NeoMagic 图形硬件。其中,像 ATI Rage 128 之类已有 20 多年的应用历史,并且这些驱动还支持许多其他种类硬件。 最初,Geode display driver 也被设置为删除,不过最终被保留了下来。此外,Elo...阅读全文

博文 2020-04-23 09:29:31 debian.cn

Golang 应用集成 Prometheus 统计数据支持

间,响应大小。主要做统计用,设置分位数的值,会实时返回该分位数上的值。 Golang中集成 Prometheus 库 提供了一个用 Golang 写成的健壮的插桩库,可以用来注册,收集和暴露服务的指标。在讲述如何在应用中暴露指标前,让我们先来探究一下 Prometheus 库提供的各种指标类型。 下载 Prometheus go 客户端 go get github.com/prometheus/client_golang/prometheus/promhttp. Golang应用中集成 Prometheus HTTP 服务器 package main import ( "net/http" "github.com/prometheus/client_golang/prometheus...阅读全文

博文 2022-11-24 10:33:09 CSDN博客

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

Debian 8 使用 Apache 部署 Ruby on Rails

systemctl restart apache2 部署多个Rails应用 有许多方法可以使用Passenger部署多个Rails应用。 最简单的方法是运行如上配置的多个不同的虚拟主机来托管单个Rails应用。 或者,您可以在单个虚拟主机中托管多个Rails应用。 本节介绍一个。 1.添加RailsBaseURI指令,指虚拟主机配置中Rails应用的路径,如以下示例所示, /etc/apache2/sites-available/example.com.conf: DocumentRoot /var/www/html/example.com/public_html/ RailsBaseURI /app1 RailsBaseURI /app2 RailsBaseURI /app3 这些指...阅读全文

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

MongoDB 4.2 正式发布 引入分布式事务

MongoDB 4.2 正式发布了,MongoDB Server 4.2 提高了现代事务和分析数据平台的技术水平。 Mongodb-4.2 的主要改动包括: 分布式事务将 MongoDB 的多文档 ACID 从副本集扩展到共享集群,能够为更广泛的用例服务按需物化视图使用新的 $Merge 运算符,在集合中缓存大型聚合的输出是一种常见的模式,新的 $Merge 运算符将可以有效地更新这些结果,而不是完全重新计算它们通配符索引使建模像产品目录这样的高度异构的集合变得简单和自然,而不牺牲对索引的支持。只需一个过滤器,它将自动索引集合中所有匹配的字段、子文档和数组MongoDB 查询语言增强功能,如更有表现力的更新、新的数学运算符和扩展的 regex 支持。此版本的 update 和...阅读全文

博文 2019-08-16 07:54:08 debian.cn

“Debian 章程有毒” - OSCHINA

些多年未见的老朋友,在这场谈话中,他们谈到了一个话题—— Debian 的民主以及他们在理论和实践上的失败。 作为最古老的 Linux 发行版本之一,Debian 系几乎占据 Linux 系统家族里的半壁江山;作为老牌的开源社区,Debian 运行了近30年依旧香火不断;但是,作为一个统筹几百个开发者协作的社会组织,Debian 为什么却让这些人失望了? 01 不吃香的 DPL Bruce Perens 走后,DPL(Debian Project Leader)这个词被 Debian 章了出来。DPL 由 Debian 社区选举出来,一年一届,每年春天都会有一个 Debian 开发者竞选成功,接受这个组织的“加冕”。 2019年的春天,Debian 的这一选举却“轮空”了。3月11日...阅读全文

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

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

RTE_GRAPH_BURST_SIZE 大小(node->size)的 object 队列,它了该 node 中可以容纳和处理的报文数量。如果一个 node 试图将报文排队到下一个 node,但下一个 node 已经有报文在排队并且已满(例如在 l3fwd 中,用户可以有多个接收队列/ node 排队到同一个下一个 node pkt_cls),node 的 object 队列大小将会被动态的加倍。这意味着 node 具有批处理的优势,因为它可以累积报文。 注意:当前 API 不支持 node 的 object 队列大小在增大后再缩小 Objs 的传递 — 'home run'/normal enqueue 报文转换有两种类型,一种是正常的 enqueue,另一种是优化情况,“home run”。 Normal...阅读全文

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

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

改Docker映像名称和任何相关标志(如ports和volumes ),也可以将以下命令用于其他容器化应用。 仍在主节点内,执行以下命令以创建名为nginx的部署: kubectl create deployment nginx --image=nginx 部署是一种Kubernetes对象,可确保始终根据已的模板运行指数量的pod,即使pod在群集生命周期内崩溃也是如此。 上面的部署将使用Docker注册表的Nginx Docker Image创建一个包含一个容器的pod。 接下来,运行以下命令以创建名为nginx的服务,该服务将公开公开该应用。 它将通过NodePort实现 ,该方案将通过在群集的每个节点上打开的任意端口访问pod: kubectl expose...阅读全文

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

Facebook 开源的一组 Linux 内核组件与工具

近日,Facebook 开源了一套解决重要计算集群管理问题的 Linux 内核组件和相关工具,这些项目覆盖了资源控制、资源利用、工作负载隔离、负载均衡、测量和监控等方面:BPF、Btrfs、Netconsd、Cgroup2、PSI、Oomd。 Facebook 表示这些项目现在已大规模用于其所有基础设施生产环境中,并用于其它许多企业组织的环境中。 BPF:https://facebookmicrosites.github.io/bpf/ BPF 是 Linux 内核中一种高度灵活、高效率的代码执行引擎,可以让字节码在各个 hook 点运行,以使用自代码。虽然 BPF 已广泛用于数据包过滤,但是 BPF 的指令集具有很强的通用性和灵活性,足以支持和允许除网络之外的众多使用场合,比如跟踪和...阅读全文

博文 2018-11-24 09:27:14 debian.cn

如何通过 AssumeRole 访问 AWS 的 Web 控制台

AWS 的临时权限可以通过 AssumeRole 访问控制台,但需要经过一些配置和操作。以下是如何使用 AssumeRole 通过 SessionToken 访问 AWS 的管理控制台。 以下步骤,包括了生成临时凭证 SessionToken,并通过这个凭证生成可访问 AWS Web控制台的登录 URL。完整的流如下。一. 创建并配置 IAM 角色• 创建目标角色(RoleA):• 创建一个 IAM 角色,为其分配所需的权限策略(如 AdministratorAccess 或自策略)。• 配置信任关系,使特用户或角色可以 Assume 该角色。例如:{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow...阅读全文

博文 2025-01-15 15:36:30 joseph

Node.js Vs. PHP:你应该选择哪一个

PHP 是一种编语言,Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境。 Node.js VS PHP,哪一方可以赢得这场战争取决于你构建的网站类型。比方说,如果你想构建一个实时的聊天应用,那么选择 Node.js 是明智的,因为它可以轻松处理大量的客户端请求。但是,这并不意味着PHP 不可以,请看完 Node.js VS PHP 后再决用谁构建你的网站。 1.性能: 在性能方面,Node.js 显然赢了这一局。由于 Node.js 遵循事件驱动的非阻塞I/O模型,与传统的后端技术相比,Node.js 能够处理大量的服务器请求。PHP 遵循一个阻塞模型,其中在服务器端创建多个线来处理多个客户端请求,如果代码没有被优化,它会导致高服务器负载和响应时间...阅读全文

博文 2017-12-23 23:15:39 debian.cn

Python的闭包和装饰器

回绑变量后的函数(也即闭包),此时即便生成闭包的环境(父函数)已经释放,闭包仍然存在,这个过很像类(父函数)生成实例(闭包),不同的是父函数只在调用时执行,执行完毕后其环境就会释放,而类则在文件执行时创建,一般执行完毕后作用域才释放,因此对一些需要重用的功能且不足以为类的行为,使用闭包会比使用类占用更少的资源,且更轻巧灵活,现举一例:假设我们仅仅想打印出各类动物的叫声,分别以类和闭包来实现: 可以看到输出结果是完全一样的,但显然类的实现相对繁琐,且这里只是想输出一下动物的叫声,一个 Animal 类未免小题大做,而且 voice 函数在执行完毕后,其作用域就已经释放,但 Animal 类及其实例 dog 的相应属性却一直贮存在内存中: 而这种占用对于实现该功能后,则是没有必要...阅读全文

博文 2014-07-23 17:06:38 debian.cn

Ubuntu 19.10 计划于 10 月 17 日正式发布,代号 Eoan Ermine

Canonical 官方 宣布 Ubuntu 19.10 版本的发布日期在 2019 年 10 月 17 日,它将是 Ubuntu 20.04 LTS 发布之前的最后一个短期版本。 根据 Ubuntu 按照字母顺进行版本命名的规则,该版本名称基于字母 “E”,代号为 “Eoan Ermine”。“Ermine” 学名白鼬,俗称短尾黄鼠狼。 于 9 月份发布的 GNOME 3.34 桌面版 将构成下一个 Ubuntu 版本的基础。此更新包括 Nautilus、Evince 和 Calendar 等核心应用的新版本,还可能包含改进的录音机工具。 此外,在 Ubuntu 19.04 版本中首次亮相的实验性 Xorg 分数缩放 设置将会在 19.10 版本中更容易获得。 新版本其他的计划...阅读全文

博文 2019-05-14 13:26:43 debian.cn

nsenter 及 Linux命名空间 简介

nsenter 是一个可以在指的命令空间下,运行的命令,它位于 util-linux 包中。 nsenter 用途 nsenter 的一个典型用途是进入容器的网络名字空间,进行网络相关的排障。大多数容器,为了保持轻量,没有包含较为基础的命令,比如说 ip,ping,telnet,ss,tcpdump等,这就给容器内的网络调试带来困扰。这时就可以使用 nsenter 命令仅进入到容器的网络命名空间,使用宿主机的相关命令调试容器网络。 此外,nsenter也可以进入 mnt, uts, ipc, pid, user 命令空间,以及指根目录和工作目录。 nsenter 使用 首先看下nsenter命令的语法: nsenter [options] [program [arguments...阅读全文

博文 2020-12-15 11:22:44 debian.cn

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

xxx ( 加上 -q 选项 ),则在传输文件时不显示进度条。-y 覆盖模式trz -y 或 tsz -y xxx ( 加上 -y 选项 ),如果存在相同文件名的文件就直接覆盖。-b 二进制模式trz -b 或 tsz -b xxx ( 加上 -b 选项 ),二进制传输模式,对于压缩包、图片、影音等较快。-e 转控制字符二进制模式时,控制字符可能会导致失败,trz -eb 或 tsz -eb xxx ( 加上 -e 选项 ) 转所有已知的控制字符。-d 传输文件夹trz -d 或 tsz -d xxx ( 加上 -d 选项 ),则可以上传或下载指文件夹和文件。-B 缓冲区上限trz -B 20m 或 tsz -B 2M xxx 等,设置最大缓冲区上限 ( 默认 10M )。会自动根据网速选...阅读全文

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

本文作者从事数据库相关工作接近四十年,最近开始使用 MongoDB。在开始使用 MongoDB 之前,作者希望有些事情自己已经知道。根据一般经验,对于数据库是什么以及它们能干什么,人们会有先入为主的认识。为了给他人提供方便,本文列出了一些常见的错误。 本文要点 即使 MongoDB 没有强制要求,设计一个模式还是至关重要。 类似地,在设计模式及访问模式时设计好索引。 避免大对象,尤其是大数组。 谨慎对待 MongoDB 的设置,尤其是关乎安全和稳性时。 MongoDB 没有查询优化器,因此,对于如何安排查询操作的顺,你必须格外小心。 创建一个无需身份验证的 MongoDB 服务器 很遗憾,MongoDB 在安装时默认不启用身份验证。在只从本地访问的工作站上,这没什么不好。但是,由于...阅读全文

五种绕过 Linux 命令别名的方法

我们可以使用 alias 命令或显示 bash shell 别名。一旦创建了 Bash shell 别名,它们将优先于外部或内部命令。本文将展示如何暂时绕过 bash 别名,以便你可以运行实际的内部或外部命令。 我在我的 Linux 系统中了以下 mount 别名: alias mount='mount | column -t' 但是,在我挂载文件系统和其他用途时想绕过这个 bash 别名,我如何临时禁用或者绕过这个别名呢? 你可以使用 alias 命令或显示 bash shell 别名。一旦创建了 bash shell 别名,它们将优先于外部或内部命令。本文将展示如何暂时绕过 bash 别名,以便你可以运行实际的内部或外部命令。 五种绕过 Bash 命令别名的方法 尝试以下任...阅读全文

博文 2018-03-08 13:33:02 debian.cn

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

。因为当时还没有可用的 C++ 编译器来支持新的语言,这个新标准的采用与普及经历了几年时间的迭代。正因此,由于 C++11 的出现,C++ 在 TIOBE 榜单中的地位在 2001 年以来不断下降之后,慢慢走上了正轨。 第二个重大变化当然要属 C++20 的出现,其引入了模块、概念(Concepts)等功能。目前 C++20 版本的使用还正在逐渐上升,未来几年,这也 可能会驱动其在 TIOBE 榜单的地位。」 整体而言,在 2022 年,C++ 因为涨幅最大,为 4.62%,从而成为 TIOBE 2022 年度编语言魁首。亚军是增幅 3.82% 的 C 语言,季军是 Python(增幅 2.78%)。 另外,在 Top 20 榜单中,开发 iOS、MacOS 等苹果平台应用常用的...阅读全文

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

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

易双方处理的数据类型非常复杂且在不断演进更迭,交易双方仅根据GDPR的或监管机构的指引,很难判断特类型数据是否属于GDPR管辖的“个人数据”,导致实践中对于“个人数据”这一概念的解释弹性空间极大。例如:通讯网络和设备中(例如核心网存储设备)存储或传输的IMSI、IMEI、ISDN等识别号码,虽也可与其它信息结合间接地识别到特个人,但识别的过复杂,需利用一技术手段,并投入较多时间和成本。 这些成本及投入何时是“合理的”,何时是“不合理的”?对于广大交易双方而言很难判,导致数据的控制者(譬如电信运营商)经常与数据处理者(如通讯设备和运维供应商)之间时常就上述IMSI、IMEI号等数据是否受GDPR管辖这一问题无法达成一致,进而无法在前述DPA《数据处理协议》、SCC《数据跨境转移协...阅读全文