InfraPub 为您找到相关结果 712

一位五年工作经验架构师的感悟

多,有 100 多个系统,很多业务概念。 老大说:不要好高骛远,我建议你结当前的工,一步步学习,以点带面。 刚进公司的时候,我不是很有自信,因为知道自己技术可能比很多大牛差距很大。同时,自己也是一个不太会表达的人(原来的老大也说过,我的软能力不行),整体上在初期感觉相对较闷。 日常工就会把自己占得很满,怎么去学习?我的技术不行,就想去学代码,框架,支付宝的代码全部是开源的,所以我可以很简单通过 eclipse 直接查看框架的源码,渐渐的,比很多人都了解框架,了解技术。我还会去狂公司的论坛,公司的 doc,这上面有框架设计相关的内容。所以,很多时候机会是很多的,关键是你想不想去去。 所以,不要好高骛远,脚踏实地,时刻保持饥饿感,积少成多。 开放心态,视野决定格局 12 年妻子怀孕,于是转...阅读全文

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

树莓派64位系统Debian 9先行测评:性能最高提升30倍

说明 文件随机读写 不支持 21.8336 无 互斥锁性能 0.0231s 0.0186s 1.24倍 Debain 9 文件系统采用了三星与华为力开发的f2fs,针对mmc和emmc还有tf存储进行了优化,除了大大提升了性能之外,还增加了TF卡的使用寿命,提供了意外断电文件系统的保护,大大避免意外断电导致的文件系统崩溃的情况。 其中由于TF卡的细微差异,导致文件连续读写出现了反转,实际上通过测试文件连续读写的性能方面,f2fs更加优化,超越ext4很多倍。 总体上,64位的系统提供了更好的使用体验,曾经抱怨树莓派跑opencv性能不佳的朋友应该是看到希望了! 以上测试并非使用官方系统,但能够让大家看到软硬件匹配64位之后,树莓派性能上的提升潜力。为树莓派爱好者,一起期待官方发布64位系...阅读全文

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

使用 Go 语言的三个原因

,Go 超越了那些暴露操系统的多进程或多线程并行模型的语言。goroutines 允许程序员避开复杂的回调,而语言运行时确保有足够的线程来保持你的内核的活跃。 总结 我给朋友推荐 Go 有三个原因:安全性、生产力和并发性。有些语言可以涵盖一个也有可能是两个方面,但是这三个方面的结使得 Go 成为主流程序员的绝佳选择。 原文: https://dave.cheney.net/2017/03/20/why-go 者:Dave Cheney 译者:geekpi 校对:jasminepeng...阅读全文

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

Docker更名Moby,也是无奈之举

、containerd、InfraKit以及最新刚刚发布的LinuxKit)当中拆分出来,仍然导致人们很难对容器技术及命令行中的奥秘进行深入探索,更遑论弄清各活动部件间的彼此关联。 对于Moby的误解,部分源自该公司决定直接将访问者重新定向至Docker客户端的GitHub库(用于保留Docker客户端的开源代码),但却未对此举出任何解释。 GitHub连接问题的出现进一步扩大了对Docker项目凭空“消失”的误会。Docker公司技术人员PatrickChanezon表示,GitHub更换代理商造成了一系列技术性问题,可能需要GitHub方面的支持人员介入并加以解决。 Docker公司联创始人兼CTO SolomonHykes在他的pull请求中对目前的状况给出了非常简单的答案:“Docker公司正在将所...阅读全文

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

Debian 环境下安装配置 Gitlab

GitLab是一个利用Ruby on Rails开发的开源应用程序,实现一个自托管的Git项目仓库,可通过Web界面进行访问公开的或者私人项目。 它拥有与GitHub类似的功能,能够浏览源代码,管理缺陷和注释。可以管理团队对仓库的访问,它非常易于浏览提交过的版本并提供一个文件历史库。 前言 公司目前的开发架构中,使用了gitlab来统一管理上线发布代码的操。鉴于是之前的前辈搭建的,所以打算自己手动安装一次,来熟悉相关的配置。 安装 中文版gitlab网站:https://www.gitlab.com.cn/installation/ 英文版gitlab网站:https://about.gitlab.com/downloads/ 选择对应的操系统 我这里选择 Debian 9 版本,因为...阅读全文

博文 2017-12-22 19:42:42 debian.cn

Go 泛型草案更新,明年8月Go 1.17引入

为约束(constraints)使用时,可被允许包含类型列表。在旧版的设计草案中,类型列表属于 contracts 的功能。更复杂的情况将使用参数化的 interface 类型. 为了帮助决定如何进一步完善设计草案,团队还发布了翻译工具。此工具可用于类型检查,以及运行使用设计草案中描述的泛型版本编写的代码。它通过将泛型代码翻译为普通的 Go 代码来工。此翻译过程有一定的局限性,不过团队主要是希望借此让大家对 Go 泛型的整体有所了解。如果泛型最终被吸纳,它们的实际实现可能会有所不同。 此工具已在 Go playground 的变体上提供,这个 playground 的工方式与常见的 Go playground 相同,不过前者支持泛型代码。团队希望此工具能为 Go 用户提供尝试使用泛型的...阅读全文

博文 2020-06-23 07:40:34 debian.cn

Debian 公布关于支持非 systemd 初始化系统的投票结果

策略要求一致,并且通常建议软件包不应依赖于其他软件包的实验性或不受支持的(在 Debian 中)功能。软件包可能会包括对 systemd 以外的其他 init 系统的支持,并且可能包括其使用的任何 systemd 特定接口的替代物。维护人员使用其常规的程序来确定要引入的补丁。Debian 致力于使用对 init 系统做出不同选择的衍生产品。和我们与下游的所有交互一样,相关的维护人员将与下游一起工,以找出哪些变化适加入到 Debian 中,哪些变化应该完全保留在派生工具中。...阅读全文

博文 2019-12-29 13:53:51 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

即将发布的 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

Debian 系统如何配置 iptables

iptables在Linux发行版本如Centos、Debian、Ubuntu、Redhat等的配置内容基本一致,但是配置方式有所不同。由于工日常用的是Centos 6.x,它的配置较简单。下面对Debian上配置iptables做一个说明。 配置步骤 使用用户名/密码登录系统 root@localhost:~# 安装iptables root@localhost:~# apt-get install iptables 安装成功后查看iptables端口开放情况 root@localhost:~# iptables -L Chain INPUT (policy ACCEPT) target prot opt source destination Chain FORWARD (policy...阅读全文

博文 2018-08-08 16:35:38 debian.cn

WireGuard简明介绍及使用指引

WireGuard 是 Jason A. Donenfeld 开发的开源VPN协议。目前支持Linux, macOS, Android 以及 OpenWrt。iOS 和 Windows 官方客户端还在开发,但第三方 Windows 客户端已经出现。WireGuard 被视为下一代VPN协议,用来替代OpenVPN,IPSec等VPN协议。 WireGuard 协议为 Linux 内核模块运行,所以效率极高。使用了最先进的加密技术(利用Curve25519进行密钥交换,ChaCha20和Poly1305用于数据认证,BLAKE2用于散列),安全性毋庸置疑。WireGuard 是为嵌入式设备开发的,支持IP地址漫游,也就是网络断开再连,对它不会有影响。WireGuard 使用 UDP 协议传...阅读全文

博文 2019-11-28 12:44:00 debian.cn

25岁的Flash正式被弃用

其系统。” Adobe于2017年首次宣布了停止使用Flash的计划。“多年来,HTML5,WebGL和WebAssembly等开放标准已经不断成熟,可以为Flash内容的可行替代方案。” 如果电脑上还有Flash,可以删了。多年来,由于众多安全漏洞使Mac和PC用户面临恶意软件和其他风险,Flash声名狼借,迫使微软和苹果这样的供应商不懈地努力以应对安全修补程序。 乔布斯算是反Flash的先锋人物了 在“反Flash”这件事上,苹果公司的联创始人兼前首席执行官乔布斯(Steve Jobs)算是先锋人物,在2010年的公开信中就批评Adobe的软件可靠性,安全性和性能不佳。乔布斯还说,苹果“不能由第三方决定是否以及何时将我们的新增功能提供给我们的开发人员。” 因为这天早有预期,所以...阅读全文

博文 2021-01-13 08:49:17 debian.cn

Web前端知识体系精简

页面就是由一堆html标签组成的代码,,人可以通过可视化的方式来判断页面上哪些内容是重点,而机器做不到。 但搜索引擎会根据标签的含义来判断内容的权重,因此,在适的位置使用恰当的标签,使整个页面的语义明确,结构清晰,搜索引擎才能正确识别页面中的重要内容,并予以较高的权值。比如h1~h6这几个标签在SEO中的权值非常高,用它们页面的标题就是一个简单的SEO优化。 2、页面渲染机制 页面渲染就是浏览器的渲染引擎将html代码根据CSS定义的规则显示在浏览器窗口中的过程。大致工原理如下: 用户输入网址,浏览器向服务器发出请求,服务器返回html文件; 渲染引擎开始载入html代码,并将HTML中的标签转化为DOM节点,生成DOM树; 如果中引用了外部css文件,则发出css文件请求...阅读全文

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

百度运维工程师挖矿实录:四个月用155台服务器挖矿赚10万判3年

某最后一次部署挖矿脚本后,百度通过安全管理监控系统发现大量服务器运行异常,占用公司服务器的运算资源执行了挖矿程序,经过一番排查,最终确定了幕后的操盘手“安某”。 为此,百度还花费 2.7 万元请北京耐特网科技公司提供了应急服务,具体项目包括样本提取、样本分析、服务器日志提取并分析、追踪溯源、报告编写等。 2018 年 7 月,百度正式起诉“安某”,认为其犯有非法控制计算机信息系统罪。经法院的进一步核实,被告人“安某”虽对其行为性质提出辩解,但其到案后及在庭审过程中对其实施的案过程均能如实交代,故应认定其具有如实供述的情节,同时结其能退缴涉案违法所得,故可对其从轻处罚。 据此判决: 一、被告人安邦犯非法控制计算机信息系统罪,判处有期徒刑三年,罚金人民币一万一千元。 二、在案扣押的人民币十一...阅读全文

博文 2020-03-17 20:42:41 debian.cn

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

的联身份用户。如果使用不属于 aws-auth ConfigMap 的 IAM 用户或角色访问 Amazon EKS 控制台,则无法看到 Kubernetes 工负载。也不会看到集群的概览详细信息。所以要向其他 AWS 用户或角色授予与集群交互的能力,您必须在 Kubernetes 中编辑 aws-auth ConfigMap。 因为部门有不通的角色,所以想基于不通的角色分配不同的权限,下面是记录添加一个对 EKS 只有只读权限的 AIM 用户。 {{< notice info "注意:" >}} 如果您在运行 AWS 命令行界面 (AWS CLI) 命令时遇到错误,请确保您使用的是最新版的 AWS CLI。 {{< /notice >}} 为 IAM 用户或角色配置权限 要查找具有主要...阅读全文

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

HTML 5.1 — 14 项新增特性及使用案例

片不需要向用户展示时,可以使用此特性。假如一个 img 元素还有其他用途而不仅仅是展示一个图片,例如,为一个服务的一部分用来计算页面视图个数,在 width 和 height 属性中使用 0 数值。对于 0 宽度的图片,推荐使用空属性。 7. 校验表单 新的 reportValidity() 方法允许你校验一个表单和重置结果,并且在浏览器适位置向用户报告错误。用户代理可以报告一个以上的限制规则,假如单一元素同时遇到多个问题。对于这种情况,“密码”输入为必填内容但没有填,将会标识为错误。

Form validation

Enter details阅读全文

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

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

解决这个问题之前,我们依赖于传统的工流引擎。比如,一个工流列出部署新二进制文件的步骤:在集群X上做金丝雀测试,然后将N部署到集群Y和Z上,运行测试等等。 创建工流本身就需要大量工,因此我们只为经常需要做的事情创建工流,比如二进制文件的版本更新。我们通常手动处理不那么常见的情况,比如重启。已有的脚本经常会过期而不再适用。 对于运维人员来说,这些工流很容易实现:做X,然后Y。想要添加压力测试?只需要添加一个步骤。但是随着工流使用规模的扩大,它的问题也显露出来。 首先,扩展工流会造成很多重复。每个服务都有很好的理由要求一些特殊逻辑,这意味着需要定制化的实现。尝试了几次整流的实现,但是只有适用于某个特定模型的服务才能使用。这样导致的重复让服务变得不一致。最佳实践,比如跨集群的有...阅读全文

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

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

Facebook 高速发展的 2007 年到 2016 年,他们一天部署 3 次代码,cherry-pick 集齐成千上万个 commit;现在使用类似持续交付的方法,每个 commit 能自动部署到 production。公司里有很多员工、很多用户的好处:新代码让公司所有员工先用上,因为员工数足够多,能很快发现问题;然后让 2% 的访问量用上新代码,最后慢慢增加到 100% 的访问量。 不久前有篇关于缩短 Facebook 发布流程的文章,阐述了将代码投入生产的灵活方法。这篇文章着重讲述了他们在一年之内如何从“ cherry-picking ”升级到“ push-from-master ”策略。早些时候, Facebook 也分享了他们部署过程的细节。者 Chuck Rossi 是...阅读全文

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

Debian 相比 Ubuntu 有哪些不同之处

非常易于使用。如果你的工习惯与这些概念不一致,可能会强烈反对Ubuntu易于使用这一观点。 然而,虽然Ubuntu源自Debian,但两者的区别还是很明显。从安装和桌面,到程序包管理及社区,大家认为自己对于Ubuntu和Debian了解的情况可能是错误的,或者至少需要一些严格限制――这一切使选择哪个发行版适贵公司的业务战略显得非常困难。 安装方面的区别 眼下,你可以使用哪个发行版取决于拥有的硬件。Debian目前面向大约13种硬件架构:从标准的32位和64位英特尔架构到ARM和PowerPC架构,还支持另外两种正在开发的架构。相比之下,Ubuntu支持32位和64位版本这两大不同的计算机桌面环境,现正在为移动设备开发Ubuntu ARM版本。 要考虑的另一个方面是面向每个发行版的安装程...阅读全文

博文 2017-12-22 23:41:07 debian.cn

三个技巧 大幅减少 Docker 镜像体积

Alpine 的镜像。它们的体积非常小,但代价是兼容性较差。Alpine 使用了略微不同的标准 C 库——muslc。你可能会时不时地遇到一些兼容性问题。 原始基础镜像非常适用于测试和开发。它虽然体积很大,但提供了与 Ubuntu 工站一样的体验。此外,你还可以访问操系统的所有二进制文件。 最后,我们再回顾一下各个镜像调整后的大小: node:8 681MB node:8 使用多阶段构建为 678MB gcr.io/distroless/nodejs 76.7MB node:8-alpine 69.7MB 英文原文:https://itnext.io/3-simple-tricks-for-smaller-docker-images-f0d2bda17d1e...阅读全文

博文 2018-09-06 10:50:29 debian.cn

深入学习golang — channel

Serve(queue chan *Request) { for req := range queue { sem <- 1 go func(r *Request) { process(r) <-sem }(req) } } 至少,这样的代码不会让一个go的初学者不会迷糊,另外,从变量的用域角度,也更符常理一些。 在实际的C/C++编程中,我们倾向于工线程在一开始就创建好,而且线程的数量也是固定的。在go中,我们也可以这样做: func handle(queue chan *Request) { for r := range queue { process(r) } } func Serve(clientRequests chan *Request, quit chan bool...阅读全文

博文 2021-01-25 12:39:17 博客园

开源软件对于商业机构的6大好处

从根本上说,开源模式要由于专有模式,为什么这么说呢?下面总结了商业机构及政府机构可以从开源软件中获得的六大好处。 1、能更直观的选择供应商 在你投资工程和经济资源将产品整到你的基础设施之前,需要确保产品的格性:是否处于积极开发状态?是否有定期的漏洞修复和安全更新?产品是否能根据需求按时更新? 最后一点或许比你想象的还要重要。解决方案必须满足产品需求。但需求会随市场及商业的变化而变化,如果产品不随之做出改变,未来就需要花费一笔不菲的迁移成本。 而在开源的世界里,你可以综产品的发展速度以及社区的健康程度来比较供应商。一个更积极、更多元化的社区能在一两年后开发出更好的产品,这是一个关键的参考因素。当然,供应商必须要有能力解决在项目发展过程中出现的不稳定性问题。最后,还需要供应商具备较长的支...阅读全文

博文 2017-11-15 23:41:11 debian.cn

在TKE上使用Kubecost进行成本管理

://main.qcloudimg.com/raw/def229e1eeb39af2abb6c029294329dd.png) ### Reports Reports 主要保存一些观测数据,观测粒度和 Cost Allocation 里一致,支持按照某种方式聚/观测数据之后,一键保存。如下图所示: ![](https://main.qcloudimg.com/raw/a550844cd1b0b3dfa866e46385dd0c04.png) ## 操步骤 ### 安装 helm 登录到某个 Node 节点,执行以下命令安装 helm: ```sh curl https:``//raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3 | bash...阅读全文

十个增加 Linux Shell 脚本趣味的小工具

很多人误以为shell脚本只能在命令行下使用。其实shell也可以调用一些GUI组件,例如菜单,警告框,进度条等等。你可以控制最终的输出,光标位置还有各种输出效果。下面我将介绍一些工具,帮助你创建强大的,互动的,用户友好的 Unix/Linux shell脚本。我在FreeBSD和Linux下测试过这些工具,不过其他UNIX系列的操系统应该都支持的。 1. notify-send 命令 这个命令可以让你通过通知进程发送一个桌面通知给用户。这可以用来向用户发送提示,或者显示一些信息而不用打断用户工。你需要安装如下软件包: $ sudo apt-get install libnotify-bin 下面这个例子展示了如何从命令行向桌面发送一个简单的消息: notify-send...阅读全文

博文 2018-04-09 09:38:50 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

Docker CE 19.03 正式发布 无需root权限

docker/engine#260现在允许设置 buildkit 输出 docker/cli#1766查找 Dockerfile 特定的 dockerignore 文件 (例如,Dockerfile.dockerignore) 以查找被忽略的路径 docker/engine#215自动检测 x86、ARM 和 ARM 64 二进制文件是否可以执行进程 docker/engine#215更新 buildkit 到 1f89ec1 docker/engine#260默认情况下使用 Dockerfile 版本 docker/dockerfile:1.1 docker/engine#215不再依赖外部映像进行复制/添加操 docker/engine#215 Client 在 docker update 中添...阅读全文

博文 2019-07-24 21:30:05 debian.cn

第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

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...阅读全文

Raspberry Pi 推出 Zero W

Raspberry Pi 基金会 推出了 Pi Zero W。为 Pi Zero 的一个新型号,Pi Zero W 在主板上新集成了 WiFi 和蓝牙,其 10 美元的售价要比 Pi Zero 贵上一倍,但是与五年前发布的 Raspberry Pi Model B 的 35 美元售价相比依然便宜不少。具备主板联网功能的 Pi Zero W 将开启物联网项目的更好前景。 一年前主板上具有 WiFi 和蓝牙的 Pi 3 Model B 推出 之后,下一步明显就是具备无线功能的 Pi Zero。要在最初的 Pi Zero 中添加联网功能,或是需要增加一个昂贵(与主板价格相比)且布局复杂的 USB OTG 适配器以及 USB WiFi 加密锁,或是要 绕过 USB WiFi 加密锁的内部机制...阅读全文

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

Kafka 3.0新特性全面曝光,真香!

化。如果一个节点同时是Broker和Controller节点,那么就称之为组节点。实际工当中,如果有条件的话,尽量还是将Broker和Controller节点进行分离部署。避免由于服务器资源不够的情况导致OOM等一系列的问题Quorum Voters通过controller.quorum.voters配置来实习哪些节点是Quorum的投票节点,所有想要成为控制器的节点,都必须放到这个配置里面。每个Broker和每个Controller都必须配置Controller.quorum.voters,该配置当中提供的节点ID必须与提供给服务器的节点ID保持一直。每个Broker和每个Controller 都必须设置 controller.quorum.voters。需要注意的是...阅读全文

博文 2022-04-28 16:02:11 mp.weixin.qq.com

你应该选择Cinnamon作为Linux桌面环境的十个理由

Cinnamon属于一套GNOME 3桌面fork,且希望实现GNOME桌面从未能实现的效果。除了对GNOME进行改进与扩展外,它还保留了独特且令人赞赏的特色。事实上,Cinnamon已经脱胎于GNOME 3并做得更好。 2011年,GNOME 3的发布激起了一系列积极与消极的反应。很多用户与开发者更喜爱原本的GNOME界面,因为它提供更多fork选项——而Cinnamon正是其中的杰出代表。 由于GNOME用户界面中的许多组件已经停止开发,Cinnamon及其他多种fork项目应运而生。而为GNOME的使用方之一,Linux Mint项目也因此积极参与Cinnamon的开发工。时至今日,Cinnamon已经成为一套完全独立的桌面环境,且继承了大量用户最为喜爱的GNOME特性。 默认的...阅读全文

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

三个简单而优秀的 Linux 网络监视器

你可以通过 iftop、Nethogs 和 vnstat 这三个 Linux 网络命令,了解有关你网络连接的大量信息。iftop 通过进程号跟踪网络连接,Nethogs 可以快速显示哪个在占用你的带宽,而 vnstat 为一个很好的轻量级守护进程运行,可以随时随地记录你的使用情况。 iftop iftop 监听你指定的网络接口,并以 top 的形式展示连接。 这是一个很好的小工具,用于快速识别占用、测量速度,并保持网络流量的总体运行。看到我们使用了多少带宽是非常令人惊讶的,特别是对于我们这些还记得使用电话线、调制解调器、让人尖叫的 Kbit 速度和真实的实时波特率的老年人来说。我们很久以前就放弃了波特率,转而使用比特率。波特率测量信号变化,有时与比特率相同,但大多数情况下不是。 如果你只...阅读全文

博文 2017-11-07 00:07:38 debian.cn

王垠:如何掌握所有的程序语言

了这里面的东西,每个程序员都应该可以做到这一点。嗯,但愿吧。 重视语言特性,而不是语言 很多人在乎自己或者别人是否“会”某种语言,对“发明”了某种语言的人倍加崇拜,为各种语言的孰优孰劣争得面红耳赤。这些问题对于我来说都是不存在的。虽然我写文章批评过不少语言的缺陷,在实际工中我却很少跟人争论这些。如果有其它人在我身边争论,我甚至会戴上耳机,都懒得听他们说什么 为什么呢?我发现归根结底的原因,是因为我重视的是“语言特性”,而不是整个的“语言”。我能用任何语言写出不错的代码,就算再糟糕的语言也差不了多少。 任何一种“语言”,都是各种“语言特性”的组。打个比方吧,一个程序语言就像一台电脑。它的牌子可能叫“联想”,或者“IBM”,或者“Dell”,或者“苹果”。那么,你可以说苹果一定比 IBM 好...阅读全文

博文 2017-07-10 10:13:17 debian.cn

互联网协议正在发生变化

TLS 1.3 的相关章节。 最终,HTTP/2 允许多个主机的请求被 并到一个连接上,通过减少页面加载所使用的连接(从而减少拥塞控制的场景)数量来提升性能。 例如,你可以对 www.example.com 建立一个连接,也可以将这个连接用于对 images.example.com 的请求。而未来的协议扩展也允许将其它的主机添加到连接上,即便它们没有被列在最初用于它们的 TLS 证书中。因此,假设连接上的通讯被限制于它初始化时的目的并不适用。 值得注意的是,尽管存在这些变化,HTTP/2 并没有出现明显的互操性问题或者来自网络的冲突。 TLS 1.3 TLS 1.3 刚刚通过了标准化的最后流程,并且已经被一些实现所支持。 不要被它只增加了版本号的名字所欺骗;它实际上是一个新的 TLS 版本...阅读全文

Tmux 快速教程:快捷键和配置

Tmux 简单来说就是终端里的『窗口管理器』,如果我使用终端登录到远程主机并运行前台程序,那么这个窗口等于就被占用了,想要看一下 CPU 的使用率,就得再连接一次。但是如果在远程主机上运行 tmux,那么就可以开启多个控制台(类似于窗口),相当高效,比方说可以像下面这样: 需要注意的是,这里是在我本地使用 tmux,最好在远程主机也安装 tmux,这样就只需要连接一次。 Hello World 前面提到的窗口管理只是 tmux 功能的一小部分,另一个很有用的功能就是,连接到远程主机之后,一旦断开,那么当前账户登录的任务就被取消了,但是使用 tmux 可以在断开之后继续工,下次登录可以查看。其他的功能还有: 窗口切换,每个窗口里还可以分割面板 配置方便,可以使用脚本 类似 vim 的双层操...阅读全文

博文 2017-11-07 15:17:49 debian.cn

分布式存储系统 Ceph 10.2.7 发布

Ceph v10.2.7 发布了。Ceph 是加州大学 Santa Cruz 分校的 Sage Weil(DreamHost 的联创始人)专为博士论文设计的新一代自由软件分布式文件系统。自 2007 年毕业之后,Sage 开始全职投入到 Ceph 开 发之中,使其能适用于生产环境。Ceph 的主要目标是设计成基于 POSIX 的没有单点故障的分布式文件系统,使数据能容错和无缝的复制。 该版本更新日志尚未找到,了解更多请查看 提交记录 或关注 官方博客 。 下载地址 Source code (zip) Source code (tar.gz)...阅读全文

口袋大小的发明彻底改变了检测有害物质的能力

价格低廉、基于手机的拉曼光谱仪系统可在几分钟内识别未知的生物分子。 由德克萨斯农工大学 Peter Rentzepis 博士申请专利的新型手持式拉曼光谱仪系统可利用手机摄像头和激光技术的结,对有害化学物质和材料进行非侵入式鉴定。 这种设备比传统光谱仪便宜得多,速度也快得多,可用于偏远地区进行快速现场分析。 https://www.cnbeta.com.tw/articles/science/1439072.htm...阅读全文

Debian GNU/Linux 9 Stretch 宣布于 6 月 17 日发布

不过在这段时间内,开发团队还需要修复已知的BUG,各种崩溃和内存泄漏问题,整所有最新的安全补丁,处理Debian GNU/Linux 8 "Jessie"系列版本的推送和流畅升级问题。 Niels Thykier在今天更新的邮件列表中写道:“我们计划在2017年6月17日发布。如果你想要为此进行庆祝,请考虑参加一场Debian版本发布排队或者自己举办一个。用户可以访问https://wiki.debian.org/ReleasePartyStretch查看更多信息。”...阅读全文

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

代码审计CodeQL

CodeQL是一个白盒源码审计工具,它以一种非常新颖的方式组织代码与元数据,使研究人员能够“像查询数据库一样检索代码”,并发现其中的安全问题。 GitHub于去年收购了开发CodeQL的公司Semmel,并与其联成立了GitHub Security Lab,Semmel在此前推出了面向开源社区和企业的源代码分析平台 LGTM,这个平台能够自动化的发现并预警GitHub上开源软件的安全问题,同时,与CodeQL一样对开源社区与开发者保持免费。...阅读全文

Kubernetes源码探疑:Pod IP泄露排查及解决方法

UK8S是UCloud推出的Kubernetes容器云产品,完全兼容原生API,为用户提供一站式云上Kubernetes服务。我们团队自研了CNI(Container Network Interface)网络插件,深度集成VPC,使UK8S容器应用拥有与云主机间等同的网络性能(目前最高可达10Gb/s, 100万pps),并打通容器和物理云/托管云的网络。过程中,我们解决了开源kubelet创建多余Sandbox容器导致Pod IP莫名消失的问题,确保CNI插件正常运行,并准备将修复后的kubelet源码提交给社区。 深度集成VPC的网络方案 按照我们的设想,开发者可以在UK8S上部署、管理、扩展容器化应用,无需关心Kubernetes集群自身的搭建及维护等运维类工。UK8S完全兼容原生...阅读全文

SVN切换分支用法汇总

,以避免出现代码丢失等问题。在切换分支的时候,我们需要确保其他人都知道这个操,并且保证他们的代码状态是干净的。六、SVN切换分支的优缺点在软件开发中,我们需要经常进行分支管理,因此,SVN的分支管理功能就显得尤为重要了。下面我们来看一下,SVN切换分支的优缺点。1. 优点SVN切换分支的最大优点就是方便快捷。通过SVN我们可以很方便地将工副本切换到不同的分支,这样可以让我们更加高效地进行代码管理和开发工。此外,SVN还提供了完善的分支并机制,可以帮助我们更好地保持代码的稳定性。2. 缺点SVN的缺点主要体现在以下几个方面:(1)SVN对源代码有一定的限制;(2)SVN操过程较为繁琐;(3)SVN的并发处理能力相对较差。七、总结综上所述,SVN切换分支是一项非常重要的基础操,在软件开...阅读全文

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

六个开源软件开发的潜规则

多开源项目的贡献者并没有遵守。这样做的开发者不仅可以为成功地推动他们自己的项目,而且也有助于开源社区。 者简介: Matt Hicks 是 Red Hat 软件工程的副主席,也是 Red Hat 开源团队的奠基成员之一。他历时十五年,在软件工程中担任多种职务:开发,运行,架构,管理。 【via: http://www.infoworld.com/article/3156776/open-source-tools/the-6-unwritten-rules-of-open-source-development.html 原者:Matt Hicks 中文译者:Taylor1024】...阅读全文

博文 2017-05-20 10:27:11 debian.cn

25万次P/E循环 超级长寿的SLC SSD诞生

SLC、MLC、TLC、QLC……NAND闪存类型的进化一直是个争议话题,可靠性和寿命越来越差,或者说P/E编程擦写循环次数越来越低,东芝甚至已经开始探讨PLC,不知道会渣成什么样。对于最初的SLC(每单元只保存1比特数据),很多人都十分怀念,但如今已经几乎绝迹,只在极少数特殊场才能看到。 东芝正在打造可视为SLC加强版的XL-Flash,而高端固态存储厂商Greenliant最新打造的NANDrive EX系列SSD产品,更是应用了超长寿的SLC闪存。 Greenliant NANDrive EX并非消费级产品,而是面向高性能计算、工业、交通运输、视频和网络等特殊行业应用,特别是那些需要超长寿命、高可靠性的应用,能长久保持数据完整。 它采用了Greenliant自家专门设计的...阅读全文

博文 2019-08-07 23:13:00 debian.cn

深入了解Docker背后的namespace技术

,这是系列博客的第一篇,深入探讨Docker对namespace技术的应用。 Namespaces 在第一部分,我会在文章中讨论Docker在使用Linux namespace时,如何创建Linux namespace。在之后的博客中我们会讨论namespace如何与其它特性如cgroups和隔离的文件系统相结,去实现更多有用的功能。 从根本上说,namespace是Linux系统的底层概念,有一些不同类型的命名空间被部署在核内。跟踪docker run -it --privileged --net host crosbymichael/make-containers这段代码,我们就可以深入到每个不同的namespace。开始会有一些预加载文件和配置。尽管我们也会在用Docker为我们运行的...阅读全文

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

Debian下编译安装Golang

我的Debian是用来工的,因此用的是稳定源。稳定源的优点是,软件经过充分的测试,处于稳定版本。这种状态对于绝大多数软件,都是最适的。 但是,对于一些需要最新版本的软件来说,稳定源太过于滞后。 官网不仅连接不稳定,二进制发布包也不够全。 目前(2016),Debian的稳定源只能安装go1.3版本。如果需要最新的版本,只能自行从源码编译安装。 卸载旧版本 sudo apt-get remove golang sudo apt-get autoremove 源码下载 git clone https://github.com/golang/go.git 如果没有Git,必须自行解决;如果没有gcc,也需要自行安装。 此外,golang/go这个库实在太大,近200MB。完整从GitHub上...阅读全文

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

Dubbo 2.7.0发布 分布式RPC服务框架

的异步模型。2.6 及以前的版本,元数据全部存储在 URL 上,配置信息和注册信息只能存储在注册中心上,注册中心的容量和扩展成为瓶颈。这个限制在使用 ZooKeeper 为注册中心的大规模 Dubbo 应用场景下尤为突出。在 2.7.0 中,通过对 URL 的改造,将 注册中心拆分成了三个中心 ,分别是注册中心、配置中心和元数据中心,三者各司其责,不仅有效地解决了上述容量问题,而且很好地适应了微服务的技术架构,用户可以开始自由选择适自己场景的注册中心和配置中心。2.7.0 将内建支持 ZooKeeper、Nacos 和 Apollo 等第三方注册和配置中心,在后续的版本中,还会进一步提供对 Consul 和 etcd 的支持。另外,通过引入一个全新的元数据中心,将与注册配置无关的服务信息...阅读全文

博文 2019-01-18 09:43:16 debian.cn

技术部门的 SEO 规范

为客户提供SEO顾问服务的时候,经常遇到一些为外部顾问不方便全程参与的情况。比如有的公司要新建网站,或者现有网站推到重来,问我能否从一开始就参与,提供SEO建议。 网站规划设计阶段就考虑SEO当然是好事,但为一个远在异国的顾问,参与到这种需要大量深度讨论、沟通、协调的过程中,实在是不好操,内部SEO人员更适这种工。 有的客户公司规模比较大,技术开发、内容、SEO等各部门是分开的,SEO部门的很多需求是要提交给技术、运营等部门实施的。反过来,其它部门的需求也由技术部门实施,但可就不一定经过SEO部门同意了。这个过程中就可能产生对SEO的不良影响。 也有的公司人员流动频繁,即使原先的开发人员都经过SEO培训,也还是会有完全不了解SEO的新人加入团队。 这些情况都需要有一个技术部门必须...阅读全文

博文 2019-03-28 13:58:51 debian.cn