Debian 爱好者社区 为您找到相关结果 784

Canonical 宣布临时关闭 Ubuntu 17.10 下载通道

鉴于众多联想笔记本用户报告尝试安装最新Ubuntu 17.10(Artful Aardvark)导致BIOS损坏的问题,Canonical 公司于今天宣布撤下最新版本的下载镜像。为了解决这个问题,Canonical计划在Linux Kernel 4.13内核中关闭英特尔SPI驱动,在重新构建和打包之后公司将会推出全新的ISO镜像。目前尚不清楚整个过程需要多久时间,但相信修正版应该会尽快发布。 令人感到遗憾的是,如果你的联想笔记本出现BIOS损坏的问题,严重的可能需要更换设备主板。根据报道,部分Yoga和IdeaPad列产品线受到影响,此外部分Acer、戴尔和东芝笔记本同样收到影响。 联想B40-70,联想B50-70,联想B50-80,联想Flex-10,联想G40-30,联想G50...阅读全文

博文 2017-12-21 20:15:44 debian.cn

Kali Linux 2019.1 发布,Metasploit 更新到 5.0

Kali Linux 2019.1 发布了,Kali 前身 BackTrack,它是一个基于 Debian 的 Linux 发行版,主要用于信息安全行业,其包含了一列安全、渗透测试和取证工具。 此版本 Linux 内核升级到了 4.19.13 版本,修复了许多 bug,并包含许多更新的包。最重大的更新是将 Metasploit 更新到 5.0 版本,这是自 2011 年 4.0 版本发布以来的第一个主要版本。 root@kali:~# msfconsole , , / \ ((__---,,,---__)) (_) O O (_)_________ \ _ / |\ o_o \ M S F | \ \ _____ | * ||| WW||| ||| ||| =[ metasploit...阅读全文

博文 2019-02-19 09:28:30 debian.cn

GIMP 2.10.22发布 首次支持AVIF图像

虽然GIMP 3.0的开发工作拖拖拉拉,但GIMP 2.10.x稳定列继续迎来新的功能。今天新出炉GIMP 2.10.22支持基于AV1的AVIF图像格式的导入和导出。AVIF是一种非常有前途的图像格式,基于免版税的AV1技术,已经被Firefox和Google Chrome等网络浏览器支持,同时继续在其他照片/图像软件中得到采用。 相比较 WebP 和 JPEG 等格式,AVIF 的压缩能力明显更好。AVIF 支持全分辨率下的 10 位和 12 位色彩,以及高动态范围(HDR)。AV1 还使用了一种新的压缩技术:从色度到亮度。大多数图像格式将亮度与色相分开存储。AVIF 使用亮度通道来猜测颜色通道的样子,它们通常是相关的,所以AVIF可以提供更小的文件大小和更清晰的边缘。 不仅如此...阅读全文

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

Let’s Encrypt倡议新认证策略 提高抗攻击能力

Let’s Encrypt是一家得到Mozilla Firefox和Google Chrome支持的自动化证书颁发机构。今天该机构宣布了一项新措施,从而进一步保护用户免受网络攻击的侵害。这项新功能称之为多角度域验证(multi-perspective domain validation),可帮助证书颁发机构(CA)证明申请人对他们想要获得证书的域具有掌控权。 单角度域验证方式 多角度域验证方式 域验证并不是什么新问题,但在验证过程中还存在很多的漏洞,这意味着网络攻击者可以诱使CA机构错误的颁发证书。通过多角度域认证,网络攻击者需要同时破坏三个不同的网络路径,这不仅大大提高了安全数,而且在互联网拓扑社区中也能更快发现网络攻击行为。 在新闻稿中,Let’s Encrypt特别感谢了普林斯顿大...阅读全文

博文 2020-02-21 13:28:45 debian.cn

Cloudpods容器化经验分享

Cloudpods是一个开源的多云混合云管理平台。Cloudpods首先是一个私有云云平台,具备将计算节点使用开源QEMU/KVM虚拟化技术虚拟出虚拟机,实现私有云的功能。其次,Cloudpods能够纳管其他的云平台,包括主流私有云和公有云,实现云管的功能。 Cloudpods的目标是帮助用户基于本地基础设置以及已有云基础设置,构建一个一融合的云上之云,达到降低复杂度,提高管理效率的效果。Cloudpods从3.0开始全面拥抱Kubernetes,基于Kubernetes部署运行云平台的服务组件,采用Kubernetes Operator,基于Kubernetes集群自动化部署服务,实现了云平台的服务的容器化分布式部署。本文总结了Cloudpods在过去3年云平台底层容器化改造的经...阅读全文

Synopsys全球首发PCIe 6.0完整方案:用上5nm工艺

几乎零宕机时间。值得一提的是,PHY物理层还使用了先进的5nm工艺,搭配独特的模拟和DSP技术,可将功耗降低20%。Synopsys PCIe 6.0 IP方案中的验证IP现已可用,控制器、PHY物理层计划在今年第三季度提供早期试用。PCIe 6.0标准规范目前还在制定中,计划在今年正式发布,按照传继续让I/O带宽翻番达到64GT/s,应用到实际中,PCIe 6.0 x1单向实际带宽8GB/s,PCIe 6.0 x16单向带宽128GB/s、双向带宽256GB/s。PCIe 6.0将延续PCIe 3.0时代引入的128b/130b编码方式,但加入全新的脉冲幅度调制PAM4,取代PCIe 5.0 NRZ,可以在单个通道、同样时间内封包更多数据,以及低延迟前向纠错(FEC)和相关机制,以改进带...阅读全文

博文 2021-03-22 18:53:40 cnBeta.COM

Kali Linux 2017.1 发布,带来一系列更新和特性

Kali Linux 2017.1 发布了。此版本包括对 RTL8812AU 无线网卡注入的支持,对 CUDA GPU 破解的简化支持,在 Kali 存储库中打包的 OpenVAS 9 等,还有用于云实例的 Kali Linux 的 Azure 和 AWS 映象文件。 与所有新版本一样,该版本可以使用更新的软件包,更新的内核,提供更多更好的硬件支持以及一列更新工具的共同特征,但是这个版本还有一些惊喜。 官方表示此前收到一个功能要求,要求安装 RTL8812AU 无线芯片组的驱动程序。 这些驱动程序不是标准 Linux 内核的一部分,并且已被修改为允许注入。为什么这是大事呢?该芯片组支持 802.11 AC,这是使注入相关无线攻击符合本标准的首要驱动力之一。 新版可用功能的总结可在项目 发...阅读全文

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

SK海力士进军PCIe 4.0 SSD:密度世界第一 轻松32TB

SK海力士今天正式发布了最新款的企业级SSD PE8000列,包括PE8010、PE8030、PE8111三款型号,这也是其首款PCIe 4.0 SSD,无论存储密度、容量还是性能都是世界一流的,甚至是超一流的。 PE8010、PE8030都配备了SK海力士自产的96层堆叠4D TLC NAND闪存颗粒,搭配自研主控,最大容量8TB,兼容U.2、U.3接口,其中PE8010面向读取密集型应用,PE8030则为读写混合应用而优化。 性能方面,持续读写速度最高均可达8.3GB/s、3.7GB/s,随机读写速度最高则可达1100K IOPS、320K IOPS。 相比于去年的上代产品,持续读取性能提升103%,随机写入性能提升357%,另外最大功耗为17W。 PE8111则是针对读取密集型负载...阅读全文

博文 2020-04-08 09:31:41 debian.cn

RabbitMQ 3.8.8 发布:引入维护模式

护此时,由于节点已经转移了大部分职责,因此节点关闭的破坏性将最小 不管队列类型和使用的队列主定位器策略如何,都不会考虑将处于维护模式的节点用于新的主队列副本放置。处于维护模式的节点应在短时间内关闭、升级或重新配置,然后重新启动。节点不应长时间在此模式下运行。 操作员可以使用一列新的 CLI 命令显式打开和关闭该模式。详情查看发布说明。...阅读全文

博文 2020-09-04 09:46:57 debian.cn

nginx 1.18.0 稳定版发布

nginx 1.18.0 已发布,这是继 1.16 列之后的最新稳定版本。 1.18.0 加入了 1.17.x mainline 分支中的新功能和 bug 修复,包括 limit_req 和 limit_conn 中的 dry run 模式,limit_rate, limit_rate_after 和 grpc_pass 指令中对变量的支持,以及支持 auth_delay 指令等。 auth_delay 指令位于 ngx_http_core_module 模块中,用法如下: 语法:auth_delay time; 默认值:auth_delay 0s; 上下文:http, server, location 通过 401 响应状态码来延迟处理未经授权的请求,以防止因密码、子请求结果或 JWT...阅读全文

博文 2020-04-23 09:18:27 debian.cn

Golang 中的 channel 通道详解

发送和接收操作将导致两个goroutine做一次同步操作。 因为这个原因,无缓存Channels有时候也被称为同步Channels 。当通过一个无缓存Channels发送数据时,接收者收到数据发生在再次唤醒发送者goroutine之前。单向channel当一个channel作为一个函数参数时,它一般总是被专门用于只发送或者只接收。为了表明这种意图并防止被滥用,Go语言的类型提供了单方向的channel类型,分别用于只发送或只接收的channel。类型 chan<- int 表示一个只发送int的channel,只能发送不能接收。相反,类型<-chan int 表示一个只接收int的channel,只能接收不能发送。(箭头<-和关键字chan的相对位置表明了channel的方向 。)这种限...阅读全文

Jono Bacon: GPL 没落了吗?

、构建联盟,找到并解决行业问题。 在这个峰会上,有一个分组研究,在其中,与会者被分成小组,被要求给一个真实存在的核心的开源技术推荐一个开源协议。每个小组都给出了回应。不到十分之一的小组推荐了宽容许可证,没有人推荐 GPL 许可证。 我看到了开源行业对于 Apache 协议以及 MIT 协议的逐步认可,但是他们却对花时间理解、接受和熟悉 GPL 这件事高高挂起。 在这几年里,这种趋势仍在蔓延。除了 Black Duck 的调查之外, 2015 年 GitHub 上的开源协议调查 也显示 MIT 是人们的首选。我还能看到,在我工作的 XPRIZE (我们为我们的 Global Learning XPRIZE 选择了开源协议),在我作为社区领导顾问的工作方面,我也能感觉到那种倾向,因为越来越多的...阅读全文

博文 2017-08-04 08:03:43 debian.cn

PostgreSQL 10 有哪些新特性

PostgreSQL 继续向着将在 2017 年 9 月份发布的第 10 个主版本迈进,EnterpriseDB 首席架构师和 PostgreSQL 贡献者 Robert Hass 根据 PostgreSQL官方路线图 编制 了一份 PostgreSQL 10 重要特性列表。 数月之前发布的 PostgreSQL 10 路线图包含多个单独的路线图,每个路线图对应一个特定的公司或个体贡献者。想要概括地了解路线图的内容并不容易。以下是 Hass 选出的一部分特性: 表分区 :这可以视为是表继承的简化版本,在表继承中,父表总是为空,子表(分区)有一个隐式约束,当元组插入父表时,它可以影响元组实际上添加到哪个分区。当使用继承关推导表的属性时,表分区有望简化这个过程,让特定的优化成为可能。 逻辑复...阅读全文

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

Intel 再曝“幽灵”类漏洞:二四六代酷睿受影响

在英特尔处理器的“熔断”(Meltdown)和“幽灵”(Spectre)漏洞风波还未完全平息的时候,研究人员又在英特尔的处理器上发现了新的漏洞,此前的“熔断”与“幽灵”补丁可能无法完全应对这种攻击手段。 这几名研究者来自美国的几所著名大学。他们发现了一种新的攻击方式,并把这一漏洞称为“BranchScope”。该漏洞与“熔断”和“幽灵”不完全相同,但与后者相似的地方在于,它们都是通过处理器中的分支预测(Branch Prediction)部分发起攻击的。它们的危害也相似:都可以直接访问用户的敏感信息。 研究人员在i7-2600、i7-4800MQ和i5-6200U三枚不同年代的Intel处理器上成功验证了BranchScope漏洞。这很有可能说明,Intel酷睿列的二代Sandy...阅读全文

博文 2018-03-30 08:48:47 debian.cn

Intel 第 11 代核显型号曝光:13个版本 最多64单元

单元 ,i5、i3 乃至是奔腾、赛扬上会看到它们。 另外还有六种低功耗版本的 Gen11 LP,至少分为 32 单元、48 单元两类 ,还有两个未指明具体单元数量的,应该是面向 U 列节能型号——Ice Lake 目前只公布了笔记本移动版,桌面版尚未确认。 Lakefiled 方面型号都标注为 UHD Graphics,显然是最低端的,又分为 GT0、GT1、GT1P5、GT2 四个版本 ,但均未给出单元数量,估计最多 32 个。...阅读全文

Linux Mint 19.2 “Tina”稳定版发布

Linux Mint 团队已正式发布 Linux Mint 19.x 列的更新 —— 代号为 “Tina” 的 19.2 稳定版本。作为 19.x 的更新版本,Linux Mint 19.2 仍基于 Ubuntu 18.04 LTS,并提供技术支持至 2023 年(因为 Linux Mint 19 是 LTS 版本)。 由于 Linux Mint 已停止使用 KDE 桌面环境,因此从 Linux Mint 19 开始,它只提供 Cinnamon、MATE和 Xfce 风味版本。 Linux Mint 19.2 Tina Xfce Edition Linux Mint 下载地址: Cinnamon 32-bit | 64-bitMATE 32-bit | 64-bitXfce 32-bit...阅读全文

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

API 和服务生命周期管理平台 Kong 发布了 Insomnia 列开发工具的一个重要扩展 —— Insomnia Designer。Insomnia Designer 提供一个编辑 GraphQL 和 REST API 的协作环境,让开发团队可以更方便地采用规范优先(spec-first)的方法用于软件设计。 Kong 于去年收购了开源 REST 客户端提供商 Insomnia,两者秉承着一致的目标在 Insomnia 的基础上推出了 Insomnia Designer,旨在帮助开发者创建 REST 和 GraphQL API。Kong 认为,软件正逐渐朝着松耦合的微服务模式运行,API 也已成为一等公民(first-class citizens)。在这种新的模式下,开发者需要工具来...阅读全文

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

AMD Ryzen 7 2700X/5 2600跑分曝光 性能提升明显

AMD即将推出第二代Ryzen 2000列处理器,各方面全面提升,从最近泄露的规格和性能看十分值得期待。Ryzen二代基于12nm新工艺和Zen+新架构,频率平均提升400MHz,并支持更高级的动态加速技术,超频空间也更大,同时改进了缓存、内存性能。 权威评测软件SiSoftware不小心泄露了一份Ryzen 7 2700X、Ryzen 5 2600的评测报告,虽然很快被撤下还是有网友保留了下来。这份评测都是考察SiSoftware的理论性能项目,没有实际应用和游戏测试,但是Ryzen二代的架构提升已经十分明显。 首先来看一下这两款新品的主要规格和 SiSoftware 的评价: 内存频率: 2400MHz提高到2933MHz,可以大大改进内存性能,就是现在高频内存太贵了。 核心线程...阅读全文

博文 2018-03-21 08:47:43 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

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

Python的闭包和装饰器

什么是装饰器? 装饰器(Decorator)相对简单,咱们先介绍它:“装饰器的功能是将被装饰的函数当作参数传递给与装饰器对应的函数(名称相同的函数),并返回包装后的被装饰的函数”,听起来有点绕,没关,直接看示意图,其中 a 为与装饰器 @a 对应的函数, b 为装饰器修饰的函数,装饰器@a的作用是: 简而言之:@a 就是将 b 传递给 a(),并返回新的 b = a(b) 栗子: 上面使用@dobi来表示装饰器,其等同于:qinfeng = dobi(qinfeng)因此装饰器本质上就是个语法糖,其作用为简化代码,以提高代码可读性,运行上段代码的结果为: 解析过程是这样子的: 1.python 解释器发现@dobi,就去调用与其对应的函数( dobi 函数) 2.dobi 函数调用前要指...阅读全文

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

HTTP状态码详解

制将会正常工作。 ETag 和/或 Content-Location,假如同样的请求本应返回200响应。 Expires, Cache-Control,和/或Vary,假如其值可能与之前相同变量的其他响应对应的值不同的话。 假如本响应请求使用了强缓存验证,那么本次响应不应该包含其他实体头;否则(例如,某个带条件的 GET 请求使用了弱缓存验证),本次响应禁止包含其他实体头;这避免了缓存了的实体内容和更新了的实体头信息之间的不一致。 假如某个304响应指明了当前某个实体没有缓存,那么缓存必须忽视这个响应,并且重复发送不包含限制条件的请求。 假如接收到一个要求更新某个缓存条目的304响应,那么缓存必须更新整个条目以反映所有在响应中被更新的字段的值。 305 被请求的资源必须通过指定的代理...阅读全文

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

Golang 之禅: 如何写优质代码

在本月初的 GopherCon 上,知名 Go 语言贡献者与布道师 Dave Cheney 发表了名为《The Zen of Go》的演讲,之后他整理了演讲内容在博客中分享,由于内容过长,他又写了一个简洁版本: 完整版:https://dave.cheney.net/2020/02/23/the-zen-of-go简洁版:https://the-zen-of-go.netlify.com 这里简单翻译一下简洁版本的内容:编写简单、可读、可维护的 Go 代码的十个工程要点。 每个包实现单一目标 设计良好的 Go 软件包提供一个单一的思路,以及一列相关的行为。一个好的 Go 软件包首先需要选择一个好名字,使用电梯法则(30 秒内向客户讲清楚一个方案),仅用一个词来思考你的软件包要提供什么功能...阅读全文

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

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

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

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

MySQL 8 第一个正式版发布:更好的性能

MySQL 8.0 列的首个正式版 8.0.11 已发布,官方表示 MySQL 8 要比 MySQL 5.7 快 2 倍,还带来了大量的改进和更快的性能! 需要注意的是从 MySQL 5.7 升级到 MySQL 8.0 仅支持通过使用 in-place 方式进行升级,并且不支持从 MySQL 8.0 降级到 MySQL 5.7(或从某个 MySQL 8.0 版本降级到任意一个更早的 MySQL 8.0 版本)。作为替代方案,在升级之前请对数据进行全量备份。 本文简要介绍 MySQL 8 中值得关注的新特性和改进。 1. 性能:MySQL 8.0 的速度要比 MySQL 5.7 快 2 倍。MySQL 8.0 在这些方面带来了更好的性能:读/写工作负载、IO 密集型工作负载、以及高竞争...阅读全文

博文 2018-04-20 10:40:18 debian.cn

六大算法之三:动态规划【转载】

)确定决策并写出状态转移方程:因为决策和状态转移有着天然的联,状态转移就是根据上一阶段的状态和决策来导出本阶段的状态。所以如果确定了决策,状态转移方程也就可写出。但事实上常常是反过来做,根据相邻两个阶段的状态之间的关来确定决策方法和状态转移方程。 (4)寻找边界条件:给出的状态转移方程是一个递推式,需要一个递推的终止条件或边界条件。 一般,只要解决问题的阶段、状态和状态转移决策确定了,就可以写出状态转移方程(包括边界条件)。 实际应用中可以按以下几个简化的步骤进行设计: (1)分析最优解的性质,并刻画其结构特征。 (2)递归的定义最优解。 (3)以自底向上或自顶向下的记忆化方式(备忘录法)计算出最优值 (4)根据计算最优值时得到的信息,构造问题的最优解 算法实现的说明 动态规划的主要难点在...阅读全文

博文 2021-07-31 07:18:53 CSDN博客

协议介绍之深入了解 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

AWS EKS 添加IAM用户角色 - SRE运维博客

IAM 用户或角色的 Amazon 资源名称 (ARN)。例如: { "UserId": "XXXXXXXXXXXXXXXXXXXXX", "Account": "XXXXXXXXXXXX", "Arn": "arn:aws:iam::XXXXXXXXXXXX:user/testuser" } 确认 ARN 与具有主要集群配置访问权限的集群创建者或管理员相匹配。如果 ARN 与集群创建者或管理员不匹配,请联集群创建者 aws-auth ConfigMap。 添加对 EKS 集群具有只读访问权限的 IAM 用户 {{< notice info "注意:" >}} 要允许超级用户访问权限以对任何资源执行任何操作,请添加 system:masters 而非 system:bootstrappers...阅读全文

博文 2022-12-19 21:15:27 博客园

最全 MongoDB 基础教程

版本 weights document 索引权重值,数值在 1 到 99,999 之间,表示该索引相对于其他索引字段的得分权重 default_language string 对于文本索引,该参数决定了停用词及词干和词器的规则的列表。 默认为英语 language_override string 对于文本索引,该参数指定了包含在文档中的字段名,语言覆盖默认的language,默认值为 language MongoDB聚合 MongoDB聚合(aggregate)主要用于处理数据(诸如级平均值、求和等), 并返回计算后的数据结果。有点类似sql语句中的count(*) aggregate() 方法 语法 db.COLLECTION_NAME.aggregate...阅读全文

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

Golang常见的十大算法精简版

最近有时间,都在看Go,感觉Go语言真的不错,具体自行百度。今天简单说一下算法。 什么是算法一列的计算步骤,用来将输入数据转化成输出结果算法的意义用于解决特定的问题解决同一个问题的不同算法的效率常常相差非常大,这种差距的影响往往比硬件和软件方面的差距还要大。 算法在我们编程开发中,还是不可或缺的。下面简单来列举一下go语言常见的十大算法。 BubbleSort(冒泡排序) func Sort(list []int, left, right int) { if right == 0 { return } for index,num := range list { if index < right && num > list[index + 1] { utils.SwapGo(list...阅读全文

博文 2019-09-05 09:31:10 debian.cn

深入理解Golang之context

:= &timerCtx{ cancelCtx: newCancelCtx(parent), deadline: d, } // 建立新建context与可取消context祖先节点的取消关联关 propagateCancel(parent, c) dur := time.Until(d) if dur <= 0 { c.cancel(true, DeadlineExceeded) // deadline has already passed return c, func() { c.cancel(false, Canceled) } } c.mu.Lock() defer c.mu.Unlock() if c.err == nil { c.timer = time.AfterFunc(dur, func...阅读全文

博文 2021-01-27 09:05:27 知乎

Gitlab CI 配置文件 .gitlab

only no 定义一列git分支,并为其创建job except no 定义一列git分支,不创建job tags no 定义一列tags,用来指定选择哪个Runner(同时Runner也要设置tags) allow_failure no 允许job失败。失败的job不影响commit状态 when no 定义何时开始job。可以是on_success,on_failure,always或者manual dependencies no 定义job依赖关,这样他们就可以互相传递artifacts cache no 定义应在后续运行之间缓存的文件列表 before_script no 重写一组在作业前执行的命令 after_script no 重写一组在作业后执行的命令 environment...阅读全文

博文 2018-12-12 21:01:19 ci.yaml 详解(上)