InfraPub 为您找到相关结果 532

运维的未来:云服务兴起,运维人员会“下岗”吗?

我合作的或者是我了解的众多 dev 组织似乎不用 QA 也做得挺好。 同样的状况很也会发生在运维人员身上。我之前在 Workiva 的基础设施和可靠性小组里工作时,我们将运行和基础建设工程团队并入一个单独的团队,该团队是由网站可靠工程师组成的,负责构建和维护基础设施服务,配置管理,日志管理,集合管理,监控等。 我非常支持通过愿景实现对团队的领导。发展愿景令人信服,可以使团队之间达成共识,减少功能孤岛和组织孤岛的影响,并能够从内部激励员工。它能使团队高一致又能松散耦合,能够更好地做出决定。我对运维未来作为组织能力的想法本质上是将合成工程看作是合理结论。跟 QA 一样,运维能力也应该被嵌入发展团队中。事实是,没有运维技能,你不可能在现代组织中成为一名合格的软件工程师。现如今的运维团队,应该重...阅读全文

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

处理器架构消亡史

架构也都是由RISC体系中发展出来的处理器架构。包括IBM所推出的Power架构也都是RISC体系中的一员。他们的到来,构建了出了璀璨的处理器架构时代,也对当时的英特尔造成了一定的压力。各领风骚数十载SPARC(可扩展处理器体系结构)是最初由Sun Microsystems开发的精简指令集计算(RISC)指令集体系结构(ISA)。它的设计在很大程上受到早期RISC设计的影响,包括来自加利福尼亚大学伯克利分校和IBM 801的RISC I和II 。这些原始的RISC设计极简,包括尽可能少的功能或操作码,旨在以每个时钟周期几乎一条指令的率执行指令。SPARC于1986年首次开发,并于1987年发布,是最成功的早期商业RISC系统之一。在其推出首款SPARC处理器产品后,SPARC就很地占领...阅读全文

Firefox 59 将启用对分布式网络架构协议的支持

Firefox 59 还提供了一个应用程序接口(API),能够隐藏界面上未使用的标签页,并改进了网络请求(webRequest)API 。 当然,得益于一套双层 WebAssembly 编译器,最近发布的 Firefox 58 已经带来了显著的提升。【编译自:Neowin , 来源:Mozilla】...阅读全文

博文 2018-01-31 10:35:07 debian.cn

Kong 1.3 发布:原生 gRPC 代理、上游 TLS 交叉认证

游 keepalive 连接、ARM64 架构支持和 LuaJIT GC64 模式方面带来了更好的行为。并且由于 LuaJIT 编译器生成更多原生代码,OpenResty 更有效地存储请求上下文数据,因此在密钥身份验证基线代理基准测试中,Kong 现在运行提高约 10%。 此版本还带来了更多更新内容,包括 Kong 的路由器现在能够通过任何请求头(不仅是主机)匹配路由、新添加的 CLI 命令可用于创建数据库内容转储到 YAML 文件中等,详情查看发布公告。...阅读全文

博文 2019-08-22 14:54:57 debian.cn

谷歌在美国和欧洲之间的新海底电缆已经上线运行

当时预计该项目将在2020年就会投入使用,但除了要处理跨越各大洲之间的长电缆的复杂问题外,项目负责人当时可能没有为COVID-19全球大流行做好准备。这条近4000英里的电缆总容量为每秒250Tb--或者说足以传输 "整个数字化的美国国会图书馆每秒三次"。与一些老旧的电缆不同,Dunant使用了12对光纤,再加上围绕最大化其带宽的一些技术创新,才实现了这些数字。"谷歌致力于满足对云服务和在线内容的爆炸性需求,这种需求有增无减,"谷歌云基础设施高级总监Mark Sokol说。"凭借创纪录的容量和传输,Dunant将帮助用户在任何地方访问内容,并补充互联网上最繁忙的路线之一,以支持谷歌云的发展。Dunant是一项了不起的成就,如果没有SubCom和谷歌员工、合作伙伴和供应商的奉献,他们在今...阅读全文

Linux 5.11稳定版今日将发布 多项重大变化

尚未发布的另一款 Radeon RX 6000 系列 GPU,对比当前的 Radeon RX 6800/6900「Sienna Cichlid」硬件,性能有所提高。 - 通过 Schedutil 获得更好的 AMD 性能,在本周修复了频率不变性性能回归之后,不仅回归问题得到了解决,而且对于许多工作负载来说,现在的情况比在 Linux 5.10 或更早版本上要好。 - 适用于 NVIDIA GA100 / GeForce RTX 3000 系列的 Nouveau KMS。这只是内核模式设置/显示支持,没有3D加。因此,至少显示器能够亮起来,以使用户可以继续访问 NVIDIA 网站以安装专有驱动程序,直到开源 Nouveau 驱动程序在更高版本的内核中完全支持 Ampere。 - 新的 ARM...阅读全文

PostgreSQL 10 有哪些新特性

制 :这是 PostgreSQL 在物理复制之外提供的另一种可选方案,提供了更大的灵活性,而且配置简单。 改进并行查询 :在查询很多时应该会有 2 到 4 倍的提升。 更强大的密码哈希算法 :使用了 SCRAM -SHA–256。 关于 PostgreSQL 10,还有更多的特性正在开发之中,就像 2ndQuadrant 创始人兼首席执行官 Simon Riggs 在最近的一次演讲中所 介绍 的那样。包括 PostgreSQL 10 官方路线图在内,正在进行中的特性开发工作还有诸如以下这些: 自治事务 多主集群,使用 分片 提高扩展性和可用性 查询 JIT 编译 可插拔的存储引擎(columnar、内存内存储等) 页级数据压缩等 改进临时表性能 不过,哪些特性将成为 PostgreSQL...阅读全文

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

Golang 之禅: 如何写优质代码

减少耦合的操作,需要通过提供类型需要的依赖项作为该类型上的字段,而不是使用包变量。 简单性很重要 简单性不是老练的代名词。简单并不意味着粗糙,它意味着可读性和可维护性。如果可以选择,请遵循较简单的解决方案。 编写测试以确认包 API 的行为 软件包的 API 是与使用者的一份合约,不管先后,不管多少,一定要进行测试。测试是确定合约的保证。要确保测试使用者可以观察和依赖的行为。 如果你认为缓慢,先通过基准测试进行验证 以性能之名会犯下许多危害可维护性的罪行。优化会破坏抽象、暴露内部和紧密耦合。如果要付出这样的代价,请确保有充分理由这样做。 节制是一种美德 适使用 goroutine、通道、锁、接口与嵌套。...阅读全文

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

Gitlab CI 配置文件 .gitlab

本文档是描述 .gitlab-ci.yml 详细用法的下半部分,上半部分的内容请参考这里。.gitlab-ci.yml 文件被用来管理项目的 runner 任务。如果想要的了解GitLab CI ,可查看引导。 该文件存放于项目仓库的根目录,它定义该项目如何构建。 参考阅读:Gitlab CI 配置文件 .gitlab-ci.yaml 详解(上) artifacts 注意: 非Windows平台从GitLab Runner v0.7.0中引入。 Windows平台从GitLab Runner V1.0.0中引入。 在GItLab 9.2之前,在artifacts之后存储缓存。 在GItLab 9.2之后,在artifacts之前存储缓存。 目前并不是所有的executors都支持...阅读全文

博文 2018-12-12 21:09:02 ci.yaml 详解(下)

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

资源,从而获取虚拟货币的一种程序,需要较高的硬件配置及用电量。 而单凭一个矿工的力量是挖不到比特币的。于是“安某”便想到可以利用自己的职务之便利用百的服务器来开启自己的发家致富之路,只是他可能没想到的是事情会败露的这么。 那么,他具体是怎么做的呢? 首先,他用自己的工作账户上传了一个压缩文件 miner.tar.gz ,其中包含一个名为 java_4u3 的脚本, 而这个脚本可以自动执行解压缩、创建目录、删除目录、自动连接代理进行网络交换,达到控制服务器的目的。 然后,编译了一个挖矿程序,并将上述程序部署非法控制了百的 155 台服务器上,利用公司为其配备的苹果电脑上的 iterm 软件控制所有服务器的中控机,通过中控机上传挖矿脚本,并通过 iterm 软件发出批量下载指令,让 200...阅读全文

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

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

同样在于为原本缓慢而僵化的一些进程注入加创新的催化剂。开源硬件、开放数据、开放政务、开放AI等话题已经经过了相当长时间的探讨与发展,并非什么新鲜话题,然而到今天仍然处于未成熟的变化期,同样值得关注。 附录:红帽产品线定位图解 Ansible:用户接入点定义在靠近应用层(顶层)的位置,自动化管理 Insights:从各层采集数据,提供预警信息,属于基础支持的定位 OpenShift:一部分在中间件层作为应用容器平台,另一部分在基础层作为Google Cloud、AWS、Microsoft Azure等公有云服务的接入点。反过来看,也可以说这三家公有云是OpenShift的接入点,因为OpenShift Online完全是托管在Google Cloud、AWS以及Azure上的(红帽自己至...阅读全文

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

Git 介绍与使用详解

出现的原因,又是谁在何时报告了某个功能缺陷等等。 使用版本控制系统通常还意味着,就算你乱来一气把整个项目中的文件改的改删的删,你也照样可以轻松恢复到原先的样子。 但额外增加的工作量却微乎其微。 1.1.1集中化的版本控制系统,代表Svn 缺点: 1、依赖中央服务器。 如果宕机一小时,那么在这一小时内,谁都无法提交更新,也就无法协同工作。 2、如果中心数据库所在的磁盘发生损坏,又没有做恰当备份,将丢失所有数据——包括项目的整个变更历史,只剩下人们在各自机器上保留的单独照。 3、整个项目的历史记录被保存在单一位置,就有丢失所有历史更新记录的风险 4、必须联网才能工作,如果在局域网还可以,带宽够大,,如果在互联网下,如果网慢的话,效率就很低了。 1.1.2分布式版本控制系统,代表Git...阅读全文

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

MongoDB 4.2 正式发布 引入分布式事务

MongoDB 4.2 正式发布了,MongoDB Server 4.2 提高了现代事务和分析数据平台的技术水平。 Mongodb-4.2 的主要改动包括: 分布式事务将 MongoDB 的多文档 ACID 从副本集扩展到共享集群,能够为更广泛的用例服务按需物化视图使用新的 $Merge 运算符,在集合中缓存大型聚合的输出是一种常见的模式,新的 $Merge 运算符将可以有效地更新这些结果,而不是完全重新计算它们通配符索引使建模像产品目录这样的高异构的集合变得简单和自然,而不牺牲对索引的支持。只需定义一个过滤器,它将自动索引集合中所有匹配的字段、子文档和数组MongoDB 查询语言增强功能,如更有表现力的更新、新的数学运算符和扩展的 regex 支持。此版本的 update 和...阅读全文

博文 2019-08-16 07:54:08 debian.cn

DDR5内存最大亮点是啥

美光于前日宣布已经开始向业界中的核心客户出样DDR5内存(RDIMM)了,目前他们在DDR5内存上面使用的是自家最新的1z nm工艺。 JEDEC于2016年就开始制定DDR5 SDRAM规范了,不过到目前为止,DDR5标准仍然处于完善期,JEDEC还没有公布它的最终版本,预计它将会在今年正式完成DDR5标准的制定。反而是LPDDR5了一步,在去年2月份标准就已经正式公布,并且有厂商已经推出了实际产品,并且在今年已经有移动处理器支持它了。 美光的DDR5技术文档也得以让我们一窥DDR5内存的特性。首先,在同样的等效频率下,DDR5内存能够提供更高的有效带宽,比如同样处于3200MT/s下,DDR5-3200的有效带宽比DDR4-3200的要高出36%;其次是DDR5(在JEDEC标准范围...阅读全文

使用 tmate 分享你的终端会话

不久前,我们写过一篇关于 teleconsole 的介绍,该工具可用于分享终端给任何人(任何你信任的人)。今天我们要聊一聊另一款类似的应用,名叫 tmate。 tmate 有什么用?它可以让你在需要帮助时向你的朋友们求助。 什么是 tmate? tmate 的意思是 teammates,它是 tmux 的一个分支,并且使用相同的配置信息(例如捷键配置,配色方案等)。它是一个终端多路复用器,同时具有即时分享终端的能力。它允许在单个屏幕中创建并操控多个终端,同时这些终端还能与其他同事分享。 你可以分离会话,让作业在后台运行,然后在想要查看状态时重新连接会话。tmate 提供了一个即时配对的方案,让你可以与一个或多个队友共享一个终端。 在屏幕的地步有一个状态栏,显示了当前会话的一些诸如...阅读全文

博文 2017-12-06 10:33:33 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

HAProxy用法详解 最详细中文文档

一、HAProxy简介 (1)HAProxy 是一款提供高可用性、负载均衡以及基于TCP(第四层)和HTTP(第七层)应用的代理软件,支持虚拟主机,它是免费、并且可靠的一种解决方案。 HAProxy特别适用于那些负载特大的web站点,这些站点通常又需要会话保持或七层处理。HAProxy运行在时下的硬件上,完全可以支持数以万计的 并发连接。并且它的运行模式使得它可以很简单安全的整合进您当前的架构中, 同时可以保护你的web服务器不被暴露到网络上。 (2)HAProxy 实现了一种事件驱动、单一进程模型,此模型支持非常大的并发连接数。多进程或多线程模型受内存限制 、系统调器限制以及无处不在的锁限制,很少能处理数千并发连接。事件驱动模型因为在有更好的资源和时间管理的用户端(User...阅读全文

博文 2014-05-10 17:14:46 debian.cn

Kafka生产问题总结以及性能优化

定要配置重试要根据业务情况而定。也可以用同步发送的模式去发消息,当然acks不能设置为0,这样也能保证消息发送的有序。 kafka保证全链路消息顺序消费,需要从发送端开始,将所有有序消息发送到同一个分区,然后用一个消费者去消费,但是这种性能比较低,可以在消费者端接收到消息后将需要保证顺序消费的几条消费发到内存队列(可以搞多个),一个内存队列开启一个线程顺序处理消息。 如果为了性能好,不允许所有消息只在同一个分区,同时又要保证顺序消费,那么可以给每条消息加一个下标,当消费者拿到消息后先不急着消费,而是先判断下标,然后根据下标以此进行消费; 2.1.4 消息积压 1)线上有时因为发送方发送消息,或者消费方处理消息过慢,可能会导致broker积压大量未消费消息。 此种情况如果积压了上百万未...阅读全文

博文 2023-01-05 23:16:48 CSDN博客

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

在构建 Docker 容器时,应该尽量想办法获得体积更小的镜像,因为传输和部署体积较小的镜像。但 RUN 语句总是会创建一个新层,而且在生成镜像之前还需要使用很多中间文件,在这种情况下,该如何获得体积更小的镜像呢? 你可能已经注意到了,大多数 Dockerfiles 都使用了一些奇怪的技巧: FROM ubuntu RUN apt-get update && apt-get install vim 为什么使用&&?而不是使用两个 RUN 语句代替呢?比如: FROM ubuntu RUN apt-get update RUN apt-get install vim 从 Docker 1.10 开始,COPY、ADD 和 RUN 语句会向镜像中添加新层。前面的示例创建了两个层而不是一...阅读全文

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

21款必不可少的Ubuntu桌面应用程序

谷歌帐户来登录,在Linux和你使用的其他操作系统之间同步书签、扩展和应用程序。 其他替代方案:Vivaldi(Chromium)、GNOME Web(GTK)和QupZilla(Qt)。 3. GIMP照片编辑器 GIMP的全称是“GNU图像处理程序”,它是一款免费开源的Photoshop替代工具。虽然它缺少Adobe的一些比较花哨的功能,但是GIMP在常用功能方面与Adobe不相上下,有些方面甚至更胜一筹! 无论你是想自动修饰自拍照头像、创建可以在网上共享的多层次文化基因,还是作为摄影业余爱好的一部分,搞些专业的修饰工作,都要打量一下GIMP。 替代方案:Photomatix(收费版)、Pinta(GTK)和Shotwell(GTK)。 4. VLC媒体播放器 你不需要我告诉VLC是...阅读全文

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

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

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

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

aptitude 与 apt

示前一部分的输出结果中含有“/usr/games”的那些行。这个游戏很酷哦。说不定还有其他赛道可玩的?apt-cache search torcs我的磁盘空间不够用了。我得把apt的缓存空间清空才行。apt-get clean哦不,老妈叫我把机器上的所有游戏都删掉。但是我想把配置文件保留下来,这样待会我只要重装一下就可以继续玩了。apt-get remove torcs如果我想连配置文件一块删除:apt-get remove –purge torcs额外的软件包deborphan和debfoster工具可以找出已经安装在系统上的不会被用到的软件包。提高命令行方式下的工作效率 您可以通过定义别名(alias)来提高这些命令的输入。例如,您可以在您的*~/.bashrc*文件中添加下列内容...阅读全文

博文 2021-01-28 17:50:09 get 的区别与联系

固态硬盘的 PCIE、SATA、M2、NVMe、AHCI 如何理解

固态硬盘近年来也是随着计算机的发展而得到了迅的发展,目前已经隐隐有要取代机械硬盘的势头。但是关于固态硬盘相关的概念实在是繁琐,很多人选购固态硬盘时,看到商家宣传NVMe,PCIE 却不懂是什么意思,今天我们就来为大家详解这些概念。 首先我们要把 M2 跟 SATA 放一起说,我们常说的 M2 其实是 M.2,更多是指一种尺寸或者插槽,就是上图中右边的尺寸较小的直接插主板上的这种,而 SATA 通常是指上图左边那个尺寸较大的一大块那种。 还要提的是M.2插槽也是有两种的,一种是金手指有两个缺口的Socket 2跟金手指只有一个缺口的Socket 3,这两种可以走不同的通道,我们后面会说到。 接下来要搞懂的是 SATA 跟 PCIE,这两个东西是指串行接口或者就是数据走的通道,相信有人看到这...阅读全文

博文 2019-01-23 13:28:23 debian.cn

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

加 –pids-limit 标志 docker/cli#1765添加对服务的系统支持 docker/cli#1754在复合文件中增加了对 template_driver 的支持 docker/cli#1746使用该参数 --device 启动时将设备传递到 Windows 容器中 docker/cli#1606增加了对数据路径端口配置的支持 docker/cli#1509添加上下文 switch: commands docker/cli#1501每个节点添加最大副本 docker/cli#1612添加选项来 pull 图像 docker/cli#882添加 –domainname 标志 docker/cli#1130在 docker stack deploy 增加了对秘密驱动程序的支持...阅读全文

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

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

。 TypeScript:TypeScript是JavaScript的超集,它可以增加类型检查、接口声明等特性,减少错误和提高可读性。 NestJS:NestJS是一种流行的Node.js框架,它采用面向对象的编程方式,提供了路由、中间件、模块化等丰富的功能。 GraphQL:GraphQL是一款优秀的数据查询和操作语言,它可以帮助我们构建API,并减少网络传输的数据量。 功能设计 我们将开发一个电商平台,包含以下主要功能: 用户管理:用户可以注册、登录、修改个人信息等,管理员可以查看用户列表并进行管理。 商品管理:管理员可以添加、修改、删除商品信息,包括商品名称、价格、库存、图片等。 购物车:用户可以将商品加入购物车,并在结算时进行支付。 订单管理:管理员可以查看订单列表、订单详情、订单状态等。 开发流程 下面是全栈开发的开发流...阅读全文

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

Metasploit Framework 5.0 发布 最流行的渗透测试框架

的开源 Metasploit Framework 安装程序等开源项目;另一个是核心开发已经完成的不稳定分支。如果在过去的一年里你已经在 Github 检出了 Metasploit,你可能已经使用了后者,其默认提示符是 “msf5>”。 之前,一个特性可能会在一个 PR 中停留数月,并且仍然会造成在直接向 Kali Linux 或其他发行版推送之前出现不能被发现的 bug。而通过 Metasploit 开发的不稳定分支,开发团队现在可以在逐步升级到 Metasploit 稳定版前,更彻底地完成迭代,并且更简单地收到真实反馈。一些特性甚至早期就被合并到了 4.x 分支,因为它们在 Metasploit 5.0 发布前就被认为是稳定的。其他特性需要更长时间来稳定,并在最终的...阅读全文

博文 2019-01-15 13:37:28 debian.cn

内网穿透利器frp部署配置指南

/letsencrypt/live/frognew.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/frognew.com/privkey.pem; location / { # proxy_intercept_errors on; # error_page 404 /404.html; proxy_pass http://127.0.0.1:8082; } } 4.frp客户端配置 使用python在本地启动一个http服务用于测试: 1 python3 -m http.server 8080 下面将使用frp将这个http服务暴露到公网,编写frp客户端frpc的配置文件frpc.ini: 1 2 3 4 5 6 7 8 9 10...阅读全文

博文 2021-02-18 14:42:16 青蛙小白

Debian 环境下安装配置 Gitlab

要在服务器上进行搭建,长期运行。综合考虑后采用 debian系统,稳定,。 开始安装 安装过程非常简单, 按照页面中的执行步骤,依次执行命令即可。 1. 安装配置依赖项 如想使用 Postfix 来收发邮件,在安装期间请选择'Internet Site'. 您也可以用 exim4 或者配置外部的SMTP服务,使用SMTP发送邮件。 上面的安装期间,我没有选择internet site 选择的是本地local sudo apt-get install curl openssh-server ca-certificates postfix 2. 添加GitLab仓库,并安装到服务器上 curl -sS https://packages.gitlab.com/install...阅读全文

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

Docker 17.06 社区版发布

="_blank" href="http://nginx.com/" >nginx.com.

Thank you for using nginx.

root@85664afff468:/# 用来认证注册表访问的登录证书 可以在Docker for Mac和Docker for Windows中添加证书来访问注册表,而不仅仅是使用用户名和密码。这能让访问Docker Trusted Registery和开源的注册表和其他任何的注册应用而简单。 云版本 Cloudstor卷插件可以在Docker for AWS和Docker for Azure中使用。在Docker for AWS中,对于持久化卷(对于全局的EFS和可添加的...阅读全文

博文 2017-06-30 23:08:57 debian.cn

linux下查看系统socket读写缓冲区_eyucham的专栏

系统提供的socket缓冲区大小为8K,你可以将之设置为64K,尤其在传输实时视频时。 socket发送数据时候先把数据发送到socket缓冲区中,之后接受函数再从缓冲区中取数据,如果发送端特别的时候,缓冲区很就被填满(socket默认的是1024×8=8192字节),这时候我们应该根据情况设置缓冲区的大小,可以通过setsockopt函数实现 #include #include #include #include #include #include #include #include int main...阅读全文

博文 2021-01-26 16:21:35 CSDN博客

UCloud 叶理灯 谈:Docker、K8S 和 Serverless

去管资源问题。这需要我们去提供一个海量的集群去跑客户的应用,这就存在一个问题,多个客户的应用可能跑在一个节点上,考虑 Docker 本身的隔离问题,我们需要类似虚拟化容器的计算方式去做隔离,同时又希望拥有 Docker 本身轻量级启动的效率,现在看来,虚拟化容器是比较符合这个需求的。 尾声 通过和叶理灯的交谈,梳理了我对云计算、容器技术和 Serverless 等方面的一些认识,作为一个几年来亲自践行云计算发展,并有深入探讨和研究的专家,他的观点和认识或许值得从业云计算行业的技术人员参考。...阅读全文

博文 2019-06-14 08:28:49 debian.cn

细数k8s支持的4种类型的container - 侃豺小哥

容器要求。换句话说,即使有一个未使用的节点可以在其中运行应用程序容器,但如果初始化容器具有该节点可以处理的更高资源先决条件,则Pod也不会部署到该节点。因此,在定义初始化容器的请求和限制时,您应尽可能严格。最佳做法是,除非绝对必要,否则请勿将这些参数设置为高于应用程序容器的值。 标准容器和Sidecar容器 在k8s1.18 之前,这两种容器从k8s管理的角来看,并没有什么区别。只不过人为从功能上做了区分。 使用sidecar容器(模块化)具有的优点 加应用程序开发,因为容器可以在团队甚至更大的社区之间重复使用 整理专家知识,因为每个人都在一个容器化的实现上进行协作,该实现反映了最佳实践,而不是无数种功能大致相同的自家生产的不同容器 启用敏捷团队,因为容器边界是自然边界,是团队职责的契约...阅读全文

博文 2021-08-20 11:45:32 博客园

分布式运行时 Dapr 知多少

了答案。 从单机到分布式,是追求更和更高的性能,但也带来了更多的不确定性。比如,不确定计算机何时异常,不确定磁盘何时损坏,不确定网络通信的延迟,也不确定消息是否被正常消费。这些不确定性构成了分布式应用的挑战,简而言之: 异构的机器与网络:稳定性问题普遍的节点故障:可靠性问题不可靠的网络:一致性问题 面对这些挑战,业界提出了诸多的分布式理论、协议,如CAP定理,BASE理论,一致性协议2PC/3PC/ZAB,来保证系统的正常运行。虽然问题貌似是有了解决方案,但是应用的复杂升高了。应用除了需要实现业务需求,还要兼顾非业务需求,集成诸如服务发现、负载均衡、失效转移、动态扩容、数据分片、调用链路监控等分布式系统的核心功能,对应用有很强的侵入性,这就是以Spring Cloud为代表的微服务框架的...阅读全文

DPDK Graph Pipeline 框架简介与实现原理

DPDK 全称为 Data Plane Development Kit ,是近年来在高网络通信行业中炙手可热的一种网络报文处理加框架。DPDK 从十年前诞生直至发展到今天已经可以支持业界主流的高端网卡以及各类加硬件设备,同时也支持主流的各个CPU 体系结构(可以运行于 X86, Arm, Power 等平台)。同时也可以运行于 Linux/FreeBsd/Windows 等主流操作系统之上。DPDK因为其优异的性能指标被广泛的应用于网关/负载均衡/SDN/虚拟交换的各个场景。 本文主要介绍 DPDK 中的 libgraph 设计思想以及实现,libgraph 的设计思想源自于开源项目 Vector Packet Processor(VPP)。VPP 中的向量包处理优化方案是...阅读全文

博文 2023-02-09 07:13:55 掘金

开源硬件是趋势,Arm 却走了一条与众不同的路

Android 从来都不存在一样,Arm 也希望 RISC-V 不存在。” Riordan 如此说道。 2019 年可能是 Arm 的转折点。这家英国公司对客户(主要是半导体公司)的微处理器 IP 许可进行了一系列重大更改,目的是提供更好的访问以及更灵活的芯片设计选项。今年早些时候,Arm 推出了 Arm 灵活访问权限(Arm Flexible Access)—— 通过它客户可以以较低的费用访问公司的广泛技术组合,而没有购买完整许可证的义务。 在本周于圣何塞举行的 Arm TechCon 年技术会议上,Arm 首席执行官 Simon Segars 宣布将自定义指令(Custom Instructions)添加到以 IoT 为重点的 Cortex-M 处理器系列中,并从 2020 年上半年的 Arm...阅读全文

博文 2019-10-17 22:39:43 debian.cn

粘合万种芯片的“万能胶” 是摩尔定律的续命丹吗? - 硬件

推动整个行业向前发展。"不过, PCIe经历了十多年的发展才成为主流,UCIe1.0的出现只是Chiplet时代真正到来的起点,距离Chiplet真正成为主流也还有一段路要走。即便是强大如英特尔,也需要花费大量的时间和精力才能实现量产。工艺实现成第一难,工程费用无人愿承担"事实上Chiplet的发展,最大的难不是在协议制定上,而是在产品定义以及制造环节,统一协议和标准是为了降低研发成本和加市场应用。"创享投资的投资总监刘凌韬向雷峰网(公众号:雷峰网)表示。刘宏钧持有同样的观点,他认为虽然UCIe统一标准的建立为产业界指明了方向,但在具体物理层指标带来的工艺能力要求和大规模制造环节仍然有不少挑战,例如封装体中多层材料的堆叠,从硅之间的堆叠到硅、有机材料、金属等多种材料。"将这些材料连接起来...阅读全文

博文 2022-04-08 07:35:46 cnBeta.COM

Qt5.9发布:如何评价QT

Quick Controls 2的功能增强,还有基于openGL shader cache 对QML进行类型缓存, 以及.qml / .js文件生成的代码和数据结构的缓存的支持。 这些功能将大大提高使用Qt构建的设备的启动。 发布新Qt Creator 4.3.0,Quick Designer里面也看以同时看到和编辑qml code了! 作为Qml项目开发者确实立刻感到了方便! 还有新框架将允许Qt团队更容易创建新版本,包括修补程序和发布次要版本。 引入自动化性能回归测试,使得对Qt的监控与提高加强。 安全方面,Qt 5.9正式支持INTEGRITY RTOS。 确实越来越多的RTOS应用程亟需要更高级GUI框架来满足用户期望呢。 操作系统和硬件方面,Qt 5.9完全同时支持传统的Win32应用...阅读全文

博文 2017-06-02 10:24:32 5.9的变化

网易云音乐Linux版v1.1发布 支持 Debian Stretch

时隔近一年半的时间,网易云音乐 Linux 版本终于迎来了更新,本次更新除了迁移到QCEF框架,对GNOME、KDE桌面环境支持更好,支持最新 Debian 9、Ubuntu 17.10版本(仅64位),还优化和修复各个社区用户反馈的问题。 具体的细节优化如下: 迁移全新的QCEF框架; 使用了全新的播放器后端; 支持打开更多格式的本地文件; 优化播放时内存占用资源问题; 优化扫描本地音乐目录,支持读取下载任务的状态; 优化第三方字体的支持; 优化淡入淡出效果和在线播放; 优化更好的支持Wayland环境; 移除了沙盒机制; 修复部分本地音乐播放存在卡顿的问题; 修复Tooltip位置偏移的问题; 修复在Qt 5.9中界面乱码的问题; 修复GPU加选项无效的问题; 修复无法捕获本地目录变...阅读全文

博文 2017-12-02 18:34:00 debian.cn

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

。Ingress 作为 Kubernetes 的初代入口网关,资源模型过于简单,以致无法适应当今的可编程网络。Gateway API 作为 Kubernetes 入口网关的最新成果,它通过角色划分将关注点分离,并提供跨 namespace 支持使其更适应多云环境,已获得大多数 API 网关的支持;入口网关(南北向)与服务网格(东西向,集群内路由)存在部分功能重叠,Gateway API 为两者的融合提供了新的参考模型。三是 eBPF 开始兴起。越来越多的开源项目使用 eBPF 技术,比如 Cilium 将 eBPF 引入容器原生网络,Merbridge 使用 eBPF 加 Istio 中的透明流量劫持,Pixie 使用 eBPF 来构建可观察性堆栈,SkyWalking 使用 eBPF 来诊断服务网格的...阅读全文

Debian升级内核开启TCP_BBR 实现网络单边加速

自从锐发布以来,这款牛逼的单边加神器的确为一些线路不太优秀的服务器带来了更优秀的体验。但是呢,过高的价格和不再低端售卖。导致了我们并无法实现一个免费好用的单边加功能。 但是谷歌为我们带来了干货 新的 TCP 拥塞控制算法 BBR (Bottleneck Bandwidth and RTT)。 目前在 Linux Kernel 4.9 中加入了该算法,所以我们只要升级内核就可以爽一波了。难懂的技术说明,我们也不说了,TCP BBR 的目的就是要尽量跑满带宽,并且尽量不要有排队的情况。 注: 更新内核有一定风险,请注意备份。 开启 TCP BBR 只要 Linux 发行版的 Kernel 即内核版本大于等于 4.9 即可开启,开启方法是通用的,如何升级至 Kernel 将在下面介绍。 修...阅读全文

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

如何更改 Linux 的 I/O 调度器

Linux 的 I/O 调器是一个以块式 I/O 访问存储卷的进程,有时也叫磁盘调器。Linux I/O 调器的工作机制是控制块设备的请求队列:确定队列中哪些 I/O 的优先级更高以及何时下发 I/O 到块设备,以此来减少磁盘寻道时间,从而提高系统的吞吐量。 目前 Linux 上有如下几种 I/O 调算法: noop - 通常用于内存存储的设备。 cfq - 完全公平调器。进程平均使用IO带宽。 Deadline - 针对延迟的调器,每一个 I/O,都有一个最晚执行时间。 Anticipatory - 启发式调,类似 Deadline 算法,但是引入预测机制提高性能。 查看设备当前的 I/O 调器: # cat /sys/block//queue/scheduler 假设磁...阅读全文

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

Kubernetes 1.9发布:Apps Workloads通用版本与生态系统扩展

称SIG)都在继续立足所在层面交付用户们最为需要的功能。感兴趣的朋友可以点击说明[7]查看发行版说明中的完整功能列表。 发布时间 Kubernetes 1.9目前已经可通过GitHub[8]下载。若需要马上开始使用Kubernetes,请参阅相关交互教程[9]。 发行团队 此次发行版的推出,源自数百名技术与非技术参与者们的共同努力。这里特别感谢谷歌公司软件工程师Anthony Yeh领导的发行团队。该发行团队中的14名成员一直在努力协调发行工作中的方方面面,包括说明文档、测试、验证以及功能完整性等等。 随着Kubernetes社区的不断发展,我们的发行流程也已经成为开源软件开发合作领域的一大标志性产物。Kubernetes继续以惊人的吸引到更多新用户的参与。这种增长创造出更为积极的反馈周...阅读全文

博文 2017-12-17 01:00:00 debian.cn

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

本月早些时候,Angular 团队发布了 6.0 的第五版候选版本 ,其中包括一些错误修复以及添加令牌标记和支持配置导航网址。 根据 Angular 的开发者支持者 Stephen Fluin 的说法,RC 意味着团队已经在一定程上实现了正式版的稳定性,并且已经完成了添加功能和更改 API。 Fluin 还解释说,该团队有两个发布曲目。 首先,他们向公众发布了新闻稿,其中包括团队对 Angular 所做的每一项变更,并将其合并到主分支中。 第二个是谷歌将所有的 Angular 源代码放在一个存储库中,这意味着 Angular 的每一个变化都已经在谷歌的超过 500 种产品中使用。 6.0 版本的关键功能是将所有版本的框架结合起来,这意味着核心路由器,平台浏览器,CLI,Angular...阅读全文

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

NVDIMM-P非易失内存标准公布:断电不丢数据、兼容DDR4

我们知道,传统的DDR DIMM内存是易失性的,也就是必须维持通电才能保持数据,一旦断电就都没了。 Intel创造了Optane傲腾持久内存,做到了非易失性,也兼容DDR DIMM,但仅用于数据中心,和普通用户无关。 现在,JEDEC固态技术标准协会发布了DDR4 NVDIMM-P非易失内存标准规范,序列编号JESD304-4.01,也可以在断电后不丢失数据,而且完全兼容DDR4内存标准。 根据规范,这种新内存兼容普通的DIMM内存标准、固件,可以最大程减少对于现有设备、平台的更改,同时为新内存提供了低延迟接口,提高了易用性,未来也会兼容支持DDR5。 NVDIMM-P的新功能: - 持久性:操作系统能够低延迟、高带宽访问非易失内存。 - 虚拟化的内存:在DDR通道启用尽可能多的内存容量...阅读全文

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

指标: 完成后,运行以下命令进行清理docker-compose -f docker-demo/docker-compose.yaml down 在Kubernetes中部署Cortex以及Prometheus的依赖如架构所示,我们将Cortex部署为一组微服务。我们还需要Helm来部署依赖项(Cassandra)和其他服务(Grafana,Prometheus)。如果尚未安装Helm,则可以按照Helm文档中的入门指南进行操作。让我们开始吧,首先我们将部署cortex组件。kubectl apply -f k8s/ 我们还将使用Helm安装Prometheus。下面的命令将为我们完成这两项工作:创建一个名为" cluster"的外部标签,并将该标签的值设置为"one"。这将有助于分离不...阅读全文

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

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完全兼容原生...阅读全文

Qt 5.12 将于 11 月发布,或弃用 Alpha/Beta 标签

由于 Qt 5.11 将于下个月月底发布,因此 Qt 开发人员已经开始讨论后续的 Qt 5.12 版本,并计划将于 2018 年年底发布。主管 Qt 发布的经理 Jani Heikkinen 一直在制定 Qt 5.12 的开发日程。关于这方面,Qt 5.12 将会在 8 月 20 日左右进行特性冻结,而最终版本计划在 11 月底发布。 Qt 5.12 有一个值得关注的变化就是停止使用 alpha/beta 版本,取而代之的是只发布“照 (snapshots)”版本,直到他们准备好发布候选版本。Jani 几天前已经在邮件列表 提出 了有关这些更改的建议。 但也有其他 Qt 开发者表达了他们对从开发周期中移除”alpha” 或 “beta” 标签建议的不满,他们担心,如果只是被简单地称为“...阅读全文

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

ExpiringCache 缓存策略扩展 Bug修复及优化 负载均衡策略优化,包括 ConsitentHash(#2190) 、LeastActive(#2171)、Random(#2597) 、RoundRobin(#2586) (#2650)升级第三方依赖:默认通信框架为 netty 4、默认 ZK 客户端为 Curator、Jetty 9k增加地址读取时对 IPV6 的支持 (#2079)性能优化,链接关闭的情况下使得 Consumer 返回 (#2185)修复 Jdk 原生类型在 kryo 中的序列化问题 (#2178)修复 Provider 端反序列化失败后,没有及早通知 Consumer 端的问题 (#1903) 升级与兼容性 此次版本发布我们遵循了保持和老版本兼容的原则,尤其是在一些可能会破坏...阅读全文

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

Rust 1.37.0 稳定版发布

Cargo 项目中选择默认二进制文件 cargo run 对于测试 CLI 应用程序是可以的,当多个二进制文件出现在同一个包中时,必须使用 --bin 标志显式声明要运行的二进制文件的名称。这使得 cargo run 不像我们想要的那样符合人机工程学,特别是当一个二进制文件比其他的更频繁地被调用时。 Rust 1.37.0 通过添加 default-run 来解决这个问题,这是 Cargo.toml 中的一个新键,当这个键在 [Package] 部分中声明时,如果没有传递 --bin 标志,cargo run 将默认为所选的二进制文件。 枚举上的 #[repr(align(N))] #[repr(align(N))] 属性可用于提高类型定义的对齐性。以前,该属性仅允许在 struct 和...阅读全文

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