InfraPub 为您找到相关结果 22

分布式版本控制系统 Git v2.12.2 发布

Git v2.12.2 发布了,Git 是一个开源的分布式系统,用以有效、高速的处理从很小到非常大的项目版本管理。是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的软件。 部分更新内容: git status –porcelain” is supposed to give a stable output, but a few strings were left as translatable by mistake. “Dumb http” transport used to misparse a nonsense http-alternates response, which has been fixed. “git diff...阅读全文

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

SVN切换分支用法汇总

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

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

Git 介绍与使用详解

前言 Git是目前非常流行的协同开发工具,很多开源网站都使用Git作为代码管理仓库(例如 开源中国,GitHub),不管是开发还是产品、设计师,Git都很适合,而且很多IDE默认集成了Git,熟练的使用Git会起到事半功倍的效果,所以今天我为大家分享一下Git的介绍与使用。 1.Git是什么? Git是目前世界上最先进的分布式系统(没有之一)。 1.1什么是是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统。如果你是位网页设计师,可能会需要保存某一幅图片或页面布局文件的所有修订版本。 有了它你就可以将某个文件回溯到之前的状态,甚至将整个项目都回退到过去某个时间点的状态,你也可以比较文件的变化细节,查出最后是谁修改了哪个地方,从而找出导致怪异问题...阅读全文

博文 2017-02-25 09:00:27 程序员

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

稳定分支。 我们将讨论 NGINX 方案,回顾 NGINX 1.17 开发周期内进行的更新,并探索 NGINX 1.19 的特性。 NGINX 介绍 NGINX 在 NGINX Open Source 代码存储... 1 4 为 Linux 5.16 准备的新版 Zstd 已就绪,最高带来 35% 的性能提升 正如我们上周的报道(点击查看),Linux 内核即将用上最新的 Zstd 实现。如今时隔一周时间,为 Linux 5.16 内核所准备的新版 Zstd 已提交至 linux-next 的合并中,以便在接下来的几周内进行更广泛的测试,如无意外我们将在下个月的 Linux 5.16 合并窗口中看到 Zstd 的更新代码。 来自 Facebook 的 Zstd 维护者...阅读全文

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

微软宣布年底关闭开源软件托管平台 CodePlex

GitHub 上。今天,微软的 GitHub 组织已经有 16000 多名开源贡献者。2016 年,GitHub 本身也为微软适应 GitHub 做出很多努力。 与此同时,CodePlex 则不断没落。在今年 2 月份,人们在这个平台上托管的开源项目还不到 350 个。 GitHub 是基于 Git 的开源软件,可以被多人用于追踪变化。人们可以移动代码到 Atlassian 的 Bitbucket 和微软 Visual Studio Team Services 等替代系统上。初创企业 GitLab 也为开源和私有项目提供托管服务。 2016 年,谷歌已经关闭了自己的托管服务 Google Code。哈里写道:“我们很荣幸能与 GitHub 密切合作,共同促进开源项目。”开源软件并非微软文化中的...阅读全文

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

2017 Linux 内核开发报告 Linux统治着计算机世界

现在是 2017 年,Linux 在统治着计算机世界。不相信?Linux 基金会报告说,Linux 运行着 90% 的公共云工作量,世界上 82% 的智能手机,62% 的嵌入式市场,以及几乎占领了 99% 的超级计算机市场。所有的这些都基于 Linux 内核。在 Linux 基金会 2017 的 Linux Kernel 开发报告中 ,Linux 内核开发者和 LWN.net 的编辑 Jonathan Corbet 以及稳定的 Linux 内核维护者 Greg Kroah-Hartman 报告了 Linux 最新的发展。 报告显示,自 2005 年以来,Linux Kernel 采用 Git 系统,来自 1,400 多家公司的 15,637 名开发者为 Linux 内核做出了贡献...阅读全文

博文 2017-10-26 10:57:34 debian.cn

Kong 发布 API 协作设计工具 Insomnia Designer

件进行。 除此之外,Insomnia Designer 还提供了与 Kong 平台的强大集成。通过使用 Insomnia 插件,用户可以在 Insomnia Designer UI 中自动将 Kong 网关策略直接嵌入到他们的 API 规范文件中。意思就是,开发者可以将 Kong 网关策略直接存储到规范本身。通过选择 Kong Plugins 的功能(如身份验证或速率限制),用户可以将管理其 API 行为的策略直接写入代码中。 更多介绍查看 https://insomnia.rest/blog/introducing-designer下载地址 https://insomnia.rest/download/...阅读全文

博文 2020-05-03 15:28:11 debian.cn

Terraform 学习总结 — Terraform 简介

前言 在 DevOps 实践中,基础设施即代码如何落地是一个绕不开的话题。像 Chef,Puppet 等成熟的配置管理工具,都能够满足一定程度的需求,但有没有更友好的工具能够满足我们绝大多数的需求?笔者认为 Terraform 是一个很有潜力的工具,目前各大云平台也都支持的不错,尤其是使用起来简单明了。本文会简单的介绍一下 Terraform 相关的概念,然后通过一个小 demo 带大家一起进入 Terraform 的世界。说明:本文的演示环境为 ubuntu 16.04。 Terraform 是什么? Terraform 是一种安全有效地构建、更改和基础设施的工具(基础架构自动化的编排工具)。它的目标是 "Write, Plan, and create...阅读全文

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

Saltstack极高危漏洞: 可获取master权限

Salt的安全设置 1. 订阅salt官方的通告,以便接收最新的通知 2. 使用salt acl系统来限制salt-minion的root权限 3. 使用salt acl系统来限制salt-minion可以执行哪些命令 4. 使用外部的pillar管理工具来替代登录到系统中修改文件的方式 5. 将sls文件通过工具管理起来,并经过评审后在生产环境中执行 6. 如果要将salt-master暴露给外部服务,要用salt-api\ssl并通过验证 7. salt-minion通过event系统和reactor来向master通信,而不是直接访问salt-master 8. salt-master运行在非root用户下 9. 禁用部分模块加载到minion上,例如cmd模块 10. 阅读完所有的...阅读全文

博文 2020-05-05 18:32:44 debian.cn

取代TCP:工程师宣布QUIC协议已完成RFC 9000发布

IETF 和互联网生态系统而言,这都是一件大喜事。近年来,QUIC 一直是 IETF 最引人瞩目的活动之一。作为搜索巨头 Google 发起的一项实验,其已经历了五年时间的发展,期间举办了 26 场面对面会议、商议了 1749 次问题、以及成千上万封的邮件沟通。在 IETF 标准的开发协作与迭代流程指导下,QUIC 协议跨越了传统上孤立的传输、安全和应用程序空间,且在审议期间引发了热烈的讨论,最终顺利过渡并达成了广泛的共识。考虑到互联网传输生态系统已经僵化了几十年,而 QUIC 将能够通过加密、、后续可建立的更丰富的技术、以及高性能服务来摆脱这种尴尬的僵化局面。QUIC 已经做好了引领下一代互联网创新的准备,且开始通过不可靠数据报之类的扩展,为实时媒体和其它不需要完全可靠传输服务的应用程序...阅读全文

译: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

Linux 27周年:这27件有趣的事实你可能不知道

开发和发布时间表后,新版本的 Linux kernel 现在基本每隔 66 天左右发布一次。 18、Linux 不是 Linus Trovalds 唯一知名的作品,还有 Git 系统和潜水应用 SubSurface 。 19、据估计,90% 的好莱坞视觉效果在生产流程的某个阶段依赖于 Linux 。 20、根据 openhub.net 的统计数据,超过 95% 的 Linux 是用 C 语言编写的。 21、最新版本的 Linux kernel 可能有 13.3%的代码由空行组成。这并非毫无意义,空行是严谨的编码风格的一部分,使内核保持整洁、高效和有序。 22、基于 Linux 的 Android 是目前全球最成功的移动操作系统。 23、Linux 的每个内核版本都有一个有趣的代号,比...阅读全文

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

计原理,Spring事务处理机制,SpringMVC,Spring源码分析Mybatis:Mybatis体系结构,Mybatis核心应用与配置,Mybatis关联查询,与Spring集成,Mybatis源码分析 2. 工程化工具 Maven项目工具:Maven命令使用,Maven的pom配置体系,插件机制及插件开发,Nexus使用,上传,配置Git分布式:Git安装和理解仓库,工作常用命令,分支和Tag管理,代码冲突解决方案,Github开源社区,Git企业应用,与IDE集成Sonar代码检测:Sonar环境搭建和使用,使用Sonar进行代码质量管理,与IDE集成使用Jenkins:搭建Jenkins自动化部署环境,集成git/maven/sonar工具,插件机制 3. 微服务架构...阅读全文

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

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

ATOM feeds 使用 Django,你可以通过创建一个简单的Python类来快速创建 RSS 和 ATOM feeds。 在数据库中自动创建表 如果你的数据库中缺失了某一个表,你可以通过执行 Django 的迁移命令来自动创建它。 容易的数据迁移 数据迁移是 Django 中最有用的功能之一。通过使用 Django 的迁移方法,你可以在短时间内改变一个数据库模式。同样也容易就能跟踪你的数据库模式和相关的改变。为数据迁移所做的命名能够帮助你进行,还有很多选项可以用来合并版本和进行修改。 安全性 Django非常安全,该框架默认情况下可以防止 XSS 攻击、CSRF 攻击,SQL 语句注入、点击劫持、用户管理、cookies、邮件标头注入、密码攻击、目录遍历攻击等等。 Django有一个...阅读全文

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

DevOps 越来越流行,2019 年这八大趋势值得关注

。 在 2019 年,将会发生从 CI 管道到 DevOps 装配线的转变。DevOps 装配线专注于自动化和连接多个团队执行的活动,例如开发人员的 CI,运维人员的基础架构配置和配置管理,测试人员的测试自动化,SecOps 的安全补丁,发布负责人的语义和部署到多种环境,等等。 下图展示了单个应用程序或服务的典型装配线: 自动化将成为主要焦点 关于 DevOps,我们谈论了很多自动化方面的内容。如果可能的话,零接触(zero-touch)自动化就是未来的发展方向。这并不是说你一定要自动化一切,只是说如果有必要,你就应该能够做到。了解 DevOps 周期的六个“C”,并确保在这些阶段之间应用自动化,这才是关键,这将是 2019 年的主要目标。 测试人员要学习编码 DevOps 对知道如何编...阅读全文

博文 2018-12-10 22:49:57 debian.cn

谷歌开源了代码评审规范:好坏代码应这样来判断

表的不同部分,都会有不同的评审者进行细致的审查。当然如果是结对编程,且你的队友能进行高质量的代码评审,那么这样写的代码一般可以视为已经过评审了。此外,我们也可以进行面对面的评审,评审者会问开发者一些问题。 根据谷歌的项目描述,代码审核规范为两套独立文档组成,代表了两方面内容的最佳实践: 代码评审者的指南CL 作者指南 在其中一些文档中使用了一些术语,如下: CL:表示“变更列表 (changelist)”,意思是已经提交到或正在进行代码检查的一个独立的更改。其他组织通常称为“改变”或“补丁”LGTM:意思是“在我看来不错 (Looks Good to Me)”,这是代码审阅者在批准 CL 时说的 接下来我们来看看两份文档分别的主要内容是什么: 1. 代码评审者的指南——如何进行代码评...阅读全文

博文 2019-09-10 17:19:13 debian.cn

最全的 DevOps 工具集合

、Bitbucket 和 Subversion。 Git Git 是一个分布式系统,用来在软件开发过程中跟踪源代码的更改。它是专为协调不同程序员的工作而设计的,也可用于跟踪各种文件集中的更改。它的优势包括速度、数据完整性以及对分布式非线性工作流的支持。 GitHub GitHub 提供了 Git 的分布式和源代码管理功能,自己也有很多特性。 GitLab GitLab 中的提供了世界一流的源代码管理功能,可帮助你的开发团队共享、协作并尽可能提高生产力。 Bitbucket Bitbucket 是 Atlassian 所有的、基于 Web 的库托管服务,可用在使用 Mercurial 或 Git 系统的源代码和开发项目上。 Subversion Apache...阅读全文

博文 2021-05-26 14:35:21 博客园

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

++规范,国内的阿里Java开发规范等…… 但对于文档 似乎相关的资料却很少。但实际上,不应该把文档和代码割裂开来,你可以简单粗暴地认为文档其实就是用一种特殊语言书写的代码,这种语言就是人类的语言。这么想的话,实际上我们很多在代码和工程中总结出来的经验,也可以直接用在文档中,比如: - 有统一的规范 - 有 - 有明确的责任人维护 - 有变更Review机制 - 有问题的反馈和更新机制 - 定期更新 - 有衡量的指标(比如准确性,时效性) ## 明确你的读者是谁 ## 写文档有一个很常见的错误,那就是很多人文档都是写给自己看的,这种情况下就会导致你的文档只有自己或者和你有相似知识背景的人才能看懂,团队较小时这种问题还好,你们都做着类似的工作,所以也都能看懂文档。但当团队逐渐壮大后,问题就...阅读全文

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

Golang 操作 Kafka 样例

v1.20之后的版本加入了zstd压缩算法,需要用到cgo,在Windows平台编译时会提示类似如下错误: github.com/DataDog/zstd exec: "gcc":executable file not found in %PATH% 所以在Windows平台请使用v1.19版本的sarama。(如果不会请查看博客里面的go module章节) 3.1.3. 连接kafka发送消息 package main import ( "fmt" "github.com/Shopify/sarama" ) // 基于sarama第三方库开发的kafka client func main() { config := sarama.NewConfig...阅读全文

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

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

果这个asset不健康,它仅仅会导致某个集群的运行中断,还是会影响全球的服务?插件还给用户特定的数据提供了空间,而不用占用负载的定义。 asset一般少于1kb数据,通常少于10kb,我们的最大值限制的是150kb。这个限制是为了让asset更容易被使用。这样,工具可以在内存里加载asset,无需担心这么做会造成过多的消耗。这个方案是受实体-组件系统[4]的启发。 asset的内容提供了足够的信息来构建建模资源的完整状态。具体来说,应该可以重新创建生产状态,而不必查看当前的生产状态——这是一个单向过程。 但是,所有的配置必须在asset里。比如,我们肯定有些情况需要MB级别的配置。这时,可以保存对外部数据源(比如包,数据库和)的引用。这些引用必须指向不可变外部数据。 在...阅读全文

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

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

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

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