InfraPub 为您找到相关结果 348

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

云原生技术的不断发展,2018年,CNCF扩展了云原生技术的定义,以下是云原生技术的新定义:“云原生技术有利于各组织在公有云、私有云和混合云等新型动态环境中,构建和运行可弹性扩展的应用。云原生的代表技术包括容器、服务网格、微服务、不可基础设施和声明式API。这些技术能够构建容错性好、易于管理和便于观察的松耦合系统。结合可靠的自动化手段,云原生技术使工程师们能够轻松地对系统作出频繁和可预测的重大更。”其中,像容器,微服务等概念早已深入人心,而很多开发人员都对此次提及的“不可基础设施”这个概念有不少疑惑,下文将对这个概念进行解析。其实不可基础设施这个概念由来已久,并在不同的场合被很多技术专家已不同的形式提出并讨论过, 例如:“Trash Your Servers and Burn...阅读全文

Facebook 是如何进行大规模代码部署的

Facebook 的首位发布工程师,目前是 Facebook 发布工程的工程总监。 Facebook 的发布周期是“ quasi-continuous ” (准连续)——这只是一种委婉的说法,表明并非每次提交都会部署到生产环境,实际上它采用的是对几十到几百个提交进行批处理,每隔几个小时就进行推送。这种分层发布的方式使任何更的回滚很容易。 这个新系统从 2016 年 4 月开始,经过一年的时间慢慢地完善。早先的模式是从主干分支的提交中选择特定的更放到发布分支上。发布分支每天将这些更推送到生产环境。这种“ cherry-picking ”的特点是,每天选择更的数量为 500 ~ 1000。剩下的更就推入到每周发布分支中。随着时间的推移,提交的数量和参与其中的工程师都有所增加,发布工程师的手工劳动得...阅读全文

博文 2017-10-31 14:05:20 debian.cn

Python的闭包和装饰器

定一个参数,传入的就是@dobi下面修饰的函数,也就是 qinfeng() 3.dobi() 函数执行,调用 qinfeng(),qinfeng() 打印“dobi” 什么是闭包? 首先还得从基本概念说起,什么是闭包呢?来看下维基上的解释: 在计算机科学中,闭包(Closure)是词法闭包(Lexical Closure)的简称,是引用了自由量的函数。这个被引用的自由量将和这个函数一同存在,即使已经离开了创造它的环境也不例外。所以,有另一种说法认为闭包是由函数和与其相关的引用环境组合而成的实体。闭包在运行时可以有多个实例,不同的引用环境和相同的函数组合可以产生不同的实例。 .... 上面提到了两个关键的地方: 自由量 和 函数, 这两个关键稍后再说。还是得在赘述下“闭包”的意思,望文知...阅读全文

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

Bash Shell 中的 PROMPT_COMMAND

今天查看了一个系统初始化的 Shell 脚本,其中有一段命令是配置记录 bash 命令日志的,如下: ``` LOGIN_IP=$(who am i | awk '{print $NF}') export PROMPT_COMMAND='{ msg=$(history 1 | { read x y; echo $y; });echo $(date +"%Y-%m-%d %H:%M:%S") [$(whoami)@$SSH_USER$LOGIN_IP `pwd` ]" $msg" >> /var/log/.history; }' ``` 其中的 PROMPT_COMMAND 是 bash 的环境量,这个量的中内容是作为一个普通的 bash 命令执行的,而且执行时间是...阅读全文

Go 1.10 发布说明草案:预计于 2018 年 2 月发布

Go 1.10 还没发布,下面将简单介绍正在进行中的 Go 1.10 发布说明草案。Go 1.9 已于 2017 年 8 月发布,最新的 Go 1.10 预计将于 Go 1.9 发布六个月后 —— 2018 年 2 月发布。 Go 1.10 大部分的更仍然集中在工具链、运行时和库的实现上。一如既往地,此版本依然会 保持与 Go 1.x 的兼容性 ,官方表示几乎所有的 Go 应用程序都能像以前一样继续编译和运行。 语言特性方面的改 语言特性方面没有实质性的化。 极端情况下,由无类型常量引起的化已经弄清楚。因此,编译器也已进行升级,它可允许这样的索引表达式 x[1.0 << s] 通过编译,其中 s 是一个无类型常量。go/types 包也已完善。 方法表达式的语法 (grammar...阅读全文

博文 2017-11-18 13:59:12 debian.cn

中国投资130亿元量产相变内存 比闪存快1000倍

全球的内存市场主要被三星、SK Hynix和美光三家公司垄断,他们三家加起来的份额高达95%,中国要想在内存市场突破封锁并不容易,尽管有紫光、长鑫、兆易创新等公司投身存储芯片市场,但在现有的DDR内存技术上,中国公司技术、产能还差得远呢。 此外,内存也不止传统的DDR技术,还有很多新兴领域正在发展,比如PCM相存储,相比传统内存它的优势很多,比如速度快了1000倍,耐用性也是传统内存的1000倍,江苏淮安市时代芯存公司投资130亿元建设了国内最大的相存储基地,上周已经开始正式运营,预计年产值45亿元。 来自中国江苏网的消息称,淮安市集成电路产业现场推进暨江苏时代芯存半导体有限公司相存储器工厂竣工运营启动仪式在淮安高新技术产业开发区顺利举行,此举标志着130亿元投资的相存储项目开始进...阅读全文

博文 2018-04-10 22:34:58 debian.cn

Terraform 学习总结 — Terraform 简介

)。Terraform 生成一个执行计划,描述它将做什么来达到所需的状态,然后执行它来构建所描述的基础结构。随着配置的化,Terraform 能够确定发生了什么化,并创建可应用的增量执行计划。 Terraform 是用 Go 语言开发的开源项目,你可以在 github 上访问到它的源代码。 Terraform 核心功能 基础架构即代码(Infrastructure as Code)执行计划(Execution Plans)资源图(Resource Graph)自动化更(Change Automation) 基础架构即代码(Infrastructure as Code) 使用高级配置语法来描述基础架构,这样就可以对数据中心的蓝图进行版本控制,就像对待其他代码一样对待它。 执行计划(Execution...阅读全文

Grafana 6.3.3发布 系统指标监控与分析平台

Grafana 6.3.3 发布了,Grafana 是一个功能丰富的指标标准仪表板和图形编辑器,用于分析和监控 Graphite、Elasticsearch、OpenTSDB、Prometheus 和 InfluxDB。 新版本更新主要是 Bug修复,具体如下: Annotations:修复取消时间序列查询时,失败的注释查询 #18532Auth:如果 cookie_samesite 为 none,请不要设置 SameSite cookie 属性 #18462DataLinks:正确地将范围量应用于数据链接 #18454DataLinks:在图形上下文菜单中显示数据点的时间戳时,遵守时区 #18461DataLinks:插值量时,正确使用数据点时间戳 #18459Explore:修复空...阅读全文

博文 2019-08-17 21:20:29 debian.cn

Debian 9 Stretch 发布,献给已故的创始人 Ian

Debian 发行版宣布正式释出代号为 Stretch 的 Debian 9,该版本将提供五年的支持。Stretch 将专门献给于 2015 年 12 月 28 日去世的项目创始人 Ian Murdock。Stretch 的主要化包括:默认 MySQL 种改为 MariaDB;Firefox 和 Thunderbird 替代去品牌名的版本 Iceweasel 和 Icedove, 九成以上的源包用逐位对应的方式构建,未来版本的 Debian 还将提供验证包的工具和元数据;X 显示系统不再需要 root 权限运行;GnuPG 经典版本将被淘汰,引入的现代版本增加了椭圆曲线加密,改进默认设置,模块化架构,改进智能卡支持;改进 UEFI 支持等。 软件方面的化包括:Apache...阅读全文

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

Docker 重大更新,版本升至17.03

3月2日,Docker 官方发布了一篇 blog ,宣布企业版到来。版本也从1.13.x一跃到17.03。之后,Docker 会每月发布一个 edge 版本(17.03, 17.04, 17.05...),每三个月发布一个 stable 版本(17.03, 17.06, 17.09...),企业版(EE) 和 stable 版本号保持一致,但每个版本提供一年维护。 Docker 的 Linux 发行版的软件仓库也从以前的 https://apt.dockerproject.org / https://yum.dockerproject.org 更为目前的 https://download.docker.com/。软件包名更为 docker-ce (社区版) 和 docker-ee (企...阅读全文

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

新改进让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

OpenSSL 3.0 正式发布,更改许可协议并弃用所有低级别 API

经过 3 年的开发,17 个 alpha 版本,2 个 beta 版本,超过 7500 个提交,以及来自 350 位不同开发者的贡献,OpenSSL 3.0 终于正式发布了。OpenSSL 1.1.1 以来的主要化主要版本开发者可以从这里下载 OpenSSL 3.0,并升级你的应用程序使之兼容。OpenSSL 3.0 是一个大版本升级,并不完全向后兼容以前的版本。大多数使用 OpenSSL 1.1.1 的应用程序仍然可以正常工作,只是需要重新编译(可能会有关于使用废弃的 API 的编译警告)。还有一些不能完全兼容的应用可能需要进行修改才能正确编译和使用。如果应用程序需要利用 OpenSSL 3.0 中的一些新功能(例如 FIPS 模块),也需要对应用进行更改。许可证更在以前的版本中...阅读全文

Linux kernel 4.0全新发布!引入热升级

对于所有开源爱好者来说,今天是个大喜的日子,Linus Torvalds很高兴地宣布了Linux Kernel 4.0全新内核。 从版本上就可以看出Linux 4.0的化之大,事实上也的确如此,尤其是打补丁后不需要重启了。 Linux新的补丁更新机制叫做“live patching”(实时补丁),可以对系统内核进行更新而不用重启。该功能由SUSE Enterprise Linux kGraft、Red Hat Kpatch合并升级而来。 普通用户对这个可能没啥感觉,但如果你是企业的网管,就会对打补丁再重启深恶痛绝了,那可意味着整套系统的下线。Windows要是啥时候也能会这招就好了,那意味着你的系统甚至可以连续运行几年乃至十几年! 新系统还更新了大量驱动,包括Radeon DRM驱动支持...阅读全文

即将发布的 JDK 10 有 109 项新特性,你喜欢哪些

按计划,JDK 10 将于 3 月 20 日正式发布。据前 Oracle 员工 Simon Ritter 的统计,JDK 10 总共包含 109 项新特性。当然,在最终发布前,可能还会发生化。 新特性中最重要的,是我们之前曾报道过的 12 个 JEP : JEP 286: 局部量的类型推断。该特性在社区讨论了很久并做了调查,可查看 JEP 286 调查结果。 JEP 296: 将 JDK 的多个代码仓库合并到一个储存库中。 JEP 304: 垃圾收集器接口。通过引入一个干净的垃圾收集器(GC)接口,改善不同垃圾收集器的源码隔离性。 JEP 307: 向 G1 引入并行 Full GC。 JEP 310: 应用类数据共享。为改善启动和占用空间,在现有的类数据共享(“CDS”)功能上再次拓...阅读全文

博文 2018-03-08 12:56:20 debian.cn

互联网协议正在发生变化

当上世纪九十年代互联网开始被广泛使用的时候,其大部分的通讯只使用几个协议:IPv4 协议路由这些数据包,TCP 协议转发这些包到连接上,SSL(及后来的 TLS)协议加密连接,DNS 协议命名那些所要连接的主机,而 HTTP 协议是最常用的应用程序协议。 多年以来,这些核心的互联网协议的化几乎是微乎其微的;HTTP 增加了几个新的报文头和请求方式,TLS 缓慢地进行了一点小修改,TCP 调整了拥塞控制,而 DNS 引入了像 DNSSEC 这样的特性。这些协议看起来很长时间都一成不(除了已经引起网络运营商们的大量关注的 IPv6)。 因此,希望了解(甚至有时控制)互联网的网络运营商、供应商和决策者对这些协议采用的做法是基于其原有工作方式 —— 无论是打算调试问题,提高服务质量,或施加政策...阅读全文

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

随着企业的逐步成熟,他们会开发更多工具。在Google,我们持续创建新的外部和内部服务,以及支持这些服务的基础架构。 从2013年起,我们开始放弃之前用来更新和维护服务的简单的自动化工作流。每个服务都要求复杂的更新逻辑,并且还需要适应基础架构的化,经常性的集群的启动关闭等等。配置多个,互相交互的服务的工作流得难以维护。 我们需要一种全新的方案来适应业务的增长以及所涉及到的配置的复杂性。为此,我们开发了声明式的自动化系统,作为统一的控制层,并且取代了工作流。这个系统包括两个主要的工具:Podspec,描述服务基础架构的工具,和Annealing,更新生产环境来匹配Prodspec输出的工具。本文讨论我们解决过的问题,以及我们所选择的架构。 Prodspec和Annealing有一个根本共...阅读全文

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

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

在前几天,Go1.16rc1 抢先发布了。结合常规的 28 发布规律,其将会在 2021.02 月份左右发布正式版本。 这次 Go1.16 也带来了一些新特性或更。那么作为一个 Gopher,想必不能错过这次的更新。 今天这篇文章将会带大家了解一下 Go1.16 的几个需要关注的特性。 废弃 io/ioutil Go 官方认为 io/ioutil 这个包的定义不明确且难以理解。所以 Russ Cox 在 2020.10.17 提出了废弃 io/ioutil 的提案。 大致更如下: Discard => io.DiscardNopCloser => io.NopCloserReadAll => io.ReadAllReadDir => os.ReadDirReadFile...阅读全文

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

Linux 5.12开始支持USB 4“安全等级5” 可禁用PCIe隧道功能

为即将到来的 Linux 5.12 合并窗口预定的 USB4 / Thunderbolt 更已经被排入 USB-next 树中。这是英特尔的开发人员为下一个内核合并窗口所做的Thunderbolt改,作为其中的一部分,包括最新的USB4方面的改进。Linux 5.12的新安全选项之一是支持USB 4的安全级别5(SL5)。 通过这个新的安全级别,PCIe隧道将被禁用。这个禁用PCI Express隧道的更高安全级别通常是支持USB 4硬件的BIOS配置选项。这个 "nopcie "选项在只使用DisplayPort的 "dponly "模式下也会被强制执行。 Linux内核现在已经支持 Thunderbolt / USB 4 安全设置,特性包括要求用户批准授权新设备,自动隧道...阅读全文

Debian中文怎么读 如何正确发音

Debian 是 Debian 项目的创始人 Ian Murdock 和他的妻子 Debra 的名字缩写。值得一提的是,Debian 是第一个 Linux 发行版,它首次发布于 1993 年 9 月。 根据 Debian 的官方网站建议,它应该这样读:Deb'-ee-en ,“得比恩”,重音在第一音节。“得” 有点接近,因为是重音,deb 应该发成类似“跌”的发音。 也就是“跌扁”,“蝶”。 这里提供两种很标准的 Debian 标准发音,供参考。 第一个发音是带西班牙口音的 Debian 发音方式(MP3文件下载): 这一个是较美式的 Debian 读法(MP3文件下载):...阅读全文

博文 2018-01-02 18:36:25 debian.cn

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

: 2700X 8核心16线程,2600 6核心12线程,非常适合多线程应用,不过也限制了频率提升。 主频: 2700X最低2.2GHz、基准3.7GHz、最高4.2GHz,相比1700X提升了10%左右。2600最低1.55GHz、基准3.4GHz、最高3.98GHz。 热设计功耗: 2700X 105W增加了10W,对散热器要求会更高一些。2600 65W保持不。 一级缓存: 2700X 256KB一级数据缓存、512KB一级指令缓存保持不,后者仍然比Intel多一倍。2600分别为192KB、384KB。 二级缓存: 2700X 4MB、2600 3MB,也保持不,但改进了延迟。 三级缓存: 16MB不,但依然改进了延迟,也比Intel大得多。 以上是部分测试成绩(完整版请参考这里),对比...阅读全文

博文 2018-03-21 08:47:43 debian.cn

Gitlab CI 配置文件 .gitlab

types 已废除,将会在10.0中移除。用stages替代。 与stages同义 variables GitLab Runner V0.5.0. 开始引入 GItLab CI 允许在.gitlab-ci.yml文件中添加量,并在job环境中起作用。因为这些配置是存储在git仓库中,所以最好是存储项目的非敏感配置,例如: variables: DATABASE_URL:"postgres://postgres@postgres/my_database" 这些量可以被后续的命令和脚本使用。服务容器也可以使用YAML中定义的量,因此我们可以很好的调控服务容器。量也可以定义成job level。 除了用户自定义的量外,Runner也可以定义它自己的量...阅读全文

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

下一个LTS内核版本确定为 Linux Kernel 4.9

Linux内核维护者Greg Kroah-Hartman在私人Google+发布一条短消息,将Linux Kernel 4.9分支标记为“longterm”,意味着4.9版本将会作为长期支持版本。 事实上关于Linux Kernel 4.9是否是长期支持版本的故事要从2016年8月12日开始说起,当时Greg Kroah-Hartman在Google+上发布信息,说“4.9 == next LTS kernel”;去年9月6日,Greg Kroah-Hartman改了这个想法,表示将会在Kernel.org网站上保留给4.9当作“长期支持”的权利。 在他的私人博客中写道:“因为很多人滥用这个通知这给我们造成了很大的困扰, 因此我保留是否选择4.9作为长期支持的权利。如果是这样,我可能会重...阅读全文

Gitlab 12.2 发布:改进团队协作

Gitlab 12.2 已经发布,此版本将帮助团队优化他们的管道,改进协作,并管理项目之间的相互依赖。更新内容如下: 更快、更灵活的管道 CI 管道的目标是自动化手工构建和测试任务,加速软件交付,同时减少错误。然而,对于某些用例,GitLab CI/CD 管道并没有那样高效。GitLab 12.2 现在支持 Directed Acyclic Graphs (DAG) 作为创建和管理详细作业依赖关系的方法,而不是依赖于顺序阶段。使您的 CI 管道得更快和更有效率。 设计管理 软件开发是一项团队协作工作,在 12.2 版本中,提供了新的能力,包括在 GitLab 上的设计管理。设计管理将使设计内容的共享、版本和协作得容易,从而帮助团队更有效地使用单一来源。 跨项目合并请求依赖 复杂系统通常...阅读全文

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

Ubuntu 17.10正式发布:桌面弃32位 七年首次换桌面

今天,Canonical公司正式推出了最新版的Ubuntu 17.04,开发代号为Artful Aardvark(机灵的土豚)——Ubuntu的代号一直都是两个相同字母单词的单词,一个是形容词,一个是动物名,如今已经完成一个A-Z字母表轮回,重新从A开始。 更值得关注的是这个当今最流行Linux发行版在功能特性上的化,首先就是桌面版放弃了对32位硬件的支持,仅提供64位版本,不过服务器平台和各种衍生版本依然支持32位。 新系统内核是Linux 4.13,而桌面UI七年来第一次放弃了Unity,替换为新的GNOME 3,具体的软件包版本为3.26.1,Ubuntu GNOME版本也同时被放弃。 另外,Ubuntu 17.10现在默认使用Wayland作为显示服务器,古老且臃肿的X.Org...阅读全文

博文 2017-10-19 23:00:53 debian.cn

如何让 Mac OS X 快速完成升级

每次将 Mac OS X 升级到新版本时,你只能干等着,看进度条慢慢化,是不是觉得很无奈。最近有用户在 Reddit 中发帖,和其他用户共享了只需一个终端指令就能够让 macOS 升级得更快。 这名用户表示,自己通过 App Store 升级 macOS 前后通常需要半个小时。macOS 已经内置了一个软件升级实用工具,它能够让系统升级得更快。而且还支持用户一边升级一边使用设备。 这名用户表示自己通过这个办法升级 macOS 12.6 最新版本时只需要 10 分钟,升级过程中因为需要重启设备,有大约 2 分钟的时间无法使用设备。这名用户在帖子建议使用一下两条命令行即可执行更新: softwareupdate -ia 这个命令会执行安装更新的任务。升级过程时会收到提示,用户需要重启设备...阅读全文

博文 2017-07-21 17:41:38 debian.cn

GitLab的Python依赖扫描Docker镜像将换用Debian

GitLab 12.9 将弃用用于 Python 依赖扫描的 Alpine Linux 镜像,改用 Debian 作为基础镜像。 GitLab 官方表示,在评估了改基础镜像 Alpine 以更好地支持 Python 的 issue #13694 之后,决定切换到 Debian,这样可以使扫描工具支持更多的 Python 项目。 具体来说,从今年 3 月 22 日发布的 GitLab 12.9 开始,开发者将不再可获得用于 Python 依赖扫描的基于 Alpine 的镜像,届时即使运行的是旧版本,也会受到影响。 由于弃用 Alpine,如果使用 Alpine 特定的命令,如 apk add xyz,则可能需要在以下情况进行修改: 在扫描之前(仅当禁用 docker-in-docker 时...阅读全文

博文 2020-02-15 11:54:28 debian.cn

TurnKey Linux 16.0 稳定版发布

、Revision Control、StatusNet、Apache Tomcat、Torrent Server、Trac、TWiki、vtiger、WordPress、Zimra 及其他。 此版本的重要更体现在底层,主要化则是在软件层面,可能用户对大部分改不能明显感知。例如在某些情况下,团队已经将自己的软件 fork (例如,Casper for live ISO 功能) 迁移至 Debian 的默认值 (‘live-boot’和’live-tools’)。又例如定制软件则被移植到使用较新的语言版本。根据官方的说法,使用 Python 编写的大多数自定义软件(例如 Confconsole,Inithooks,DI-live 和各种库)已从 Python2 移植到 Python3。 TurnKey...阅读全文

博文 2020-05-07 09:49:42 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

服务监控系统 Prometheus 2.0 发布

服务监控系统 Prometheus 2.0 已发布,Prometheus 是一个 Go 语言开发的开源的服务监控系统和时间序列数据库。 Prometheus 2.0 有一个简单而强大的运营模式。然而,基础设施领域也没有停滞不前,像 Kubernetes 和 Mesos 这样的项目正在迅速改软件的部署和管理方式。受监控的环境得越来越活跃。 存储 Prometheus 2.0 有性能显着提高,几乎在所有方面都有所改进。查询延迟更加一致,特别是在高系列流失的情况下,它的规模更大。在不同的现实世界生产情景下测量的资源消耗也显着下降: 与 Prometheus1.8 相比,CPU 使用率 降低了 20% – 40% 与普 Prometheus1.8 相比, 磁盘空间使用率 降低了 33...阅读全文

博文 2017-11-09 10:44:45 debian.cn

PHP 7.4 有哪些新特性

PHP 7.4 的GA版今天正式发布了。PHP 7.4发布后,PHP 7.3或其它的PHP 7版本都可以升级到PHP 7.4版。 PHP 7.4 的主要特性包括以下几个, 短闭包函数(short closure)预加载提交性能属性类型限定Improved type variance(不会翻译)三元运算简写数组展开运算新增类的魔术方法:serialization数字分隔符运算优先顺序允许在__toString中抛出异常支持反射引用新增字节分割函数移除php短标签弃用左关联运算符不再向后兼容的更 短闭包函数 短闭包函数可以减少冗余代码: array_map(function (User $user) { return $user->id; }, $users) array_map(fn...阅读全文

博文 2019-11-29 20:45:16 debian.cn

Google 关于 Go 2 的讨论

Go 1规范还存在,他们的程序将可以继续编译并正确运行。现在,要设计的Go 2规范,存在破坏与1.x兼容的可能性。Cox认为需要谨慎选择新特性。 Go 2必须带动所有开发者[包括使用Go 1.x的开发者]。只有回报足够丰富,我们才能要求他们放弃旧有习惯,来学习Go 2的新特性。 Go 2还必须兼顾所有现有的Go 1源代码。 我们不能分裂Go生态系统。在混合型的项目中,用Go 2 写的包中导入了用Go 1写的包,或者相反的情况,这种情况必须要在多年的过渡期中正常运行。我们必须弄清楚如何做到这一点,自动化工具像go fix一定会发挥作用。 为了避免引起混乱,Google将新功能的数量限制为“两到三个”,一定不超过五个“,”每一个化都需要仔细的思考,规划和工具化“。 这些功能不包括“允许使用更加口...阅读全文

博文 2017-07-20 10:03:13 debian.cn

Debian下安装配置 Hadoop 3.1.3 集群

/lib/jvm/。如果/usr/lib下没有jvm文件夹,则先创建jvm,执行sudo mkdir /usr/lib/jvm。然后创建jdk软链接: sudo ln -sf /usr/lib/jvm/jdk1.8.0_202 /usr/lib/jvm/jdk 2. JDK环境量的配置 新建/etc/profile.d/jdk.sh文件,并添加以下内容, # JDK environment settings export JAVA_HOME=/usr/lib/jvm/jdk export JRE_HOME=${JAVA_HOME}/jre export CLASSPATh=.:${JAVA_HOME}/lib:${JRE_HOME}/lib export PATH=${JAVA_HOME...阅读全文

博文 2019-11-27 23:04:39 debian.cn

Go 语言的大版本更新:Go 2.0 安排上了

述。 Go 1 和 Go 2 之间的主要区别在于主导权的不同。谁将影响设计,又该如何做出决策?我们都知道,Go 1 的诞生是小团队努力的结果,受外部影响不大;而到了 Go 2,尤其是经过将近 10 年的发展后,Go 语言的生态已经十分庞大,因此它也更多地受到社区的驱动和影响。经历了这些,Go 开发团队也了解到了更多一开始不知道的与语言特性和库相关的知识 —— 这些都来自于 Go 社区的反馈。 2015年,Go 开发团队引入了提案流程,以收集特定类型的反馈:针对语言和库更方面的提案。由 Go 开发团队高级成员组成的委员会定期审查、分类和决定社区提交的提案。这个流程十分有效,但作为该过程的一部分,他们忽略了所有不向后兼容的提案,只是将其标记至 Go 2。到了2017年,Go 开发团队也停止进行...阅读全文

Debian GNU/Linux 9 “Stretch” 将于2017年初发布

2016 年 11 月 5 日,Debian 发布经理 Emilio Pozuelo Monfort 和 Niels Thykier 高兴地宣布 Debian GNU/Linux 9 "Stretch" 操作系统进入冻结开发阶段。 在一个开发周期中,GNU/Linux 有多个里程碑,如 Alpha、Beta、RC、Beta Freeze、Feature Freeze,等等, Debian GNU/Linux 9 "Stretch" 即 Debian OS 的下一个重大发布,此版本已经是功能完善的版本。 "这意味着不再有新的库或包的大化。不过之后几天还会有小的改,我们尽量使其工作更流畅,所以请耐心等待最后的调整。"通知中写道。 按 Debian 开发周期,下一步是 2017 年 1 月...阅读全文

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

EC2关机后 AWS还会计费吗

AWS 在 EC2 关机后,不会再对计算资源计费;其他资源 比如EBS、Elastic IP 这些还会产生费用。如果你使用了预留实例,还需要考虑预留实例对计费方式的影响,会按照预留实例的计费标准计费。 这种灵活的计费方式,是 AWS EC2 默认就支持的,相比之下,国内绝大多数云主机厂商是不支持的。在开机、关机时(即主机状态发送转时),AWS 会收取最少一分钟的计费费用。 如果你关机过程用了20秒,AWS会按照一分钟来收费;如果你关机过程用时 1分30秒,则AWS会按照1分30秒收取费用。很良心吧,很灵活吧。 AWS的文档还是要多看的,计费方式和九年前的AWS化很大。最新版的文档可以从这里下载: https://docs.aws.amazon.com/AWSEC2/latest...阅读全文

博文 2019-02-27 17:02:32 debian.cn

我要彻底放弃 Debian 操作系统!-Michael Stapelberg

,包括大型软件工程项目的工作原理,而且我也明白自己多么地喜欢我的计算机系统。我非常清楚这些日子以来的闲暇时间我是如何度过的。 我会在以下各小节中逐一介绍我所面临的主要困难,讨论顺序不分先后。其中有些困难有一些相互影响——例如,如果改动后的效果更好,那么我们就有机会将包转换成更方便的机器读取。 Debian的更流程 最近几年,我目前的团队在整个代码库中进行了各种大大小小的重构(涉及数千个项目),因此在关于如何有效地进行这些更方面,我们学到了很多宝贵的经验。令我苦恼的是,Debian在各方面的工作方式几乎完全相反。我理解每个组织都不同,但我认为我的很多观点确实适用于Debian。 在Debian中,包的推送必须严格遵守一个文档——叫做Debian策略,还有个程序lintian用来保证该策略的实...阅读全文

博文 2019-03-22 17:01:23 Michael Stapelberg

阔别多年 Slax 9.2.1 发布:基于 Debian “Stretch”

消失了很长时间的 Slax Linux 终于发布了更新。昨日,Slax Linux 的作者 Tomas Matejice 发布了 Slax Linux 9.2.1,并带来了几个重大的化。 最重要的化是,Slax Linux 9.2.1 不再基于 Slackware,现已切换至基于 Debian 的最新稳定版 Stretch。因此,Slax Linux 也将采用 APT 软件包管理工具和 Systemd 这款 init 程序。 图形桌面使用了 Fluxbox 窗口管理器和 xLunch,xLunch 的开发也是独立的。 尽管新版本已经基于 Debian GNU/Linux 9.2.1 “Stretch”,但依然保留 Slackware 的前缀名字。这款系统的容量依然保持了轻量设计...阅读全文

Debian Stretch 安装 Nodejs 最新版本

nodejs 你也可以直接下载官方预编译好的二级制文件来安装,注意更新 $PATH 量。Node.js 的二进制文件打包脚本的官方地址在 GitHub 上。你也可以直接从官方网站上下载通用版的预编译文件,额外的工作是你需要自己解决 $PATH 等环境量的设置问题。 检查确认 Nodejs 版本 通过执行命令 node -v ,我们可以看到当前Node.js是最新的v8.x版本。 提示:如果我们需要其他版本的Node.js,我们只需要将安装里面下载链接 setup_8.x 替换成其它即可,如setup_7.x...阅读全文

博文 2018-01-17 14:00:39 debian.cn

Bootstrap 4正式发布 带来新的示例和新的主题

Bootstrap 4.0.0 正式版现已发布,更新内容方面,相对于之前的测试版,正式版没有重大的改,但做出了一些关键的改进,并解决了一些棘手的错误。 新的示例 几乎每个示例都经过稳定的 v4 版本的重大修改,其中删除了一些过时的示例,添加了一些新的示例,并且彻底改了其他一些示例。 当然,稳定版中依然有一些已知的问题尚未修复,预计在下一个小版本更新时会修复,如 Input groups, validation, 和 rounded corners。 主题方面,Bootstrap 的主题今年将得到重大更新,官方表示将会推出十个全新的主题。当前的目标是第一季度推出的主题都建立在 Bootstrap 4 上(都没有 v3 版本的)。 Bootstrap 4 的示例和迁移说明。 详情请查看发布...阅读全文

博文 2018-02-16 13:01:27 debian.cn

国产 Java 开源博客 Solo 2.5.0 发布,支持数据导出

Solo 是一款 一个命令 就能搭建好的 Java 开源博客系统,如果你想开个独立博客,请一定不要错过!2.5.0 版本主要支持了 Markdown/JSON 格式数据导出,并改进了 Markdown 渲染。 另外,我们 新的博客产品 Pipe(golang 开发)已经开源 ,欢迎大家来围观! 安装 下载 安装包 解压后执行 java -cp WEB-INF/lib/*;WEB-INF/classes org.b3log.solo.Starter 从 2.4.0 升级只需将已有的配置拷贝覆盖即可,启动后会自动升级。 文档 用户指南 :安装、配置、备份以及常见问题 开发指南 :开发环境、项目结构、框架说明 皮肤开发 :开发步骤、模版量 插件开发 :插件机制、处理流程 项目...阅读全文

博文 2017-12-21 09:48:36 debian.cn

Google 开源 Docker 镜像差异分析工具 container

Google 发布了一个名为 container-diff 的开源项目,这是一个分析和比较容器镜像的工具,可用来分析 Docker 镜像之间的差异。 container-diff 可通过几个不同的标准来检查镜像,包括: Docker 镜像历史 镜像文件系统 Apt 包管理器 pip 包管理器 npm 包管理器 上述分析可以在单个镜像上执行,也可以在两个镜像上执行以进行比较。 该工具可以帮助用户更好地了解他们的镜像内部发生了什么化,并让他们更好地了解镜像包含什么内容。 单个分析: container-diff analyze [Run default analyzers] container-diff analyze --type=history [History...阅读全文

微软宣布年底关闭开源软件托管平台 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

Debian及衍生版自动安装系统更新

在本篇文章中,我们将介绍如何在 Debian 和其衍生版上,配置系统自动安装更新,并通过邮件通知系统管理员,每次升级的更内容。本文中提到的多数命令,由于是系统层面的配置,需要用 root 来执行。 在配置系统更新前,我们需要安装这两个安装包,安装命令如下: # apt update && aptitude install unattended-upgrades apt-listchanges -y unattended-upgrades 是一个可以让系统保持自动更新的包。这些更新包含了安全更新和 Bugfix 等。启用 unattended-upgrades 后,我们还需要知道每次改动的内容,apt-listchanges 解决了这个问题,它将会邮件通知我们升级过程中发生的改。 依赖包...阅读全文

博文 2019-06-04 12:23:56 debian.cn

80% 的 Oracle JDK 用户正在考虑替代方案

在 2019 年,Oracle 决定更改许可模式,从提供免费的 Java 更新转为要求付费订阅,这一重大化无疑在市场上掀起了一片波澜。之后,尽管有一些使用 Java 的公司扔坚持使用 Oracle 并承担了增加的支持成本,但许多公司也在步步为营,谋求新的选择。 据 Azul Systems 的一项新调查显示,目前有 80% 的 Oracle JDK 用户正在考虑其他选择。Snyk 和 Oracle 联合进行的 2018 年调查层表明,Oracle JDK 用户以前占 Java 用户的很大比例。该调查发现 70% 的受访者使用 Oracle JDK,21% 的受访者使用 OpenJDK,9% 的受访者使用其他 JDK 实现,例如 Eclipse OpenJ9/IBM J9、Android...阅读全文

博文 2020-05-27 08:13:46 debian.cn

Java 10 正式发布:包含 109 项新特性

期待已久的 Java 10 已正式发布!你可以通过这里下载 Java 10 正式版。为了更快地迭代,以及跟进社区反馈,Java 的版本发布周期更为每六个月一次,并且承诺不会跳票。新的发布周期也会严格遵循时间点,将在每年的 3 月份和 9 月份发布。 Java 10 是采用新发布周期的第一个版本,提供了 109 项新特性,其中最备受关注的莫过于局部量的类型推断。 相关链接: JDK 10 安装指南 JDK 10 发布说明 Readme Java 10 的 12 项关键新特性: JEP 286: 局部量的类型推断。该特性在社区讨论了很久并做了调查,可查看 JEP 286 调查结果 JEP 296: 将 JDK 的多个代码仓库合并到一个储存库中 JEP 304: 垃圾收集器接口。通过引入一...阅读全文

博文 2018-03-21 08:35:10 debian.cn

Rust 1.39.0 发布,async/.await 稳定了

Rust 1.39.0 已经发布。此版本的亮点包括 async/.await,对 match 守卫 by-move 绑定的共享引用,以及函数参数的属性。 async/.await 稳定 此版本 async/.await 特性已经稳定,这意味着现在可以定义 async 函数和块,并进行 .await 操作。 async 函数通过 async fn 引入,被调用时会返回一个 Future,该 Future 是一个会挂起的计算,可以使用 .await 运行并完成计算。而除了 async fn,async{…} 和 async move{…} 块也可以用来定义“异步文字”,它们的行为像闭包。 match 守卫引用 by-move 绑定 在 Rust 中进行模式匹配时,一个量,也就是“绑定”,可以...阅读全文

博文 2019-11-11 09:44:43 debian.cn

Java Annotations详解

Java注释被用来为java代码提供元数据(meta data)。作为元数据,注释不会直接影响代码的执行结果,不过事实上有些注释就是为了影响代码的执行结果而定义的。 Java注释是从Java 5开始添加的。本文对于Java注释的讨论是基于java 6的,据我所知,到目前为止Java 7中关于注释的部分并没有发生改,所以本文对java 7编程人员上来说应该也是可用的。 目录: · Java 注释的作用 · 注释的基础知识 · 注释的位置 · Java中预置的注释 · 创建你自己的注释 Java 注释的作用 预编译指令(Compiler instructions) 编译时指令(Build-time instructions) 运行时指令(Runtime instructions) Java有...阅读全文

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

Rust 1.37.0 稳定版发布

Rust 1.37.0 stable 有什么?Rust 1.37.0 的亮点包括通过类型别名引用枚举量、内置 cargo vendor、对宏使用未命名的 const、配置文件引导的优化、Cargo 中的 default-run 和枚举上的 #[repr(align(N))] 。 通过类型别名引用枚举量 在 Rust 1.37.0,可以通过类型别名引用枚举量。例如: type ByteOption = Option; fn increment_or_zero(x: ByteOption) -> u8 { match x { ByteOption::Some(y) => y + 1, ByteOption::None => 0, } } 要实现它,Self 充当类型别名。在 Rust...阅读全文

博文 2019-08-17 21:17:23 debian.cn

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

Shuttleworth,请你不要让 Mir 死亡。(我理解在桌面端这可能是非常困难或许无法实现的,但是如果你未来想要进一步布局物联网,你就会发现它是非常实用的。) 随后 Shuttleworth 的回复并不令人感到愉快: Martin Kozub,我们拥有大量使用 Mir 作为合成器的物联网项目,因此代码将会接受更新。我也非常赞同,它是非常高效、简洁和强悍的图形合成引擎,聪明的人都非常的喜欢。 然而我由衷的讨厌 Mir 的存在,因为这是一款非常容易产生分歧的软件。就像是气候化或者枪支管理一样,它会成不合理的策略话题。无论你站在哪一方都释放出种族拥护的信号。在社区中部分软件的对立已经成了非常严重的问题,有些人会选择站在对立面怀着抱怨和讨厌的态度,而另一些人则站在了同一阵营,甘愿投入时间和精力并不断让软件得...阅读全文

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

Kubernetes常用命令大全(持续更新)

分析错误)对控制器和服务,node同样有效 kubectl describe pods xxxxpodsname --namespace=xxxnamespace 其他控制器类似吧,就是kubectl get 控制器 控制器具体名称 查看pod日志 kubectl logs $POD_NAME 查看pod量 kubectl exec my-nginx-5j8ok -- printenv | grep SERVICE kubectl get cs #### 集群健康情况 kubectl cluster-info #### 集群核心组件运行情况 kubectl get namespaces #### 表空间名 kubectl version #### 版本 kubectl api...阅读全文

博文 2020-03-13 12:35:13 debian.cn