InfraPub 为您找到相关结果 796

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 中文开源技术交流社区

如何重启 Kubernetes 中的 Pods

{namespace} 这个方法简单粗暴有效。因为 Kubernetes 是声明式 API,所以删掉了之后,Pod API 就与预期的不一致了,便会自动重新创建 Pod 保持与预期一致。但是如果ReplicaSet 的 Pod 很多的话,那么要一个个手动删除,会很麻烦,所以可以使用命令来删除 ReplicaSet, kubectl delete replicaset {rs_name} -n {namespace} 由于 Deployment 并不是直接操控的 Pod ,而是操控的 ReplicaSet ,而 ReplicaSet 就是由副本数目的定义和Pod 模板组成,所以我们也可以通过调整 ReplicaSet 的数量来实现重启,比如先 scale 到 0,然后再 scale...阅读全文

博文 2020-07-13 21:23:30 debian.cn

Ceph 12.2.0 正式版本发布, 代号 Luminous

Luminous的升级后,集群将尝试将现有池与已知应用(即CephFS,RBD和RGW)相关联。未与应用程序关联的使用池将生成健康警告,可以使用新命令手动关联任何未关联的池。ceph osd pool application enable RGW RGW支持最终用户请求服务,通过ElasticSearch进行RGW元数据搜索,并且还支持自定义元数据字段。 查询语言是一组RESTful API,用户可以通过其元数据来搜索。还添加了允许自定义元数据字段控制的新API。 RGW支持动态存储桶索引分片。随着桶中的数量的增加,RGW将自动重新构建桶索引。不需要用户干预或桶大小容量规划。 RGW引入了上传的服务器端加密,用于加密密钥的三个选项有:自动加密(仅推荐用于测试设置),客户提供的类似于...阅读全文

博文 2017-08-31 13:36:49 debian.cn

译:Kubernetes 最佳实践

束使用 Deployment、DaemonSet、ReplicaSet 或者 StatefulSet 跨节点部署 Pod使用多节点使用基于角色的访问控制(RBAC)在外部托Kubernetes集群(使用云服务)升级Kubernetes版本监控集群资源和审计策略日志使用版本控制系统使用基于Git的工作流程(GitOps)缩小容器的大小用标签整(译者注:或解为资源)使用网络策略使用防火墙使用命名空间K8s 中的命名空间于组织、在集群中创建逻辑分区以及安全方面的考虑至关重要。 默认情况下,K8s 集群中有 3 个命名空间,default、kube-public 和 kube-system。RBAC 可用于控制特定命名空间的访问,以限制组的访问以控制可能发生的任何错误的爆炸半径,例...阅读全文

博文 2022-09-13 19:32:21 atbug.com

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

源的数量,而且能限制某个 Namespace 中被 Pod 所请求的资源总量。该准入控制器和资源 ResourceQuota一起实现了资源配额。LimitRanger 作用类似于上面的 ResourceQuota 控制器,针 Namespace 资源的每个个体(Pod 与 Container 等)的资源配额。该插件和资源 LimitRange 一起实现资源配额。 3. etcd 到现在为止,Kubernetes 已经该客户端的调用请求进行了全面彻底地审查,并且已经验证通过,运行它进入下一个环节。下一步 kube-apiserver 将 HTTP 请求进行反序列化,然后利用得到的结果构建运行时(有点像 kubectl 生成器的逆过程),并保存到 etcd 中。下面我们...阅读全文

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

为什么 Django 能持续统治 Python 开发世界

:避免重复。 Django是用Python编写的,因此其减少了太多中间层代码并突出提高了效率。Django可以支持云平台,使其成为Web开发中更受欢迎的选择。 Django主要特点 Django“自备军需”(Batteries-Included) Django基于“自备军需”的念,您不必使用单独的库来实现常见功能,例如身份验证,URL路由,模板系统,关系映射器(ORM)和数据库模型迁移。 如果您正在使用或曾经用过Flask,您一定注意到了它需要调用其他库,如Flask-Login来执行用户身份验证。 Django不是这样。 自由的API 使用Django,很容易根据您的模型生成Python API。 只需一个简单的命令,不需要额外的编码就足以开始生成API了。 独特的页面 即使在网站...阅读全文

博文 2017-07-21 14:15:11 debian.cn

Ubuntu 创始人爆粗口: 开源社区弥漫着“反社会人格”

图片来自于 Youtube 关于近期关于放弃 Unity 的决定,Google+用户 Maartin Kozub 在文章中写道: 这个决定并不能简单的用惋惜和悲伤而形容,因为 Canonical 所从事开始的多个项目也宣告了死亡。 我认为当前最大的问题是大部分开源开发者无法深入解,也不会进而欣赏面向的编程语言(C++)。他们依然还习惯使用 C 语言来编程一些丑陋的代码,也许有些时候利用个性化定制功能能够让 C 更加接近于 C++,但无疑会增加门槛和降低可读性。所以,为何不直接使用 C++?最典型的例子就是 Wayland。 在另一方面,Canonical 是目前极少数创建优秀和简洁开源 C++代码的公司/社区,就像 Mir 一样能够充分利用各种现代化 C++功能。 Mark...阅读全文

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

Proxmox VE 6.2发布 开源虚拟机平台

VE 所有(例如 VM、storage、nodes 等)使用基于角色的用户和权限。新的 LDAP 同步使 LDAP 用户和组同步到 Proxmox 用户和组权限框架中。添加了 API 令牌的全面支持和集成,从而允许其他系统、软件或 API 客户端REST API 的大部分进行无状态访问。API 令牌可以为单个用户生成,并且可以选择配置单独的权限和到期日期以限制访问的范围和持续时间。如果 API 令牌遭到破坏,则可以撤销该令牌,而不必禁用用户本身。 进一步的显着增强: QEMU/KVM:已启用复制磁盘的实时迁移(使用 zfs 进行存储复制)的支持。由于简化了卸载过程,因此测试 Ceph 存储变得更加容易。 下载地址:https://www.proxmox.com...阅读全文

博文 2020-05-18 19:18:30 debian.cn

GitLab 12.5 稳定版发布:支持EKS集群、多云托管和环境面板等

以使用开源的 Crossplane 项目以声明方式提供云服务,该项目扩展了 Kubernetes API 以提供托服务,包括 PostgreSQL、MySQL、Redis 和存储。 Crossplane 现在可以作为 GitLab 托应用程序使用,可以安装到由 GitLab 的 Kubernetes 集群中,可以在标准的 GitLab 道中或通过 Auto DevOps 使用 kubectl 声明性地设置和使用 GCP、AWS 和 Azure 的托服务。 通过环境面板一目了然地查看环境状态 面在生产环境中应用程序的频繁更改,在变更流程中各种开发、暂存和生产环境时,环境变化的跟踪是个问题。GitLab 为此新增了环境面板可显示该信息,从而提供所有组和项目中环境状态的单点访...阅读全文

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

一位资深Java架构师的晋级心得

Java 架构师是什么?是一个既需要掌控整体又需要洞悉局部瓶颈并依据具体的业务场景给出解决方案的团队领导型人物。一个架构师得需要足够的想像力,能把各种目标需求进行不同维度的扩展,为目标客户提供更为全面的需求清单。 所谓架构师,思考的是全局的东西,是如何组织你的系统,以达到业务要求,性能要求,具备可扩展性(scalability),可拓展性(extendability),前后兼容性等。可能涉及到的东西包括了从硬件到软件的方方面面。 架构师在软件开发的整个过程中起着很重要的作用。 架构师的主要任务不是从事具体的软件程序的编写,而是从事更高层次的开发构架工作。他必须开发技术非常了解,并且需要有良好的组织能力。可以这样说,一个架构师工作的好坏决定了整个软件开发项目的成败。 在成为Java架构...阅读全文

博文 2019-01-13 22:49:22 debian.cn

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

。 TypeScript:TypeScript是JavaScript的超集,它可以增加类型检查、接口声明等特性,减少错误和提高可读性。 NestJS:NestJS是一种流行的Node.js框架,它采用面向的编程方式,提供了路由、中间件、模块化等丰富的功能。 GraphQL:GraphQL是一款优秀的数据查询和操作语言,它可以帮助我们快速构建API,并减少网络传输的数据量。 功能设计 我们将开发一个电商平台,包含以下主要功能: 用户:用户可以注册、登录、修改个人信息等,员可以查看用户列表并进行。 商品员可以添加、修改、删除商品信息,包括商品名称、价格、库存、图片等。 购物车:用户可以将商品加入购物车,并在结算时进行支付。 订单员可以查看订单列表、订单详情、订单状态等。 开发流程 下面是全栈开发的开发流...阅读全文

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

为何 Kubernetes 如此受欢迎?

Google 开发的这个容器系统很快成为开源历史上最成功的案例之一。Kubernetes 是一个在过去几年中快速流行起来的开源容器平台。它被众多大企业用于关键任务,已成为开源方面最成功的案例之一。这是怎么发生的?该如何解释 Kubernetes 的广泛流行呢? Kubernetes 的背景:起源于 Google 的 Borg 系统 随着计算世界变得更加分布式、更加基于网络、以及更多的云计算,我们看到了单个大型的应用慢慢地转化为多个敏捷微服务。这些微服务能让用户单独缩放应用程序的关键功能,以处数百万客户。除此之外,我们还看到像 Docker 这样的容器等技术出现在企业中,为用户快速构建这些微服务创造了一致的、可移植的、便捷的方式。 随着 Docker 继续蓬勃发展,这些微服务器...阅读全文

博文 2017-11-07 23:58:26 debian.cn

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

MongoDB 是一个多租户系统,它会尽可能地占用内存,因此最好是安装在服务器上,最大限度地提供内存,即使是开发工作。在服务器上使用默认端口安装而不启用身份验证是在自找麻烦,尤其是可以在查询中运行任意 JavaScript 时(例如把$where 作为注入攻击的载体)。 身份验证方法有多种,但是用户 ID/密码凭证最容易安装和。当你考虑 基于 LDAP 的身份验证 时,可以采用那个方法。在我们谈论安全时,MongoDB 必须保持最新,而且,在日志里查找未授权访问的迹总是值得的。我不喜欢使用默认端口。 忘记限制 MongoDB 的攻击面 MongoDB 的 安全检查清单 为降低网络渗透和数据泄露风险提供了很好的建议。我们很容易会认为,开发服务器不需要高等级的安全。不是这样的:安全于所有...阅读全文

360开源企业级 Kubernetes 集群管理平台 Wayne

以同时多个 Kubernetes 集群,更方便地多个集群。 丰富的权限 :将资源抽化为部门、项目级别,角色的权限可以更细化的控制,适用于多部门、多项目的统一集中。 多种登录模式 :支持企业级 LDAP 登录、支持 OAuth2 登录,支持数据库登录多种模式。 完备的审计 :所有操作都会有完整的审计功能,方便追踪操作历史。 开放平台 :支持 APIKey 开放平台,用户可自主申请相关 APIKey 并自己的项目。 多层次监控 :提供多级别的监控统计信息,实时关注集群的运行状态。 架构图 整体采用前后端分离的方案: 前端采用 Angular 框架进行数据交互和展示,使用 Ace 编辑器进行 Kubernetes 资源模版编辑。 后端采用 Beego 框架做数据接口处,使用...阅读全文

博文 2018-11-20 12:24:17 debian.cn

Kubernetes 1.18 发布

Kubernetes 1.18 发布了,这是 2020 年首次版本发布。此版本包含 38 项功能增强,其中 15 项为稳定版功能、11 项 beta 功能以及 12 项 alpha 版功能。 主要更新亮点包括: Kubernetes 拓扑器 beta 拓扑器的作用是让 CPU 与其它设备(例如 SR-IOV-VF)实现 NUMA 齐,进而让工作负载运行在优化环境中以降低延迟。在拓扑器推出之前,CPU 与设备器只能彼此独立地做出资源分配决策。此版本拓扑器已经发展到 beta 版本。 Serverside Apply beta 2 beta 2 版本将跟踪并所有新 Kubernetes 的字段变更,确保用户及时了解哪些资源在何时进行过更改。 使用...阅读全文

博文 2020-03-27 18:28:34 debian.cn

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

数据库。 6. 拥有复杂的数据(视频、图像、文件)——选择 Blob/存储。 7. 复杂的计算——使用消息队列和缓存。 8. 海量数据搜索——考虑搜索索引、尝试搜索引擎。 9. 扩展 SQL 数据库 — 实施数据库分片。 10. 高可用性、性能和吞吐量 — 使用负载均衡器。 11. 全球数据交付——考虑使用 CDN。 12. 图形数据(具有节点、边和关系的数据)——利用图形数据库。 13. 扩展各种组件——实现水平扩展。 14. 高性能数据库查询——使用数据库索引。 15. 批量作业处——考虑批处和消息队列。 16. 服务器负载和防止 DOS 攻击 - 使用速率限制器。 17. 微服务架构——使用 API 网...阅读全文

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

欧盟一般数据保护条例(GDPR)和加州消费者隐私法案(CCPA)是欧美两大经济体所出台的两部具有代表意义的个人数据保护方面的法规,代表欧美监机关于个人数据保护两种不同的控取向。 本文选取了“个人数据或信息的类型与范围界定”、“法律的辖范围”、“数据跨境传输控”、“儿童数据的保护”、“数据主体的反权和被遗忘权”等关键概念,GDPR和CCPA的部分要点进行比较分析。 1. “个人数据”或“个人信息”的范围界定 1.1 GDPR个人数据的定义——侧重用抽概念定义,实践中存在很大解释空间 除了少数“特殊种类个人数据”(如宗教信仰、种族、工会成员信息、健康状况等)进行了零星列举以外,《欧盟一般个人数据保护条例》(GDPR)主要用抽概念其所辖的“个人数据”的范围进行界定。 根...阅读全文

ISTIO 1.1 正式版今日发布

global.outboundTrafficPolicy.mode 参数,用于定制 Egress 通信的缺省行为,目前的缺省值为 ALLOW_ANY,即允许全部 Egress 通信。 新增 Sidecar 资源 目前版本中,Sidecar 会包含整个网格内的服务信息,在 1.1 中,新建了 Sidecar 资源,通过这一 CRD 的配置,不但能够限制 Sidecar 的相关服务的数量,从而降低资源占用,提高传播效率;还能方便的 Sidecar 的代行为做出更多的精细控制——例如 Ingress 场景中的被代端点的配置能力。 ExportTo 多个路由加入了这一字段,用于指定该资源的生效范围。 路由的区域感知能力 新增了 AZ/Region 等的区域感知能力,降低跨区请求造成的性能损耗。 TCP 服务提供鉴权支持 在既有的 HTTP...阅读全文

博文 2019-03-20 12:55:59 debian.cn

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

=0x306a9, pf=0x10, revision=0x1c [ 0.952773] microcode: Microcode Update Driver: v2.2. 如何在 Linux 上使用包器去安装微码固件更新 于运行在 x86/amd64 架构的 CPU 上的 Linux 系统,Linux 自带了工具去更改或者部署微码固件。在 Linux 上安装 AMD 或者 Intel 的微码固件的过程如下: 打开终端应用程序 Debian/Ubuntu Linux 用户推输入:sudo apt install intel-microcode CentOS/RHEL Linux 用户输入:sudo yum install microcode_ctl 于流行的 Linux 发行版,这个包的名字一般如...阅读全文

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

Terraform 学习总结 — Terraform 简介

Infrastructure as Code", 基础架构即代码。Terraform 几乎可以支持所有市面上能见到的云服务。具体的说就是可以用代码来维护 IT 资源,把之前需要手动操作的一部分任务通过程序来自动化的完成,这样的做的结果非常明显:高效、不易出错。 Terraform 提供了资源和提供者的灵活抽。该模型允许表示从物硬件、虚拟机和容器到电子邮件和 DNS 提供者的所有内容。由于这种灵活性,Terraform 可以用来解决许多不同的问题。这意味着有许多现有的工具与Terraform 的功能重叠。但是需要注意的是,Terraform 与其他系统并不相互排斥。它可以用于小到单个应用程序或达到整个数据中心的不同。 Terraform 使用配置文件描述的组件(小到单个应用程序,达到整个数据中心...阅读全文

Ceph 基金会正式成立 接受 Linux 基金会的管理

2018年11月12日,北京时间16:00,Linux基金会在德国柏林“Ceph Day”上正式宣布成立“Ceph基金会”来支持Ceph开源项目。Ceph基金会接受Linux基金会的,它的成立将为Ceph社区的合作和成长提供一个中立的机构。高级会员和一般会员每年缴纳会员费,准会员是教育机构或政府组织,并被邀请免费加入。 事会由所有高级成员,普通成员代表,准成员代表和Ceph领导团队(技术治机构)代表组成。董事会负责: 建立并批准用于支持Ceph项目的年度预算 建立特设委员会以满足项目的当前需求 协调外展或营销 定期开会讨论基金会活动,Ceph项目的现状以及整体项目战略 在董事会面前任何决定或事项进行投票 Ceph基金会董事会不Ceph的技术治负责,也没有任何直接控制权。开发和...阅读全文

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

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

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

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

Kubernetes API在运行时一起提供服务。其他重点改进的地方包括可伸缩的准入控制器(admission controller),可插拔的云提供者,和容器运行时接口(CRI)。 新特性 安全: 网络策略 API(Network Policy API)提升至稳定状态。网络策略通过一个网络插件实现,允许用户哪些 Pod 可以彼此通信的规则进行设置和强制。 节点授权器(Node authorizer)和准入控制插件(admission control plugin)是新增用来限制kubelet基于节点Secret、Pod和其的访问。 Secret的加密和其他etcd中的资源,现在可用并处于alpha状态。 Kubelet TLS 启动现在支持客户端和服务端证书轮换。 由 API 服务器存储的审计日...阅读全文

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

GlusterFS 和 Ceph 比比看

存储世界最近发生了很大变化。十年前,Fibre Channel SAN 文件器是企业存储的标准。而在目前的环境中,受到基础架构即服务云的影响,数据存储需要更加灵活。 GlusterFS 和 Ceph 是两个灵活的存储系统,在云环境中表现非常出色。 在尝试了解 GlusterFS 与 Ceph 之间的相似之处和不同之处之前,让我们来讨论在云环境中灵活存储的一些要求。 纵向扩展和横向扩展。在云环境中,必须可以很容易地向服务器添加更多存储空间以及扩展可用存储池。Ceph 和 GlusterFS 都可以通过轻松将新存储设备集成到现有存储产品中来满足这一要求。 高可用性。GlusterFS 和 Ceph 的复制是同时将数据写入不同的存储节点。这样做的结果是,访问时间增加,数据可用性也提高。在...阅读全文

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

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

库?服务需要支持多大的流量? 这些都是很重要的问题,但服务是动态并且变化的:二进制版本不断更新,实例被添加和删除。架构也就需要随之演进:可能需要在某个特定的集群添加新的缓存,移除一些过时的日志等等。 在2014年,我们发现自己不能充分地适应服务的灵活性。于绝大多数服务,我们使用人工编制的工作流来变更基础架构:推送x,然后y;手动执行不常见的变更。 但是团队通常需要数十个服务,每个服务都有很多job,数据库,配置以及自定义的流程。已有的解决方案因为如下两大原因无法扩展: 基础架构配置和API是异构的,并且很难连接在一起——比如,不同的服务使用不同的配置语言,抽级别,存储和推送机制等等。因此,基础架构不一致,很难确定出通用的变更。生产变更的流程很脆弱,不解变更之间的联系...阅读全文

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

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

感情,使团队内部形成一种和谐与欢乐的气氛。4、公平激励法一个人在产生公平感时,会心情舒畅,努力工作;而在产生不公平感时就会怨气冲天,大发牢骚,影响工作的积极性。公平激励法是强化工作积极性的重要手段,所以在团队中,员工分配、晋级、奖励、使用等方面要力求做到公平、合。5、竞赛激励法竞赛激励法就是指团队领导者通过经常性的检查评比和多种形式的竞赛活动,来激发下属的上进心和竞争意识,促使其努力使自己的工作走在他人前面的方法。6、褒奖激励法表扬和奖励是良好思想和行为的一种积极肯定,它包括物质的,也包括精神的。表扬和奖励能够引起人们愉快的感受,这是因为渴望得到他人或社会的赞赏,是一种心需要,已经成为人们的人格特征之一。7、榜样激励法榜样激励法就是指领导者通过树立生动、鲜明、具体、形的学习榜样...阅读全文

在 Kubernetes 上扩展 TensorFlow 模型

、流量分割和版本。然而,这个选项并没有提供自动扩展功能。 - **Seldon Core** 是一款第三方工具,可用于 Kubeflow 抽和资源。它支持多种机器学习框架,包括 TensorFlow,并允许将训练好的 TensorFlow 模型转换为 REST/gRPC 微服务,运行在 Kubernetes 中。Seldon Core 默认支持模型自动扩展。 - **BentoML** 是 Kubeflow 使用的另一个第三方工具,它提供高级的模型服务功能,包括自动扩展,以及支持微批处的高性能 API 模型服务器。 在下一节中,我将展示如何使用 KFServing 训练好的 TensorFlow 模型进行自动扩展,KFServing 是默认的 Kubeflow 安装中的一个模块...阅读全文

Docker 17.06 社区版发布

的支持。可以将docker的/metrics端点暴露给插件: $ docker plugin install --grant-all-permissions cpuguy83/docker-metrics-plugin-test:latest $ curl http://127.0.0.1:19393/metrics 这个插件仅用于示范。它在主机的网络上运行了一个反向代,能将请求转发给插件中的本地的指标套接字。在真实场景中,可能会将收集的指标数据发送给外部的服务,或者使它可以被一个服务如Prometheus访问并收集。 注意尽指标插件在非实验性的daemon中可以使用,指标标签(metrics label)仍应该被看作是实验性的,可能在Docker未来的版本中发生改动。 日志驱动插件 添...阅读全文

博文 2017-06-30 23:08:57 debian.cn

Polar Signals 开源 Parca 以优化代码并减少云账单 - OSCHINA

。Apache Maven 是一个项目和构建工具。基于项目模型(POM)的概念, Maven 可以从中心位置项目的构建、报告和文档。 此版本更新内容如下: Bug [MNG-7045] - 从 Maven 中删除 CDI API [MNG-7214] - CDI API 中的过渡性依赖 parent 不好。 [MNG-7215] - [Regression] Maven 网站插... 1 4 Visual Studio Code 1.61 发布 Visual Studio Code 1.61 现已发布,其中一些主要亮点内容如下: 在同一组内拆分编辑器:为同一文件快速创建 side-by-side 的编辑器。添加了一个新命令 Split in Group ( Ctrl+K Ctrl+Shift...阅读全文

博文 2021-10-09 12:23:58 中文开源技术交流社区

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

作为"开放源码定义"的者,Open Source Initiative(OSI)20多年来一直将许可证指定为"Open Source"。这些许可证是开源软件生态系统的基础,确保每个人都能使用、改进和共享软件。当一个许可证被批准时,是因为 OSI 相信该许可证促进了合作和共享,使参与生态系统的每个人都受益。 在过去的 20 年里,世界已经发生了翻天覆地的变化,软件现在以新的方式甚至是难以想的方式被使用。OSI 已经看到,以前被人们所熟悉的开源许可证并不总是能适合这些新的情况。因此,OSI 作为许可证员站了出来,为更广泛的用途提交了几个新的许可证。OSI 面临的挑战是评估这些新的许可证概念是否会继续推动共享和协作,是否值得被称为"开源"许可证。最终 OSI 批准了一些用于特殊领域的新...阅读全文

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

WebAssembly时代 Rust也想成为Web语言

-bindgen 的高级功能包括: 导入 JavaScript 结构、函数和以在 WebAssembly 中调用。开发人员可以调用结构中的方法和访问属性。 将 Rust 结构和函数导出到 JavaScript。可以导出一个 Rust struct,它会变成一个 JavaScript class,之后就可以传递结构而不是整型。 目前,WebAssembly 仅支持四种类型:两种整型和两种浮点型。但 JavaScript 和 Rust 开发人员经常使用更丰富的类型,例如 Rust 开发人员使用 Result 类型进行错误处,这样,使用 wasm-bindgen 的时候,JavaScript 可以使用字符串或 Rust 函数调用 Rust API 来捕获 JavaScript 异常。通过消除...阅读全文

博文 2018-04-10 12:38:26 debian.cn

“Debian 章程有毒” - OSCHINA

debhelper。赋予个人维护者如此大的自由,导致我们无法开展提高构建 Debian 软件包抽级别的项目,这反过来又让工具更加困难。”Michael Stapelberg 在自己的文章中探讨了 Debian 中过大的个人自由。 “我认为 Debian 社区的存在一个很大问题 —— 社区正在被一些特定问题深深地分裂成很多不同阵营。” Russ Allbery 曾表示。 或许,这也成就了 Debian 如今的“儿孙满堂”——不少软件从 Debian 衍生出来。就拿2014 年systemd 事件为例,那场争议导致 Debian 阵营开始分裂 —— 反者创建了一个不使用 systemd 的分支 Devuan。此外,基于 Debian 的衍生产品还有很多,比如 Ubuntu、Deepin、Kali...阅读全文

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

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

制化的网络;二是目前的 TCP/IP 协议和框架 ManyNets(包括 IoT 网络、卫星网络等) 互连有限制且具有复杂性。 当下,全息通信满足了人们交互式的通信体验的需求,从而也需要更高的带宽、更低的延迟、更灵活的网络处,而满足这些传感应用需求,需要更细度的网络服务能力。 由于现有 IP 不相兼容的寻址机制,IoT 网络、蜂窝网络、工业网络等网络之间的互连受到了限制。而后引进的多种映射机制不仅给系统带来了额外的复杂性,也带来了潜在的隐私和弹性问题。 由此,需要一个更好的解决方案来处所有类型或虚拟的交付和通信,New IP 应运而生。 文章指出,New IP 主要有三个关键特征: 可变 IP 地址长度,无缝支持跨网络通信;用于标识物和虚拟的 IP 地址的语义定义;用户定义...阅读全文

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

PHP 7.2 Beta 的测试:PHP 仍然越来越快

7.2 目前的运行速度比 PHP 7.1 快了 13%,比 PHP 7.0 快了 20%,相比 PHP 5.6,则比它快了差不多 2.6 倍。 Phoronix 测试套件的自我测试显示,PHP 7.2 越来越快了,与 PHP 7.1.7 相比,将自我测试的时间缩短了 4 秒,尽与 PHP 5.6 到 7.0 的转变相比还有较大差距,但仍节省了一点时间。 使用大量的 PHP math、DOM 使用以生成 SVG 图像的渲染测试在 PHP 7.2 中也是仍稍快一些。 总的来说,PHP 7 在继续朝着正确的方向改进着,除了这些适度的性能提升,还有其他方面的改进。 编译自:www.phoronix.com...阅读全文

博文 2017-08-01 09:44:40 debian.cn

Go 1.16 即将发布,这些变更你需要知道

-bindata/go-bindata 这类第三方开源库来实现。 而从 Go1.16 起,通过 go:embed 就可以快速实现这个功能: import _ "embed" //go:embed hello.txt var s string print(s) 通过变量 s 声明 go:embed 指令,使其在编译时读取当前目录下的 hello.txt 文件。 最终变量 s 就会输出 hello.txt 文件中的字符串内容。 新增 io/fs 的支持 新增了标准库 io/fs,正式将文件系统相关的基础接口抽到了该标准库中。 以前的话大多是在 os 标准库中,这一步抽离更进一步的抽了文件树的接口。在后续的版本中,大家可以优先考虑使用 io/fs 标准库。 调整切片扩容策略 Go1.16 以前的...阅读全文

博文 2021-02-17 08:52:12 CSDN博客

Google 开源漏洞扫描系统 Tsunami

谷歌已宣布将其内部使用的 Tsunami 漏洞扫描程序进行开源,以帮助其他组织保护用户数据。Tsunami 将不会成为谷歌的正式品牌产品,而是由开源社区以类似于 Kubernetes(另一种谷歌内部工具)的方式来维护。 “我们已经向开源社区发布了 Tsunami 安全扫描引擎。我们希望该引擎可以帮助其他组织保护其用户数据。我们还希望促进协作,并鼓励安全界在 Tsunami 之上创建和共享新的探测器。” 与其他漏洞扫描程序不同的是,Tsunami 本就是秉承着以大型企业为使用的初衷而进行构建的,旨在查找包含数十万个设备的大型网络中的漏洞。谷歌方面表示,其设计的漏洞扫描程序具有极强的适应性,Tsunami 能够扫描多种设备类型,而无需为每种设备运行不同的扫描仪。 Tsunami 在扫描...阅读全文

博文 2020-07-16 10:25:50 debian.cn

华为的 Linux 发行版 openEuler 可以使用了!

华为提供了一个基于 CentOS 的企业级 Linux 发行版 EulerOS,华为也发布了一个名为 openEuler 的 EulerOS 社区版。 openEuler 的源代码也一同发布了,源代码可以在 Gitee 找到。它有两个独立的代码库,一个用于存储源代码;另一个作为软件包的源代码,存储有助于构建该操作系统的软件包。 openEuler 基础架构团队分享了他们使源代码可用的经验: 我们现在很兴奋。很难想我们会成千上万的仓库。为了确保它们能被成功地编译,我们要感谢所有参与贡献的人。 openEuler 是基于 CentOS 的 Linux 发行版 与 EulerOS 一样,openEuler OS 也是基于 CentOS,但华为技术有限公司为企业应用进一步开发了该操作系统...阅读全文

博文 2020-01-27 11:08:00 debian.cn

Git 2.26 发布:传输协议 V2 成默认协议

Git 2.26 现已发布,项目贡献者 Taylor Blau 介绍了此版本带来的一些特性上的亮点,包括将传输协议 V2(第二版) 作为默认协议 、一些新的配置技巧以及更新到 git sparse-checkout。 该版本具体更新内容如下: Changes 传输协议V2(第二版)已成为默认协议。继续准备最终名称将使用 SHA-256 哈希的工作。继续致力于改进不同子命令的 Bash / CLI 自动完成功能。改进的 fsmonitor-watchman hook 可避免以前版本中的 race 情况。于 CLI 着色,七种颜色现在具有更亮的颜色选项。解除了 Git 先前使用线程 grep 的限制。Git rebase 现在默认使用合并后端。较低的内存占用量和更好的性能 git...阅读全文

博文 2020-03-24 10:35:05 debian.cn

Debian Live 项目的剧变

围绕 Debian Live 项目发生了很多戏剧性事件,关于 Debian Live 项目结束的公告的影响力甚至小于该项目首次出现时的公告。主要开发者的离开是最显而易见的损失,而社区他本人及其项目的态度是很令人困惑的,但是这个项目也许还是会以其它的形式继续下去。 所以 Debian 仍然会有更多的工具去创造启动光盘和其他介质。尽是用这样一种有遗憾的方式,项目创始人 Dabiel Baumann 和 Debian CD 团队以及安装检测团队之间出现的长期争论已经被「解决」了。 在 11 月 9 日, Baumann 发表了题为「 Debian Live 项目的突然结束」的一篇公告。在那篇短文中,他一一列举出了自从这个和他有关的项目被发起以来近 10 年间发生的不同的事件,这些事件可以...阅读全文

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

Apollo 配置中心简单介绍

。 Config config = ConfigService.getConfig("FX.Hermes.Producer"); 这种情况的配置获取规则,简而言之如下: 首先获取当前应用下的FX.Hermes.Producer namespace的配置然后获取hermes应用下FX.Hermes.Producer namespace的配置上面两部分配置的并集就是最终使用的配置,如有key一样的部分,以当前应用优先 图示如下: 通过这种方式,就实现了框架类组件的配置,框架组件提供方提供配置的默认值,应用如果有特殊需求,可以自行覆盖。 4.5 总体设计 上图简要描述了Apollo的总体设计,我们可以从下往上看: Config Service提供配置的读取、推送等功能,服务是Apollo客户端...阅读全文

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

Golang 中的 channel 通道详解

channel通道golang的并发模型是序列通信处CSP(communicating sequential process)——使用通信来共享内存 ,避免goroutine因竞争共享内存频繁加锁产生的性能问题。基本数据结构golang中提供了一个特殊的类型channel实现goroutine之间的通信。channel类似于队列,先进先出。channel数据结构源码在src/runtime/chan.go下。chan 使用 hchan 表示,它的传参与赋值始终都是指针形式,每个 hchan 代表着一个 chan。hchan 中包含一个缓冲区 buf,它表示已经发送但是还未被接收的数据缓存。buf 的大小由创建 chan 时的参数来决定。qcount 表示当前缓冲区中有效数据的总量...阅读全文

Kubernetes 1.7 发布,安全强化、StatefulSet 更新及可扩展特性

Authorizer)和准入控制(Admission Control)插件。它们是在1.7中以Beta版新添加的特性,用于限制kubelet访问那些控制Secret、Pod和其它基于节点的Kubernetes API操作;用于Secret的加密和其它存储在etcd的资源,当前以Alpha版提供可用;Kubelet TLS Bootstrapping,当前以Alpha版提供,支持客户和服务证书旋转(Rotation);由API服务器存储的审计日志,现在更改为可定制的和可扩展。 聚焦于存储和有状态工作负载的特性包括:StatefulSet Updates。它是在1.7中以Beta版新提供的特性,允许使用一系列的更新策略有状态应用进行自动更新,包括滚动更新(rolling-update),以及金丝雀...阅读全文

博文 2017-07-19 12:23:15 debian.cn

Hadoop 核心 - HDFS 分布式文件系统详解

(NameSpace) HDFS 支持传统的层次型文件组织结构。用户或者应用程序可以创建目录,然后将文件保存在这些目录里。文件系统名字空间的层次结构和大多数现有的文件系统类似:用户可以创建、删除、移动或重命名文件。 Namenode 负责维护文件系统的名字空间,任何文件系统名字空间或属性的修改都将被 Namenode 记录下来。 HDFS 会给客户端提供一个统一的抽目录树,客户端通过路径来访问文件,形如:hdfs://namenode:port/dir-a/dir-b/dir-c/file.data。 4. NameNode 元数据 我们把目录结构及文件分块位置信息叫做元数据。NameNode 负责维护整个 HDFS 文件系统的目录树结构,以及每一个文件所应的 block 块信息(block 的...阅读全文

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

如何写好技术文档 — 来自十多年的文档经验总结

的语言,你只需要将问题讲清楚即可。 - 有时候工具不好用也会影响的文档写作。如果没有一个很好的写作工具将写文档嵌入到开发工作流程中的话,写作确实会增加工作的负担。 - 大多数人将写文档看做是工作的额外负担。 我代码都没时间写,哪有时间写文档!,这其实是错误的观念,文档虽然前期有投入,但能让你代码的后期维护成本大幅降低,磨刀不误砍柴工这个道相信大家都还是能解的。 ## 如何产出高质量文档 ## 既然解了好文档的重要性,我们如何保证在时间的长河中维护好一份文档,这里有些相关的方法论,大家可以参考下。 ## 像代码一样文档 ## 于如何写出好代码,整个技术圈已经有好多经验的总结了,比如书籍《重构》《代码简洁之道》…… 针各种编程语言,也有相关的规范,比如国外的Google C...阅读全文

博文 2021-07-30 16:15:13 joseph

Element 1.4.2 发布,饿了么 Vue 2.0 组件库

Element 1.4.2 已发布,Element 是饿了么开源的一套为开发者、设计师和产品经准备的基于 Vue 2.0 的组件库,提供了配套设计资源,帮助你的网站快速成型。 本次更新内容如下: 修复绑定值为类型时,初始值为 null 的 Select 会选中 value 为 0 的问题,#6143 修复 status 为 error 的 Step 样式问题,#6155 @wacky6 修复当 Cascader 的 expand-trigger 为 hover 时,点击选择条目后快速移动会再次选到父级元素的问题,#6199 修复 Menu 在 collaspse 时不能收起子级菜单的问题,#6200 修复 Switch 内部的原生 input 状态与组件不同步的问题,#6205...阅读全文

博文 2017-08-10 12:27:49 debian.cn

Golang 之禅: 如何写优质代码

减少耦合的操作,需要通过提供类型需要的依赖项作为该类型上的字段,而不是使用包变量。 简单性很重要 简单性不是老练的代名词。简单并不意味着粗糙,它意味着可读性和可维护性。如果可以选择,请遵循较简单的解决方案。 编写测试以确认包 API 的行为 软件包的 API 是与使用者的一份合约,不先后,不多少,一定要进行测试。测试是确定合约的保证。要确保测试使用者可以观察和依赖的行为。 如果你认为速度缓慢,先通过基准测试进行验证 以性能之名会犯下许多危害可维护性的罪行。优化会破坏抽、暴露内部和紧密耦合。如果要付出这样的代价,请确保有充分由这样做。 节制是一种美德 适度使用 goroutine、通道、锁、接口与嵌套。...阅读全文

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

案例:Redis命令不当 引起数据库雪崩 造成数百万损失

中删除。同时还可以提供一个守护进程,当发现备份队列中的消息过期时,可以重新将其再放回到主消息队列中,以便其它的消费者程序继续处。 7.谨慎全量操作Hash、Set等集合结构 在使用HASH结构存储属性时,开始只有有限的十几个field,往往使用HGETALL获取所有成员,效率也很高,但是随着业务发展,会将field扩张到上百个甚至几百个,此时还使用HGETALL会出现效率急剧下降、网卡频繁打满等问题【时间复杂度O(N)】,此时建议根据业务拆分为多个Hash结构;或者如果大部分都是获取所有属性的操作,可以将所有属性序列化为一个STRING类型存储!同样在使用SMEMBERS操作SET结构类型时也是相同的情况! 8.根据业务场景合使用不同的数据结构类型 目前Redis支持的数据库结构类型...阅读全文

博文 2018-10-27 10:18:18 debian.cn