InfraPub 为您找到相关结果 275

译:零信任对 Kubernetes 意味着什么

确保它在每一点都得到执行。这听起来是常识。但与技术中的许多新想法一样,理解零信任的最佳方法是了解它的反应。零信任摒弃了边界安全的观点。在边界安全模型中,在敏感组件周围实施“装甲”。例如,数据中心周围可能有一个防火墙,其任务是阻止问题流量和参与者进入。这种模型,有时被称为城堡策略,具有直观的意义:城堡的墙壁是为了将坏人拒之门外。如果你在城堡里,那么根据定义,你就是一个好人。零信任模型表明,边界安全已经不足。根据零信任原则,即使在安全边界内,仍必须将用户、系统和网络流量视为不受信任。国防部的参考架构很好地总结了这一点:“在安全边界之外或之内运行的任何参与者、系统、网络或服务都是不可信的。相反,我们必须验证任何试图建立访问权限的事物。从边界验证一次到对每个用户、设备、应用程序和交易的持续验证,这...阅读全文

中国开源人访谈系列之:清风博主

,firefox和chrome就行了;QQ聊天用最新的wine,加上Yuking大神做的一个库跑精简版的QQ,很稳定;日常办公用WPS for Linux,老师用的最多的就是幻灯片,对于从网上下载的课件,Linux下的办公软件中,WPS是兼容性最好的。 12.您怎么看待开源精神,开源与商业? 答:我是开源精神的支持者,也不反对开源与商业的结合,我认为这也是开源事业能有旺盛的生命力的原因之一。多数人在吃饱穿暖的基础上,才能有更高的追求,不可否认,Richard Stallman这样的开源领袖,不是每个人都能做到的。但也正是有了这样一群可爱的狂热开源人士,我们的世界才变得更加美好! B.您与Linux社区 1.请问您有特别加入某个社区吗? 答:2013年的时候,在一位资深Gentooer的鼓动下,打算重建...阅读全文

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

成功运作一个开源项目的15个要点

馈项目,这将是项目最好的贡献来源。有些贡献者甚至将是加入项目团队的绝佳候选人。开发采用者和扩展者的生态系统是延长项目使用寿命的好方法。 10、与开发社区联系 开发社区由项目团队成员和贡献者组成。为社区内的沟通提供众所周知的渠道。明确的沟通渠道将有助于开发人员的合作。 11、有计划 很容易就会陷入只专注软件开发的模式,但和任何进程(特别是软件开发过程)一样,有些极致的方法至关重要。确保你的项目采用开发方法,并且有人拥有该流程(例如项目负责人)。制定计划可以帮助开发人员知道他们在哪里可以贡献最大的价值,并使采纳者和扩展者更容易实现他们自己的计划(从而取得成功)。对待任何其他软件开发项目一样地对待你的开源项目。 12、管理品牌 你的项目将有一个品牌。项目的名称是其身份;项目logo以及任何产品的...阅读全文

博文 2017-11-08 09:58:28 debian.cn

什么是线程安全,以及并发需要知道的几个概念

众所周知,在Java的知识体系中,并发编程是非常重要的一环,也是面试的必问题,一个好的Java程序员是必须对并发编程这块有所了解的。为了追求成为一个好的Java程序员,我决定从今天开始死磕Java的并发编程,尽量弥补自己在这方面的知识缺陷。 并发必须知道的概念 在深入学习并发编程之前,我们需要了解几个基本的概念。 同步和异步同步和异步用请求返回调用的方式来理解相对简单。 同步:可以理解为发出一个请求后,必须等待返回结果才能执行下面的操作。 异步:请求发出后,不需要等待返回结果,可以继续执行后续操作,异步请求更是在另一个 “空间” 中处理请求的结果,这个过程不会影响请求方的其他操作。 举个生活中的例子,比如我们去实体店买衣服,挑选完款式后下单让售货员去仓库拿货,在售货员拿货的过程你需要在店...阅读全文

博文 2018-12-31 20:44:06 debian.cn

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

。 Netpoll Netpoll 是字节跳动内部的 Golang 高性能、I/O 非阻塞的网络库,专注于 RPC 场景。 RPC 通常有较重的处理逻辑(业务逻辑、编解码),耗时长,不能 Redis 一样采用串行处理(必须异步)。而 Go 的标准库 net 设计了 BIO(Blocking I/O) 模式的 API,为了保证异步处理,RPC 框架设计上需要为每个连接都分配一个 goroutine,这在空闲连接较多时,产生大量的空闲 goroutine,增加调度开销。此外,net.Conn 没有提供检查连接活性的 API,很难设计出高效的连接池,池中的失效连接无法及时清理,复用低效。开源社区目前缺少专注于 RPC 方案的 Go 网络库。类似的项目如:evio、gnet 等,均面向 Redis、Haproxy...阅读全文

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

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

,就因为dev团队正在推出的破烂玩应,他们大半夜的得被叫起来。这种思维方式基本上已经过时了,正是思维方式使得人们都觉得干运维这一行的都是深深厌恶自己,一根接一根不停抽烟。这是由于缺乏同理心而产生的避重就轻、刻薄的想法。如果凌晨两点出现内存不足的异常,要不要去警告那些没有远见或者能力的运维人员去解决这个问题呢?还是说我们应该警告那些对系统相当熟悉的开发者呢?后一种做法似乎是明显的,但是关键在于他们需要被授权获悉状况,调试后自动解决。 其实新运维模式本质上应该把运维看作是一个产品团队,其产品就是基础设施。就开发者把 API 作为他们提供的服务,运维把 API 以工具、UI、自动化、基础设施即代码、可观察性和警戒的形式作为他们提供的基础设施。 @perterbourgon 关于这个话题,我有很多想...阅读全文

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

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

(NSM)平台,则由于其友好的向导,此工具便是答案。在安装之前,您需要知道Security Onion仅支持64位硬件。您也可以在官方文档中找到详细的技术要求。Security Onion的安装步骤非常简单。阅读文档(包括要求和发行说明)后,您需要下载ISO映。如果时间紧迫,安全洋葱是最好的选择,但它也有一些缺点。首先,它不支持Wi-Fi来管理网络。另外,您将必须学习如何使用不同的工具来学习提高分发效率。除此之外,它不会自动备份规则以外的配置。为此,您需要使用第三方实用程序。此屏幕快照说明了使用Security Onion(Sguil)进行实时事件检测:​图4对于现代组织而言,部署基于主机的入侵检测系统至关重要。市场上有许多具有不同功能的HIDS。为了帮助您缩小范围,我们选择了五个开源工具,使您...阅读全文

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

Web前端知识体系精简

用它们 速度 - 已缓存资源加载得更快 减少服务器负载 - 浏览器将只从服务器下载更新过或更改过的资源。 8、Canvas 和 SVG Canvas 通过Javascript 来绘制 2D 图形。Canvas 是逐素进行渲染的。在 Canvas 中,一旦图形被绘制完成,它就不会继续得到浏览器的关注。如果其位置发生变化,那么整个场景也需要重新绘制,包括任何或许已被图形覆盖的对象。 SVG 是一种使用 XML 描述 2D 图形的语言。SVG 基于 XML,这意味着 SVG DOM 中的每个元素都是可用的。你可以为某个元素附加 JavaScript 事件处理器。在 SVG 中,每个被绘制的图形均被视为对象。如果 SVG 对象的属性发生变化,那么浏览器能够自动重现图形。 Canvas和SVG相比...阅读全文

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

Sam Altman的成功学|OneFlow

人人适用。 1 选择“复利增长” 复利具有神奇的魔力,现在处处都在强调复利,这其中的奥秘就是指数曲线,因为指数曲线是创造财富的关键。 一家中型企业的价值如果按照每年50%的速度增长,那么它的规模可以在短时间内极速扩张。世界上少有企业具有真正的网络效应和高度的可扩展性,但是随着技术进步,这种情况会逐渐改变,这值得我们不断为之努力。 对个体的人生道路来说,我们也应该走成一条指数曲线,也就是说,我们要遵循不断向右增长的人生轨迹。在进行职业规划时,要选择具有复合效应的职业,而大多数职业的发展轨迹都是一条线性直线。 在线性职业领域,工作二十年的效率并不会比工作两年的效率高,这样的职业不利于个人发展,我们需要的是一份能保持不断学习的职业。随着职业发展我们需要产出越来越多的成果。达成这一目标的途径多种多...阅读全文

深度解密基于 eBPF 的 Kubernetes 问题排查全景图

地实现了进程监测这样的需求。所以,eBPF 可编程的执行引擎非常适合用来将增强可观测性,将丰富的内核数据采集上来,通过关联业务应用,方便问题排查。​三、从监测系统到可观测性随着云原生浪潮,可观测性概念正深入人心。但仍离不开日志、指标、链路这三类可观测领域的数据基石。做过运维或 SRE 的同学经常遇到这样的问题:半夜被拉到应急群里,披头盖地地被质问为什么数据库不工作了,在没有上下文的情况下,无法立刻抓住问题核心。我们认为好的可观测性平台应该帮助用户很好地反馈上下文,就 Datadog 的 CEO 说的那样:监测工具不是功能越多功能越好,而是要思考怎样在不同团队和成员之间架起桥梁,尽可能把信息放在同一个页面中(to bridge the gap between the teams and...阅读全文

博文 2022-03-21 09:11:51 joseph

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

enqueue 在上面介绍 node 的 object 队列大小部分,我们提到将报文排队到下一个 node 的概念。对于普通的 enqueue,就是简单的将当前 node 中处理好的报文,通过使用 rte_memcpy / pointer assignment 作为传递方法, enqueue 到下一个可能的 node。 Home run Home run 则是一种优化的情况,它不普通的 enqueue 把报文复制到下一个 node,而是简单地交换当前 node 和下一个 node 之间的有关于报文的指针(例如报文、报文数目),从而消除 memory copy / pointer assignment 的开销。当满足以下条件时,home run 才会被触发: 所有已处理好的报文都将前往同一个 node...阅读全文

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

Debian 往事: 与已故创始人 Ian Murdock 的昔日访谈

? Linux 系统当时的分割方式基本就是磁盘分割。所以如果你下载了所有的磁盘的话,某种意义上你也就下载了一套 Linux 系统。我们认为这个方法不够好,我们要用更适合分工开发的法子来。 我们决定 Debian 的系统开发由资源包来。也就是说,系统的每一个内容、每一个板块都会以资源包的形式存在,这些资源包能够自动整合成一个完整的系统。你下载了这个资源包的时候,它就知道如何移除自己或是升级自己。 分工也一样按照资源包来,哪个资源包出错了就能非常明确地知道是谁的责任。我们会在开发时设定标准和规定,保证任何来源的资源包都能在我们的系统上照常运行。所以你只要下载全资源包,你就有了一整个系统。这感觉就手工布艺一样,把很多布片拼成一整个作品,只不过实际上原理要比这复杂不少。 当然 Debian 项目的资源包分割法...阅读全文

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

2017 年会是 Serverless 爆发之年吗

、API 应用相同的上下文中运行程序或脚本。可以上传并运行可执行文件,例如 cmd、bat、exe、psl 等等。WebJobs 提供 SDK 用于简化针对 Web 作业可以执行的常见任务,例如图处理、队列处理、RSS 聚合、文件维护,以及发送电子邮件等等。 Serverless 架构原则 按需使用计算服务执行代码 Serverless 架构是 SOA 概念的自然延伸。在 Serverless 架构中,所有自定义代码作为孤立的、独立的、细粒度的函数来编写和执行,这些函数在 AWS Lambda 之类的无状态计算服务中运行。开发人员可以编写函数,执行常见的任务。在比较复杂的情况下,开发人员可以构建更复杂的管道,编排多个函数调用。 编写单一用途的无状态函数单单负责处理某一项任务的函数很容易测试,并稳...阅读全文

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

如何使用 journalctl 清理 journal 日志

太大也会造成与传统日志传输协议的不兼容(太长的日志无法封装在单个 AF_UNIX 或 AF_INET 报文内)。 此选项的值以字节为单位,同时也可以在数字的末尾加上 K, M, G, T 后缀(以1024为基准)。 默认值 48K 是一个足够大并且也能保持与传统日志传输协议兼容的值。 注意,不能设为小于 79 的值(将被自动提升到79)。 日志转发 有两种不同的日志转发方法: (1)通过套接字文件(/run/systemd/journal/syslog) 可以将收集到的日志消息 立即转发给套接字的监听进程(传统的 syslog 守护进程)。 此方法受 ForwardToSyslog= 指令的控制。 (2)日志接收进程作为客户端运行,就 journalctl(1) 一样读取日志文件。 因此...阅读全文

博文 2021-02-05 15:43:28 博客园

深入理解Golang之context

选择执行哪个取消选项。考虑下面这种情况:假如主协程中有多个任务1, 2, …m,主协程对这些任务有超时控制;而其中任务1又有多个子任务1, 2, …n,任务1对这些子任务也有自己的超时控制,那么这些子任务既要感知主协程的取消信号,也需要感知任务1的取消信号。如果还是使用done channel的用法,我们需要定义两个done channel,子任务们需要同时监听这两个done channel。嗯,这样其实好也还行哈。但是如果层级更深,如果这些子任务还有子任务,那么使用done channel的方式将会变得非常繁琐且混乱。我们需要一种优雅的方案来实现这样一种机制:上层任务取消后,所有的下层任务都会被取消;中间某一层的任务取消后,只会将当前任务的下层任务取消,而不会影响上层的任务以及同级任务...阅读全文

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

Debian 9 使用kubeadm创建 k8s 集群(下)

改Docker映名称和任何相关标志(如ports和volumes ),也可以将以下命令用于其他容器化应用程序。 仍在主节点内,执行以下命令以创建名为nginx的部署: kubectl create deployment nginx --image=nginx 部署是一种Kubernetes对象,可确保始终根据已定义的模板运行指定数量的pod,即使pod在群集生命周期内崩溃也是如此。 上面的部署将使用Docker注册表的Nginx Docker Image创建一个包含一个容器的pod。 接下来,运行以下命令以创建名为nginx的服务,该服务将公开公开该应用程序。 它将通过NodePort实现 ,该方案将通过在群集的每个节点上打开的任意端口访问pod: kubectl expose...阅读全文

博文 2019-05-13 22:57:41 debian.cn

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

都要用G1垃圾收集器,因为年轻代内存比较大,用G1可以设置GC最大停顿时间,不至于一次minor gc就花费太长时间,当然,因为kafka,rocketmq,es这些中间件,写数据到磁盘会用到操作系统的page cache,所以JVM内存不宜分配过大,需要给操作系统的缓存留出几个G。 2.1 线上问题及优化 2.1.1 消息丢失情况 消息发送端: (1)acks=0: 表示producer不需要等待任何broker确认收到消息的回复,就可以继续发送下一条消息。性能最高,但是最容易丢消息。大数据统计报表场景,对性能要求很高,对数据丢失不敏感的情况可以用这种。 (2)acks=1: 至少要等待leader已经成功将数据写入本地log,但是不需要等待所有follower是否成功写入。就可以继续发...阅读全文

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

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

了一个小时。但是我的水平有限,结果可想而知。我肯定也知道没过,然后我就请教面试官,需要提升的地方,学**哪方面的内容。 于是我去学习,一个月过去了。 第二次面试,也是阿里 B2B 的岗位,我不知道那个时候有没有招聘的公海,按照我的理解是没有的,然后我肯定不会有这么多次机会。这次的面试和上次很,只不过内容换成了多线程并发相关的知识。我又不知道,面试官还是很容忍我,最后没通过,我同样为了需要什么提高。 于是我去学习,一个月又过去了。 第三次面试,是淘宝,应该是广告部门。这次面试,我觉得除了不知道的内容,其他的内容都还回答的蛮正确的。但是面试官,拿着面试题就和我聊了,然后讲到一个数据库方面的知识时(内连接,外连接),我说不知道。面试官说:这么基础的问题你都不会,这是不能容忍的,其实当时很伤心。有...阅读全文

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

在 Kubernetes 上扩展 TensorFlow 模型

。 ![img](https://static001.infoq.cn/resource/image/01/48/017b7bf3a8yye0c784ecaca155a75d48.jpg) 默认情况下,KPA 基于每个 pod 的平均传入请求数对模型进行扩展。KFServing 将默认的并发的目标数量设置为 1,这意味着如果服务收到三个请求,KPA 将把它扩展到三个 pod 副本。你可以通过更改 **autoscaling.knative.dev/target** 注释来定制这个行为,就上面的例子一样,你把它设置为 10。一旦启用此设置,只有当并发的请求数增加到 10 时,KPA 才会增加副本数。 通过 KFServing,你可以配置其他自动扩展目标。举例来说,你可以使用 **requests-per...阅读全文

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

且将元数据保存在kafka自己的服务器当中,大大提高了kafka的元数据管理的性能。KRaft运行模式的Kafka集群,不会将元数据存储在Apache ZooKeeper中。即部署新集群的时候,无需部署ZooKeeper集群,因为Kafka将元数据存储在Controller节点的KRaft Quorum中。KRaft可以带来很多好处,比如可以支持更多的分区,更快速的切换Controller,也可以避免Controller缓存的元数据和Zookeeper存储的数据不一致带来的一系列问题。在新的版本当中,控制器Controller节点我们可以自己进行指定,这样最大的好处就是我们可以自己选择一些配置比较好的机器成为Controller节点,而不在之前的版本当中,我们无法指定哪台机器成为...阅读全文

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

Apache Flink 1.14 新特性预览 - OSCHINA

时间来看,整个任务初始化,调度以及部署的阶段,大概能够减少分钟级的时间消耗。 2. 细粒度资源管理 细粒度资源管理在过去很多的版本都一直在做,在 Flink1.14 终于可以把这一部分 API 开放出来在 DataSteam 提供给用户使用了。用户可以在 DataStream 中自定义 SlotSharingGroup 的划分情况,如下图所示的方式去定义 Slot 的资源划分,实现了支持 DataStream API,自定义 SSG 划分方式以及资源配置 TaskManager 动态资源扣减。 对于每一个 Slot 可以通过比较细粒度的配置,我们在 Runtime 上会自动根据用户资源配置进行动态的资源切割。 这样做的好处是不会之前那样有固定资源的 Slot,而是做资源的动态扣减,通过这样...阅读全文

博文 2021-09-05 07:26:58 中文开源技术交流社区

7大维度看国外企业为啥选择gRPC打造高性能微服务

,基于RESTful API的工具。 不幸的是,这感觉就试图将简单的方法调用变成一个数据驱动的RESTful界面。这满足了RESTful接口的verb,header,URL标识符,资源的URL和有效载荷的神奇组合,并做了一个清洁,简单,看起来几乎不可能实现的功能界面。RESTful有很多规则和解释,在大多数情况下会导致REST ish接口,这需要花费额外的时间和精力来保持其纯度。 最终,考虑到RESTAPI的复杂性,我们找到了替代方案。希望微服务尽可能相互隔离,减少交互和解耦服务。它可以让企业在很短的时间内创造出一个可行的服务,并防止跳过hoops。 评估REST的替代方案 不要轻易选择通信框架。大型组织(如Netflix)可以拥有超过500+个微服务的后端系统。迁移这些服务以取代不充分的服...阅读全文

博文 2018-03-19 17:51:32 debian.cn

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

个基础架构提供者的格式。 但是没有两个服务是完全相同的,服务有很多类型,有时候称其为服务模型。服务模型可能构成Shakespeare服务的简单服务:有前端,负载均衡器以及数据库。服务模型仅需要知道运行哪个二进制文件,在多少集群里运行它,以及数据库schema。服务模型的逻辑随后扩展该服务的配置。比如,服务模型能够将集群列表转化为负载均衡器基础架构的配置。 实际上,服务模型可能就是简单的一段脚本,将一个配置文件扩展为基础架构所需要的东西;服务模型也可能是复杂的pipeline。 如果你在处理多个服务模型以及多个基础架构提供者,就不得不维护N个服务模型和M个基础架构提供者之间的集成。这样的集成包括为每个提供者生成特定的配置并且部署它们——这个程序对于不同的提供者可能大不相同。 我们称之为NM问...阅读全文

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

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

]); } } } return dp[m][n]; } public static void main(String[] args) { String str1 = "BDCABA"; String str2 = "ABCBDAB"; int array = MaxTwoArraySameOrderMethod(str1,str2); System.out.println(array); } } 6、背包问题 在N件物品取出若干件放在容量为W的背包里,每件物品的体积为W1,W2……Wn(Wi为整数),与之相对应的价值为P1,P2……Pn(Pi为整数),求背包能够容纳的最大价值。 这种固定数值的组合问题,比如这个问题的W总容量,跟下个实例零钱问题的总钱数,都是适合用动态规划来解决的问题,对于这样的问题,动态规划的解法就...阅读全文

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

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

> [flags] [operator] ... :ACL名称,区分字符大小写,且其只能包含大小写字母、数字、-(连接线)、_(下划线)、.(点号)和:(冒号);haproxy中,acl可以重名,这可以把多个测试条件定义为一个共同的acl; :测试标准,即对什么信息发起测试;测试方式可以由[flags]指定的标志进行调整;而有些测试标准也可以需要为其在之前指定一个操作符[operator]; [flags]:目前haproxy的acl支持的标志位有3个: -i:不区分中模式字符的大小写; -f:从指定的文件中加载模式; --:标志符的强制结束标记,在模式中的字符串标记符时使用; :acl测试条件支持的值有以下四类: 整...阅读全文

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