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

Debian 环境中安装git服务器 Gogs(下)

$GOPATH/src/github.com/gogits/gogs go build 确保你没有遇到错误。 现在使用下面的命令运行 Gogs Go Git 服务器。 ./gogs web 此命令将会默认运行 Gogs 在 3000 端口上。 打开网页浏览器,键入您的 IP 址和端口号,我的是 http://192.168.150.100:3000/ 。 你将会得到与如下的 web 界面, Gogs 已经在您的 Debian 系统上安装完毕。现在返回到您的终端,并且键入 Ctrl + C 中止服务。 步骤 5 - 配置 Gogs Go Git 服务器 本步骤中,我们将为 Gogs 创建惯例配置。 进入 Gogs 安装目录并新建 custom/conf 目录,复制默认的配置文件到 custom 目录,并...阅读全文

博文 2018-03-10 09:52:28 debian.cn

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

、授权。 参考阅读: 详细更新说明:https://dev.mysql.com/doc/relnotes/mysql/8.0/en/news-8-0-11.html 官方发布说明:https://blogs.oracle.com/mysql/announcing-general-availability-of-mysql-80 MySQL 8 正式版的新增功能:https://mysqlserverteam.com/whats-new-in-mysql-8-0-generally-available/ MySQL 8 正式版下载: 下载址...阅读全文

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

Flatpak 1.0正式版发布:Linux 应用沙盒开发里程碑

序创建沙箱并重新启动自己,更多的主安装和更新速度,支持将应用程序标记为EOL(生命周期结束) ,以及一个新的权限验证模型。 Flatpak 1.0可以公开主机的TLS(传输层安全)证书到沙箱应用程序,支持最新的OCI捆绑包规范,允许沙箱应用程序请求访问主机的SSH(Secure Shell)代理,以安全访问Git存储库或远程服务器,并允许应用程序访问蓝牙设备。 此外,通过USB闪存驱动器或本网络安装Flatpak应用程序的P2P安装方法现在默认启用,并且在所有版本中都得到支持。在Flatpak 1.0中实现了一个新的后备X11权限,允许X11访问在X11会话中运行的Flatpaks应用程序。 Flatpak 1.0还引入了一个名为flatpak-spawn的新工具,可用于运行主机命令并从应...阅读全文

博文 2018-08-22 20:26:05 debian.cn

IBM宣布以340亿美元收购RedHat 组建混合云提供商

10月28 日,IBM 宣布收购 Linux 巨头 Red Hat。公告中称,两家公司已达成最终协议,根据该协议,IBM 将以每股 190 美元的现金收购 Red Hat 所有已发行股份,总价值约为 340 亿美元。当下各个公司已经在使用不同的云,然而,研究表明,受当今云市场专有性的阻碍,80% 的业务工作负载尚未转向云。 此次收购将带来一个一流的混合云提供商,在当下多云环境中提供前所未有的安全性和可移植性,让各公司更多将业务上云。 该笔交易加速了 IBM 的高价值业务模式,使 IBM 成为新兴的 1 万亿美元增长市场中排名第一的混合云提供商。 IBM 表示,Red Hat 将作为 IBM 混合云团队独立运营。通过此次收购,IBM 将继续致力于红帽的开放式治理、开源贡献、参与开源社区和开...阅读全文

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

(SARAO),加州大学圣克鲁兹分校开放源码软件研究中心(CROSS)等。 Linux基金会执行董事Jim Zemlin说:"Ceph在帮助企业有效管理高增长和扩展数据存储需求方面有非常丰富的经验,在Linux基金会下,Ceph基金会将能够利用更多资源来帮助完善Ceph生态系统建设。" Ceph联合创始人&Red Hat Ceph首席架构师 Sage Weil说:"Ceph基金会的成立证明了一个多元化的开源社区的力量所在,各方共同联合起来致力于解决数据存储和数据服务的爆炸性增长。" Ceph被世界各的云提供商和企业使用,包括金融机构(Bloomberg,Fidelity),云服务提供商(Rackspace,Linode),学术和政府机构(Massachusetts Open Cloud),电信基础设...阅读全文

Rancher 2.2.2 发布:优化 Kubernetes 集群运维

Windows 节点正式提供生产级别支持的 Kubernetes 版本。 UI 和 API 的性能提升 Rancher v2.2.2 中,UI 和 API 的性格都得到了大幅优化。项目相关的资源 API 调用(特别是 pod)所需的加载时间大幅减短,页面在极短的时间内即可用。 其他的修复或更新 修复了无法为 AWS 中国区域添加节点模板的问题。出于稳定性考虑,暂时移除了项目级别的监控,将在下一个版本中重新添加;集群级别的监控不受此影响。修复了发布目录模板可能因证书错误而失败的问题。修复了用于与独立 Rancher 服务器通信的自签名证书可能过期的情况。修复了 Rancher 配置集群状态在带有前缀补丁的集群中被错误提取的问题。 更新详情可查阅 RancherLabs 的 发布公告 下载址:https...阅读全文

博文 2019-04-22 13:49:38 debian.cn

Kubernetes 1.16.0发布 新版本四大主题

广泛使用一个全局 metrics registry 来注册要公开的 metrics。通过实现 metrics registry,metrics 可以以更透明的方式注册。而在这之前,Kubernetes metrics 被排除在任何稳定性需求之外Volume Extension:新版本有大量和 Volume 及 Volume 修改相关的增强。CSI 规范中对 Volume 调整的支持正在转向 Beta 版,它允许任何 CSI spec Volume plugin 都可以调整大小 其他值得注意的功能更新: 拓扑管理器是一个新的 Kubelet 组件,旨在协调资源分配决策,以提供优化的资源分配IPv4/IPv6 双栈允许将 IPv4 和 IPv6 址分配给 Pods 和服务API Server...阅读全文

博文 2019-09-20 13:28:32 debian.cn

如何在 Debian 上安装 TensorFlow

TensorFlow 是一个端到端开源机器学习平台。它拥有一个包含各种工具、库和社区资源的全面灵活生态系统,可以让研究人员推动机器学习领域的先进技术的发展,并让开发者轻松构建和部署由机器学习提供支持的应用。 TensorFlow可以在系统范围内,Python虚拟环境中,作为Docker容器或与Anaconda一起安装。在本教程中,我们将讲解如何在Debian 10的Python虚拟环境中安装TensorFlow。 虚拟环境使你可以在一台计算机上拥有多个不同的隔离Python环境,并在每个项目的基础上安装模块的特定版本,而不必担心会影响其他项目。 以下内容提供了如何在Debian 10上的Python虚拟环境中安装 TensorFlow。 1、安装Python 3 venv 首先我们要验证...阅读全文

第8个LTS版本 Ubuntu 20.04 将带来哪些新特性?

存驱动、数码相机和 MP3 播放器中使用最为充分,你平时用这些电子产品的时候,多半就使用到了 exFAT 技术。 另一方面,在 19.10 版本中引入的 ZFS 作为根目录的支持会进一步得到改进,但是,它将保持实验状态。 关于 ZFS 的争论近期也因为 Linus Torvalds 的参与而白热化,他在某个论坛上讨论关于内核的相关问题时,提到了 ZFS 并表明了自己的态度,在 Oracle 对 ZFS 的代码进行重新授权以使其能更友好被引入到 Linux 内核主线之前,他不会推荐使用 ZFS,同时,即便抛开许可证的原因,Linus 也觉得 ZFS 的综合性能并不特别强。随后有人公开宣称 Linus 不懂 ZFS。 此外,20.04 其它增强功能包括: GNOME 从 v3.34 升级到...阅读全文

博文 2020-01-27 09:36:30 debian.cn

谷歌开源 Pigweed:用于提升嵌入式开发效率

谷歌于 1 月下旬曾向 USPTO(美国专利及商标局)递交了名为 “Pigweed” 的新商标申请。根据申请内容来看,Pigweed 商标涵盖“计算机操作软件”。当时,人们猜测这是一款新的操作系统商标,但并未有任何相关信息提供。 昨日,谷歌毫无征兆公布并开源了 Pigweed。与之前的猜想不同,这是一个嵌入式库(或模块)的集合。使用 Pigweed 模块可​​以在 32 位微控制器( 即嵌入单电路芯片中的小型计算机 )上实现更快、更可靠的开发。 Pigweed 提供的模块可满足嵌入式开发人员的广泛需求。从整个生命周期来看,Pigweed 从设置,到开发,再到代码提交,都能够有效提高嵌入式开发的效率。谷歌以上述开发过程为轴,围绕这几个方面分别介绍了 Pigweed 的一些模块。 嵌入式空间...阅读全文

博文 2020-03-22 08:35:14 debian.cn

Solus Linux 正在打造“现代化的 Linux 发行版”,不依赖 GNU

Linux”。同时,这一发行版既模块化又针对现代机器进行优化。 更具体说,Serpent 将会是一个“真正现代化的 Linux 发行版”(A Truly Modern Linux Distribution),它将采用发行优先、兼容性更高的设计决策。同时还将把过去十年左右的时间里更明智的设计改进纳入 Linux 发行版设计中: 不再拆分 usrbin整个过程均采用 100% 的 clang 编写(包括内核)musl 作为 libc,依靠编译器优化而不是内联 asmlibc++ 代替 libstdc++LLVM 的 binutils 的变种(lld、as等)混合源/二进制分发从x86_64-generic通用基线转向新的 CPU,包括针对 Intel 和 AMD 的优化程序包管理器中基于功能的订阅(硬...阅读全文

博文 2020-07-12 09:08:23 debian.cn

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

type关键字,那么歧义就会消失: type A[type N] E 此外,使用小括号时产生的歧义似乎不会出现在方括号中。下面是一些使用方括号但不需要额外嵌套小括号的例子: using () using [] func f((T(int)) func f(T[int]) struct{ (T(int)) } struct{ T[int] } interface{ (T(int)) } interface{ T[int] } [](T(int)){} []T[int]{} 为了更好理解以及进行测试,他们表示将开始对原型实现进行修改,让泛型能使用小括号或方括号(注意不能同时混用,只能使用其中一种)。这些修改将首先提交到 dev.go2go 分支,最终会出现在 Go playground 上...阅读全文

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

Kubernetes调度算法浅析

在真正的生产环境中,如何合理的分配服务器资源、提高利用率、让整个集群运行的更加稳定使得 k8s-scheduler 这个角色在集群中的位愈发重要。 kube-scheduler的预选(过滤)和精选(打分) api-server会将创建pod的请求发送给kube-scheduler,并且将pod信息记录在etcd数据库中。之后kube-scheduler会根据预选(过滤)规则,首先过滤掉一部分node节点中的pod,没有被过滤掉的pod可以看做是可以被调度的pod,之后再通过更加严格的规则给剩下的pod打分,这一步也叫作优选。打分最高的pod可以看做被优先分配到pod任务。 调度流程简介 创建pod的命令被api-server的api接口接收到。api-server将pod信息存储在...阅读全文

博文 2020-12-20 11:01:10 debian.cn

Linux 进程 PID 编号最大为多少

默认值如下: 可见,虽然是64位系统,但默认也设置了32768,确实如手册中描述一致。通过: echo value > /proc/sys/kernel/pid_max 手动修改,可以设置预期的最大pid数值(2^22以下) 附Linux内核源码址: 官网链接:https://www.kernel.org/ git: https://git.kernel.org/ 镜像:https://mirrors.edge.kernel.org/pub/...阅读全文

博文 2021-01-12 11:47:15 debian.cn

Raspbian 国内软件源列表

花了些时间整理了目前最新的树莓派中国大陆区的软件源,记下来,希望对大家有帮助。 中国科学技术大学 Raspbian http://mirrors.ustc.edu.cn/raspbian/raspbian/ 阿里云 Raspbian http://mirrors.aliyun.com/raspbian/raspbian/ 清华大学 Raspbian http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ 华中科技大学 Raspbian http://mirrors.hustunique.com/raspbian/raspbian/ Arch Linux ARM http://mirrors.hustunique.com...阅读全文

10年来最重要创新 ARM发布AMRv9指令集:IPC性能大涨30%

有望提升40%以上。除了CPU性能,ARMv9还非常重视整体的性能提升,包括降低内存延迟(从150ns降至90ns)、频率提升(从2.6GHz到3.3GHz)内存带宽(从20GB/s到60GB/s)、缓存等。ARMv9这次与性能有关的一个重要升级是SVE2指令集,SVE最早是ARM与富士通合作的浮点性能扩展,日本最强也是TOP500最强超算富岳就使用了SVE指令集,现在推出的是第二代SVE浮点指令了。相比SVE的128位矢量,SVE2可以支持多倍128位运算,最多2048位,因此SVE2可以增强ML机器学习、DSP信号处理能力,提升了未来5G、虚拟现实、增强现实以及CPU本运行ML的性能,同时ARM未来还会继续提升AI人工智能性能。除了CPU之外,这次还简单提到了未来的Mali GPU...阅读全文

提前尝鲜,从 Debian 10 升级到 Debian 11

deb http://ftp.debian.org/debian bullseye-backports main contrib non-free 按 Ctrl + O 保存文件,按 Ctrl + X 退出 nano。 更新一次系统仓库列表,以验证仓库的添加情况。 sudo apt update 如果上面的命令没有出现任何错误,那么你已经成功添加了 bullseye 仓库。 现在,通过运行下面的命令开始升级过程。基本安装的下载大小约为 1.2GB。这可能会根据你的系统配置而有所不同。 sudo apt full-upgrade 这个命令需要时间。但不要让系统无人看管。因为升级过程中需要各种输入。 完成后,你可以用以下命令重启系统。 systemctl reboot 重启后,运行以下命令,以确保...阅读全文

博文 2021-08-16 12:16:21 Debian升级

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

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

谷歌如何为数十万台设备更新内部 Linux 发行版 - OSCHINA

程都不会被新版本软件包破坏。 谷歌表示,Goobuntu 最后一个版本基于 Ubuntu 14.04 LTS(代号 Trusty)。Rodete 的开发始于 2015 年,2017 年,谷歌开始将机器迁移到 Rodete,并在 2018 年底完成所有迁移。2019 年初关闭了最后一批运行 Goobuntu 的机器。2020 年中,Rodete 完全跟上了 Debian Bullseye 的发布时间。未来谷歌计划与上游 Debian 更紧密合作,并贡献更多的内部补丁来维护 Debian 软件包生态。...阅读全文

博文 2022-07-31 19:13:41 中文开源技术交流社区

Kafka 3.3 使用 KRaft 共识协议替代 ZooKeeper

引入的新的仲裁控制器确保元数据在整个仲裁中可以被准确复制。活动控制器将元数据存储在事件源日志主题中,仲裁中的其他控制器对活动控制器创建的事件做出响应。事件日志定期进行快照,确保日志不会无限增长。与基于 ZooKeeper 的控制器不同,如果出现了问题,仲裁控制器不需要从 ZooKeeper 加载状态,因为集群的内部状态已经分布在元数据主题中。这大大减少了不可用时间窗口,缩短了系统最坏情况恢复时间。下图显示了使用新的仲裁控制器比使用 ZooKeeper 更快关闭具有 200 万个分区的 Kafka 集群。​新的 KRaft 共识算法和仲裁控制器使得 Kafka 集群可以扩展到数百万个分区,不仅提升了稳定性,让 Kafka 变得更容易监控、管理和支持,而且让整个系统可以有一个单一的安全模型,使...阅读全文

2022年云原生服务网格展露的五大趋势

近日,OSCHINA 和 Gitee 联合发布了《2022 中国开源开发者报告》。其中,云原生社区创始人宋净超在报告中对开源云原生服务网格领域进行了深入解读,以下为主要观点。2022 云原生服务网格五大趋势2022 年,云原生展露了一些趋势。因我更多关注服务网格领域,在此就该方向谈谈我的观点,欢迎其他专家交流。一是 零信任的云原生安全备受关注。CNCF 在《云原生安全白皮书》中指出,“我们需要在应用安全生命周期中采用更自动化和安全的架构设计(如零信任)”,这表明云原生安全越来越受重视。零信任安全意味着默认情况下,网络内外都不信任任何人,并且要对试图访问网络资源的每一个人进行验证。部署服务网格有助于缩小云原生部署的攻击面,并为构建零信任应用网络提供关键框架。二是 API 网关与服务网格融合...阅读全文

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

Netty+Nacos+Disruptor自研企业级API网关 download:https://www.51xuebc.com/thread-566-1-1.html React18+TS+NestJS+GraphQL全栈开发示例 全栈开发是指一位开发人员可以熟练掌握前端、后端和数据库等多个领域的技术,能够完整开发一个应用程序。在本文中,我们将介绍如何使用React18+TS+NestJS+GraphQL这个技术组合来进行全栈开发。 技术选型 在开始开发之前,我们需要选择合适的技术栈。以下是我们所采用的技术: React 18:React18是React框架最新版本,它具有更好的性能、更好的可访问性、更好的代码拆分等特点,可以提高开发效率和应用性能...阅读全文

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

个人信息保护新规将出台 消费者被短信轰炸将成为历史

加密项目,预计8月1日起,商家将无法获得订单收获信息中用户的手机号、姓名、收货址等信息,这些信息将以加密字符串的形式输出,导出数据也逐步会变成密文。 海豚智库创始人李成东告诉记者,客户信息加密后,商户和快递公司均将无法获取到客户相关信息。这意味着,“双十一”或者“618”前,商户疯狂对客户短信轰炸的局面不会再出现了。 一位TMT领域的专家表示,打击信息泄露、保护用户信息安全是当下互联网平台治理的重点方向。电商平台与其坐等政策干预,还不如主动求变,提前做好准备。...阅读全文

Angular 6.0 即将发布 承诺更小更快更易用

Material 和其他解决方案的最新版本将一起发布,以便开发人员更好访问最新版本的 Angular。 根据 Fluin 的说法,团队将重点放在缩小尺寸上,Angular 6 中的捆绑包将更小 ,以便为用户提供更快的体验。 团队正在通过更新到最新版本的 Webpack 来实现这一点。 此外,最新版本将引入一种新的方式来连接应用程序和服务中的模块。 例如,团队正在增加服务引用模块的能力,这样如果服务没有被使用,它就会消失,从而简化包的大小。 版本 6 也更新为 RxJS,即,使用 Observables 进行反应式编程的库 。 根据 Angular 的说法,这使得编写异步或基于回调的代码更容易。 在易于使用的一方面,该团队正在向 CLI 界面介绍更新 。 这个新命令将自动让用户保持最新状态并更新正在使用的...阅读全文

博文 2018-04-24 09:41:33 debian.cn

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

将发生的资源短缺提供早期预警,从而实现更积极主动、细致的响应。 Oomd:https://facebookmicrosites.github.io/oomd/ Oomd 是一个用户空间 OOM(内存不足)进程杀手,可以更好了解系统上运行的进程的上下文和优先级。它允许配置对 OOM 条件的响应,例如暂停或终止非必需项、重新分配系统中的内存等操作。 详情信息请查看发布公告,以及对应项目的开源主页。...阅读全文

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

当 Atom 遇见 VSCode:微软将对 GitHub 做的 6 件事

生态 微软 CEO Nadella 谈到了微软在过去几年中如何成为 GitHub 上最活跃的组织,提交了超过 200 万次的项目 commits 和 updates ,并表示微软正在全身心投入开源。 至于 GitHub 将如何发展成为一家微软公司,Nadella 主要关注三大策略:在开发周期的各个阶段为开发者赋能,加速 GitHub 用于企业开发,并利用该平台让更多用户使用微软的开发工具和服务。 2、保持 GitHub 的开放性 GitHub 创始人 Chris Wanstrath 表示,无论使用的是哪种编程语言、平台、操作系统或编码设备,GitHub 都会是面向所有开发者的开放平台。像之前的 LinkedIn 和 Minecraft 一样,Nadella 时期的微软会让被收购的公司保持其...阅读全文

博文 2018-06-06 11:08:17 debian.cn

Debian 上安装搭建 Shadowsocks 服务

安装,但使用 deb 包安装会自动生成开启启动的脚步在 /etc/init.d 目录下,采用哪种方式安装就因人而异了 接下来就需要编译配置文件 $ vi /etc/shadowsocks-libev/config.json 然后将配置文件改为 { "server":"0.0.0.0", "server_port":443, "password":"yourpassword", "method":"aes-256-cfb", "timeout":60 } 其中 server:主机域名或者IP址,尽量填 0.0.0.0 来代表了本机 ip server_port:服务器监听端口 password:自定义密码 method:加密方式 默认为table,其他有rc4,rc4-md5,aes-128...阅读全文

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

提问的智慧(精简版)

用替换一幅图片的色码(color table)成自己选定的色码,我现在知道的唯一方法是编辑每个色码区块(table slot), 但却无法从某绘图程序的颜色选择器取得十六进制的 RGB 值。问题解决后,加个简短的补充说明补充说明不必很长或是很深入。简单的一句 你好,原来是网线出了问题!谢谢大家。 比什么也不说要来的好。事实上,除非结论真的很有技术含量,一句话就够了:说明问题是怎样解决的,但大可不必将解决问题的过程复述一遍。对于有深度的问题,张贴调试记录的摘要是有帮助的。但请记住,先描述问题的最终状态,说明是什么解决了问题,在此之后才指明踩坑的方。在即时聊天软件里问问题为了避免重复答疑,你应该在群里询问常见问题。由于部分聊天软件没有话题串的功能(或着实现很差),同时群里还可能有多个同时讨论的...阅读全文

博文 2023-10-07 15:02:42 infras

深入了解Docker背后的namespace技术

Docker基于mamespace、cgroups、chroot等技术来构建容器,不是一个系统调用就能搞定,容器是一个用户态的概念。本文中Docker软件工程师Michael Crosby深入探讨了Docker对namespace技术的应用。 相信你在很多方都看到过“Docker基于mamespace、cgroups、chroot等技术来构建容器”的说法,但你有没有想过为何容器的构建需要这些技术? 为什么不是一个简单的系统调用就可以搞定?原因在于Linux内核中并不存在“linux container”这个概念,容器是一个用户态的概念。 Docker软件工程师Michael Crosby将撰写一些列博客,深入到Docker运行的背后,探索在 docker run这段代码的背后发生了什么...阅读全文

博文 2015-05-17 10:03:00 debian.cn

分布式任务调度平台 XXL

期性自动注册任务, 调度中心将会自动发现注册的任务并触发执行。同时,也支持手动录入执行器址; 6、弹性扩容缩容:一旦有新执行器机器上线或者下线,下次调度时将会重新分配任务; 7、路由策略:执行器集群部署时提供丰富的路由策略,包括:第一个、最后一个、轮询、随机、一致性 HASH、最不经常使用、最近最久未使用、故障转移、忙碌转移等; 8、故障转移:任务路由策略选择” 故障转移” 情况下,如果执行器集群中某一台机器故障,将会自动 Failover 切换到一台正常的执行器发送调度请求。 9、阻塞处理策略:调度过于密集执行器来不及处理时的处理策略,策略包括:单机串行(默认)、丢弃后续调度、覆盖之前调度; 10、任务超时控制:支持自定义任务超时时间,任务运行超时将会主动中断任务; 11、任务失败重试...阅读全文

博文 2018-11-05 21:47:15 JOB 2.0.0 发布

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

废话不多说,先来看看 Go 2.0 有哪些值得关注的内容: 最大程度保持对 1.x 的兼容,以避免分裂 Go 语言生态系统 采用增量升级的方式,而非单独发布重大更新版本 实施新的提案评估流程,以评估尚未解决且被标记为提案的 issue 将会在 Go 1.13 版本中选择 Go 2 部分的提案 背景 早在2017年的 GopherCon 大会上,Russ Cox(Go 核心开发团队的技术 leader)就已经正式开始思考 Go 的下一个大版本(相关文章)。当时官方非正式将它称为 Go 2,但我们知道,所谓的 Go 2.0 并非一个单独的重大更新版本,而是通过“增量更新(incremental)”的方式以逐渐抵达 "Go 2.0"。所以本文对这个未来版本的称号 —— 也暂且用 Go 2 来描...阅读全文

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

Connect 项目,这个项目的边缘设备是道道的物理设备,并且从硬件到软件全部是自己定制的。关于 Open Connect 的详细介绍,以及使用的技术栈可以看 Netflix 的分享,还有他们如何做 CDN 监控的。 主要功能 回到 Spinnaker,他主要管理 Netflix 的云服务,并不管理 OpenConnect 相关的设备和服务。Spinnaker 是基于云的 CD 平台,提供快速、可靠、稳定的软件变更服务。主要包含两类功能:集群管理(Cluster management)和部署管理(deployment management)。 1. 集群管理 集群管理主要用于管理云资源,Spinnaker 所说的“云”可以理解成 AWS,即主要是 IaaS 的资源,比如 OpenStack...阅读全文

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

Golang 中的 channel 通道详解

,dataqsiz 表示缓冲区的大小,对于无缓冲区通道而言 dataqsiz 的值为 0。如果 qcount 和 dataqsiz 的值相同,则表示缓冲区用完了。__buf __缓冲区表示的是一个环形队列 。其中 **sendx 表示下一个发送的址,recvx **表示下一个接收的址。elemtype 是channel的中存放的具体类型,每一个通道都是一个具体类型的导管,也就是声明channel的时候需要为其指定元素类型。recvq 表示等待接收的 sudog 列表,一个接收语句执行时,如果缓冲区没有数据而且当前没有别的发送者在等待,那么执行者 goroutine 会被挂起,并且将对应的 sudog 对象放到 recvq 中。sendq 类似于 recvq,一个发送语句执行时,如果缓冲区已经满了,而且没...阅读全文

字节跳动开源微服务中间件 CloudWeGo - OSCHINA

9 月 8 日,字节跳动正式宣布开源 CloudWeGo。这是一套以 Go 语言为核心、专注于微服务通信与治理的中间件集合,具有高性能、可扩展、高可靠的特点。 据介绍,作为项目维护方,字节跳动基础架构团队已推进项目以 CloudWeGo 开源库为主进行迭代,未来团队将坚持内外维护一套代码,统一迭代演进,并逐步分享更多内部微服务最佳实践。 项目址:https://github.com/cloudwego 项目官网:www.cloudwego.io CloudWeGo 第一批开源了四个项目,以 RPC 框架 Kitex 和网络库 Netpoll 为主。 Kitex Kitex 是一个 Golang 微服务 RPC 框架,具有高性能、强可扩展的特点。 字节跳动使用 Golang 作为主要业务开...阅读全文

博文 2021-09-09 13:56:42 中文开源技术交流社区

五款流行开源的 HIDS 系统简单介绍

复杂的。一旦它的安装,你需要启动数据库,你可以轻松开始你的支票。如果您需要一个集成良好的Linux入侵检测系统,则开源Triptrip可能是您的最佳选择,但它有一些限制。例如,它不会实时通知您,因此您需要自己查看日志。您还需要在安装操作系统后进行安装,以使其在安装之前不会检测到恶意活动。以下屏幕快照除了其他指示之外,还说明了每个规则和安全级别。​图23. WazuhWazuh是另一个用于完整性监视,事件响应和合规性的开源监视解决方案。撰写本文时,最新版本为3.8.2。如前所述,您可能会在网上看到Wazuh与OSSEC的比较,但这不仅是因为相似的目的,而且是一个共同的起源。Wazuh最初是OSSEC的分支,并且如官方文档所示,它的构建具有更高的可靠性和可伸缩性。除了执行日志分析,完整性检查...阅读全文

博文 2023-01-26 11:07:43 joseph

深入理解Golang之context

:= srv.newConn(rw) c.setState(c.rwc, StateNew) // before Serve can return go c.serve(ctx) } } 2、建立连接之后会基于传入的context创建一个valueCtx用于存储本址信息,之后在此基础上又创建了一个cancelCtx,然后开始从当前连接中读取网络请求,每当读取到一个请求则会将该cancelCtx传入,用以传递取消信号。一旦连接断开,即可发送取消信号,取消所有进行中的网络请求。func (c *conn) serve(ctx context.Context) { c.remoteAddr = c.rwc.RemoteAddr().String() ctx = context.WithValue(ctx...阅读全文

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

2017 年会是 Serverless 爆发之年吗

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

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

Apache Kafka发布 3.0 正式版

生成在 3.0 和KIP-730 中,Kafka 控制器现在完全接管了生成 Kafka 生产者 ID 的责任。控制器在 ZK 和 KRaft 模式下都这样做。这让我们更接近桥接版本,这将允许用户从使用 ZK 的 Kafka 部署过渡到使用 KRaft 的新部署。KIP-679:Producer 将默认启用最强的交付保证从 3.0 开始,Kafka 生产者默认开启幂等性和所有副本的交付确认。这使得默认情况下记录交付保证更强。KIP-735:增加默认消费者会话超时Kafka Consumer 的配置属性的默认值session.timeout.ms从 10 秒增加到 45 秒。这将允许消费者在默认情况下更好适应暂时的网络故障,并在消费者似乎只是暂时离开组时避免连续重新平衡。KIP-709:扩展...阅读全文

博文 2021-09-26 14:13:03 joseph

Cortex: 高可用和水平扩展Prometheus监控系统

Prometheus已成为cloud-native世界中的默认监控应用程序和系统。对于真是使用案例,Prometheus应该是高可用的,这是有挑战的。一旦在高可用性模式下运行Prometheus,就会遇到很多问题,例如数据重复,为重复数据实现single pane等。为了解决此问题,Cortex诞生了。Cortex是一个CNCF sandbox project,旨在为使用Prometheus 收集的指标提供长期存储和全局指标视图。首先让我们看一下Cortex的主要目标,然后看一下它为Prometheus解决的一些问题。水平可伸缩性– Cortex可以分成多个微服务,每个微服务都可以独立水平伸缩。例如,如果许多Prometheus实例正在向Cortex发送数据,则可以扩展Ingester微...阅读全文

博文 2021-10-09 17:00:22 知乎

如何读懂火焰图?+ 实例讲解程序性能优化 - xuxh120

图工具就能生成 SVG 图片。 上面图片中,最顶层的函数g()占用 CPU 时间最多。d()的宽度最大,但是它直接耗用 CPU 的部分很少。b()和c()没有直接消耗 CPU。因此,如果要调查性能问题,首先应该调查g(),其次是i()。 另外,从图中可知a()有两个分支b()和h(),这表明a()里面可能有一个条件语句,而b()分支消耗的 CPU 大大高于h()。 五、局限 两种情况下,无法画出火焰图,需要修正系统行为。 (1)调用栈不完整 当调用栈过深时,某些系统只返回前面的一部分(比如前10层)。 (2)函数名缺失 有些函数没有名字,编译器只用内存址来表示(比如匿名函数)。 六、Node 应用的火焰图 Node 应用的火焰图就是对 Node 进程进行性能抽样,与其他应用的操作是一样的...阅读全文

博文 2022-03-11 10:05:09 博客园

红帽 2017 峰会 第三天回顾:自动化的未来

为期三天的第13届红帽峰会已在波士顿当时间5月4日闭幕。除了前两日报道的OpenShift与企业数字转型的动向,本次峰会还有另外两个产品动向值得注意。 1、以Ansible为核心的全栈自动化 红帽管理平台相关负责人已经明确在一次媒体沟通会上表示,Ansible已经被定位作为红帽自动化工具体系的中心。红帽其他的自动化工具—— 跨云管理产品CloudForms 自动打安全补丁产品Satellite 自动化运维工具Puppet API管理工具3scale 上述工具仍将继续履行各自的职责,同时全面与Ansible集成。非红帽的其他自动化工具——比如Amazon Lambda——也优先以Ansible作为与红帽管理平台的接入点。也就是说,未来在Ansible上(尤其是Ansible Tower)将...阅读全文

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

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

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

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

高性能缓存服务器 Nuster

Nuster 是一个基于 HAProxy 的高性能缓存服务器。Nuster 完全兼容 HAProxy,并且利用 HAProxy 的 ACL 功能来提供非常细致的缓存规则,比如 请求址为某某时缓存 请求参数中的 X 为 Y 时缓存 响应头中的 X 为 Y 时缓存 请求速率超过多少时缓存 等等 Nuster 性能评测 非常快, 单进程模式下是 nginx 的 3 倍,多进程下 nginx 的 2 倍,varnish 的 3 倍。详见benchmark 安装 Nuster git clone https://github.com/jiangwenyuan/nuster.git cd nuster make TARGET=linux2628 make install 详情请参照 HAProxy...阅读全文

博文 2017-12-15 22:17:31 debian.cn

Debian Jessie、Stretch 下安装配置 PHP7.2

://mirror.xtom.com.hk/sury/php/apt.gpg 注意:这里我们使用了 Sury 的一个镜像网站,以便快速访问。Sury 镜像的原始址为: https://packages.sury.org/php/ ,在美国访问比较慢。 安装 apt-transport-https apt-get install apt-transport-https 添加 sury 软件镜像源 echo "deb https://mirror.xtom.com.hk/sury/php/ $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/php.list 更新软件源缓存: apt-get update 安装软件 安装 PHP7.2: apt install -y...阅读全文

博文 2017-12-16 14:16:25 debian.cn

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

。 2.托管和部署: PHP 应用程序可以在包括 Nginx 和 Apache 以及 Windows 和 Linux 平台在内的任何服务器上运行,这使得部署过程变得更容易,而 Node.js,则需要具有 SSH 访问权限的虚拟服务器。因此,在没有任何控制台命令和 Secure Shell(SSH)知识的情况下,用 PHP 部署小型企业和个人应用会更好。 3.外部依赖: Node.js 依赖关系较少,用几行代码就可以设置一个 Web 服务器。但运行 PHP 应用程序,就需要外部服务器软件。用 Node.js 的开发人员只需要 NPM(节点包管理器)就可以下载 Node 模块,这些模块可以轻松集成到应用程序中,提供额外的功能。 4. CPU 扩展任务: Node.js 可能在高吞吐量方面表现优异...阅读全文

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

Linux 中使用 Fio 测评硬盘性能

Fio(Flexible I/O Tester) 是一款由 Jens Axboe 开发的用于测评和压力/硬件验证的自由开源的软件。它支持 19 种不同类型的 I/O 引擎 (sync、mmap、libaio、posixaio、SG v3、splice、null、network、 syslet、guasi、solarisaio,以及更多), I/O 优先级(针对较新的 Linux 内核),I/O 速度,fork 的任务或线程任务等等。它能够在块设备和文件上工作。 Fio 接受一种非常简单易于理解的文本格式的任务描述。软件默认包含了几个示例任务文件。 Fio 展示了所有类型的 I/O 性能信息,包括完整的 IO 延迟和百分比。 它被广泛的应用在非常多的方,包括测评、QA,以及验证用途。它支持...阅读全文

博文 2018-08-15 19:18:24 debian.cn

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

许多人认为10月5日是 Linux 系统的周年纪念日,因为这是 Linux 在1991年首次对外公布的时间。不过,你可能不知道的是,早在1991年8月25日,当年还是大学生的 Linus Torvalds 就向 comp.os.minix 新闻组的人透露了由于“业余爱好”他正在研究操作系统的消息。因此,该时间也被许多爱好者视为 Linux 的真正诞生日期。 为纪念 Linux 27 岁诞辰,OMG Ubuntu 列出了 27 个与 Linux 和 Linus Torvalds 相关的有趣事实。 1、截至 2018 年,Linux 内核已有 20,323,379 行代码。尽管近期有所减少,但庞大的代码量意味着 Linux 仍然是球上(单个)最大的开源项目。 2、Linux 差点不叫这个名字...阅读全文

Stackstorm 入门介绍

一句话概况:stackstorm是一个事件驱动的自动化引擎。StackStorm 是一坨功能强大的开源自动化平台,可将通过使用插件封装API的方式,将所有应用程序,服务和工作流程连接起来。这里的所有包括了目前我们常用Gitlab、Zabbix、ELK、AWS 等服务。 Stackstorm 具有很好的可扩展性,灵活性,完美支持 ChatOps 和全操作的API实现。通过Stackstorm 可以将您现有的基础架构和应用程序环境联系在一起,以便您可以更轻松自动化操作该环境。它特别专注于针对事件采取行动。 便利的故障排除 - 触发由Nagios,Sensu,New Relic和其他监控系统捕获的系统故障,在物理节点、OpenStack或Amazon实例和应用程序组件上运行一系列诊断检查,并将...阅读全文

Systemd 及 Service 文件含义解析

统服务而言,比较重要的就是其中的 service 文件。我们先来看一个httpd.service文件,所在目录: /usr/lib/systemd/system/。其实单元文件可以从两个方进行加载,优先级从低到高分别是: * /usr/lib/systemd/system/ :软件包安装的单元 * /etc/systemd/system/ :系统管理员安装的单元 Httpd.service 文件样例: ``` [Unit] Description=The Apache HTTP Server After=network.target remote-fs.targetnss-lookup.target Documentation=man:httpd(8) Documentation...阅读全文

博文 2021-02-17 10:02:50 joseph