InfraPub 为您找到相关结果 241

2017 年会是 Serverless 爆发之年吗

站)。一般来说包含客户端、服务端程序、数据库,服务端用 Java 开发完成,客户端用 JavaScript。 采用这种架构,服务端需要实现诸多系统逻辑,例如认证、页面导航、搜索、交易等都需要在服务端完成。如果采用 Serverless 架构来对该应用进行改造,则架构如图所示: Serverless 架构相比于传统面向客户端的三层应用架构,有以下几方面的差异: 删除认证逻辑,用第三方 BaaS 服务替代; 使用另外一个 BaaS,允许客户端直接访问架构与第三方(例如 AWS Dynamo)上面的数子库。通过这种方式提供给客户更安全的访问数据库模式; 前两点中包含着很重要的第三点,也就是以前运行在服务端的逻辑转移到客户端中,例如跟踪用户访问。客户端则慢慢转化为单页面应用。 计算敏感或者需要访问...阅读全文

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

如何校验 Debian 软件包的 MD5

apt install debsums 现在可以了解如何使用debsums工具,来校验已安装软件包的MD5和了。 说明:我在下面的所有命令中使用了sudo,因为普通用户可能没有某些文件的读取权限。 此外,来自debsums命令的输出在左边显示了文件位置,在右边显示了检验结果。你会得到三种可能的结果,它们包括: OK――表明某个文件的MD5和是好的。 FAILED――表明某个文件的MD5和不匹配。 REPLACED――意味着某个特定文件已被来自另一个软件包的文件所更。 如果你不用任何选项来运行,debsums会对照常规的md5sum文件来校验系统上的每个文件。 $ sudo debsums 扫描文件系统、寻找MD5和 /usr/bin/a11y-profile-manager-indicator...阅读全文

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

为保护隐私而生 反取证操作系统:Kodachi

免费内置 VPN DNSCrypt 多个 Tor 出口节点转器 多个 DNS 选项 Vera 加密 PeerGuardian(P2P网络安全软件) Bleachbit、Nautilus-wipe、Keepass2xdotool、Seahorse、Gpa、Gnupg2、Enigmail、ufw、gufw、firejail Komodo / Geany 开发环境,Krusader 文件管理器、Meld 代码对比、Shutter 多媒体、FileZilla、Audicity 音频处理、Terminator、Transmission、VirtualBox APPS Htop 进程浏览器、Rdesktop、Gksu、Ncdu、Xtrlock、Nmap、Pcmanfm、Cairo-dock、Geoip...阅读全文

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

十条关于 WordPress 安全性的小贴士

到 HTTPS HTTPS 可阻止第三方侦听或修改客户端和服务器之间通信的 中间人攻击 。理想情况下,应该在安装 WordPress 前激活 HTTPS,如果在安装后再添加,可能需要更新 WordPress 设置。 HTTPS 还可以提升网站的 Goggle PageRank。诸如 SiteGround 这类网站托管服务提供商会提供免费的 SSL 证书。 2. 限制 MySQL 连接地址 确保你的 MySQL 数据库拒绝来自外部的人员和系统连接到本地服务器的行为。大多数受管理的 Web 主机默认情况下都会执行此操作,但那些使用专用服务器的主机可以将下面的代码添加到 MySQL my.cnf 配置文件的 [mysqld] 部分: bind-address = 127.0.0.1 3. 使用强...阅读全文

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

本田 40GB 数据险遭泄漏 因云端数据库未设密

近日,一位安全研究员在博客上表示发现了本田公司的云端数据库未设密码,这可能导致 1.34 亿份文档,约 40GB 数据被泄漏,其中包括机器主机名、MAC 地址、内部 IP 及操作系统版本等。在收到该研究员的提醒后,本田方面已对漏洞进行修复。 本田 1.34 亿份文档,40GB 数据险遭泄漏 根据安全研究员 Justin Paine 的说法,自 2019 年 7 月 1 日起,他就发现了本田对外暴露的 ElasticSearch 数据库未设置任何密码,内部包含大约 1.34 亿份文档,这些文档可以转为大约 40GB 数据,而这些数据的日期最早可以追溯至 2019 年 3 月左右。 最初,Justin Paine 以为这些数据来自本田的一家经销商,但他很快否定了这一想法,因为这些文档包含了本...阅读全文

nsenter 及 Linux命名空间 简介

, argv[1]); setns clone用于创建新的命令空间,而setns则用来让当前线程(单线程即进程)加入一个命名空间。语法: #define _GNU_SOURCE /* See feature_test_macros(7) */ #include int setns(int fd, int nstype); fd参数是一个指向一个命名空间的文件描述符,位于/proc/PID/ns/目录。nstype指定了允许进入的命名空间,一般可设置为0,表示允许进入所有命名空间。 因此,往往该函数的用法为: 调用setns函数:指定该线程的命名空间。调用execvp函数:执行指定路径的程序,创建子进程并替父进程。 这样,就可以指定命名空间运行新的程序了。代码示例: #define...阅读全文

博文 2020-12-15 11:22:44 debian.cn

Terraform 学习总结 — Terraform 简介

" "rg" { name = "NickResourceGroup" location = "eastasia" } 用 init 命令用来初始化工作目录 把当前目录切到 createrg.tf 文件所在的目录,然后执行 init 命令: $ terraform init 其实就是把 createrg.tf 文件中指定的驱动程序安装到当前目录下的 .terraform 目录中: 通过 plan 命令检查配置文件 plan 命令会检查配置文件并生成执行计划,如果发现配置文件中有错误会直接报错: $ . azureEnv.sh $ terraform plan 通过 plan 命令的输出,我们可以清楚的看到即将在目标环境中执行的任务。 使用 graph 命令生成可视化的图表 其实 graph 命令只...阅读全文

APISIX Ingress 如何使用 Cert Manager 管理证书

Apache APISIX Ingress Controller 是一款以 Apache APISIX 作为数据面的 Kubernetes Ingress Controller 开源工具,目前已经更新到 v1.3 版本,实现了如证书管理、负载均衡、金丝雀发布等功能。 长久以来,证书管理都不是一件简单的事情,虽然 Apache APISIX Ingress Controller 支持从 Kubernetes Secrets 资源中提取证书和私钥,并转为 Apache APISIX 可识别的 SSL 对象,但这只是整个证书管理链中的一部分,证书的颁发、轮转、吊销逻辑依然需要管理员执行,尤其当证书数量比较多时,工作量往往并不小,因而会占用管理员不少的时间。 Cert Manager 是一款致力...阅读全文

博文 2023-02-09 07:38:06 中文开源技术交流社区

Debian 11 "bullseye" 发布,带来内核 exFAT 支持

/log/journal/。请参见 systemd-journald.service(8) 以了解细节;请注意 Debian 中的日志除了默认的 systemd-journal 组外,还可以被 adm 用户组内的成员阅读。这项改动应该不会对任何已有的传统日志守护程序(例如 rsyslog)产生任何干扰,但是不依赖这些守护程序所提供的特别功能的用户应当考虑将传统日志程序卸载并切到仅使用新的 systemd 日志工具。新的 Fcitx 5 输入法Fcitx 5 是用于中文、日语、韩语和其它许多语言的一个输入法。它是 buster 提供的 Fcitx 4 的后续版本。新版本增加了对 Wayland 的支持并改进了扩展支持。内核 exFAT 支持bullseye 是第一个提供支持 exFAT 文件系统的...阅读全文

TLS1.3 正式版发布 — 特性与开启方式科普

互联网工程指导委员会(IETF)释出了传输层安全性协议的最新版本 TLS 1.3。TLS 被广泛用于创建安全连接,TLS 1.3 是基于 TLS 1.2,主要区别是移除了较少使用的弱加密算法,移除 MD5 和 SHA-224 哈希支持,请求数字签名,集成 HKDF,移除许多不安全或过时特性的支持,不再支持静态 RSA 密钥交,握手将默认使用前向安全 Diffie-Hellman,客户端只需要一次往返就能与服务器建立安全和验证的连接,等等。Firefox 和 Chrome 都已经支持 TLS 1.3 的草拟版本。 TLS 1.3是一种新的加密协议,它既能提高各地互联网用户的访问速度,又能增强安全性。我们把使互联网实现安全通信的基础性技术称为传输层安全协议(TLS)。TLS是安全套接层协议...阅读全文

博文 2018-08-14 14:40:05 debian.cn

为何说微软不会基于Linux内核重构Windows

(translation layer)转为 WSL 2 中的虚拟化内核,因此重新实现利用 Linux ABI 的数十种非标准方式是非常痛苦的事情。为微软拥有的 Linux 上的SQL Server 提供一个 NT 相关的兼容层是一回事,为其他数百万开发者的应用提供保证是另一回事。 3.微软投入巨大 近年来,微软在 Windows 上倾注的人力物力已经无法计算。微软在 Windows 10 的可用性、新功能、性能改进等多方面进行了优化投资,并取得了回报。在这些改进的基础上,通过和 OEM 厂商的合作,以及推出 Surface 品牌,已经帮助振兴了 PC 市场。 微软一直在努力使 Windows 成为一个优秀的开发平台,其项目包括 Windows Terminal、PowerToys、Windows...阅读全文

博文 2020-10-15 14:59:58 debian.cn

HTTP状态码详解

请求的剩余部分,或者如果请求已经完成,忽略这个响应。服务器必须在请求完成后向客户端发送一个最终响应。 101 服务器已经理解了客户端的请求,并将通过Upgrade 消息头通知客户端采用不同的协议来完成这个请求。在发送完这个响应最后的空行后,服务器将会切到在Upgrade 消息头中定义的那些协议。 只有在切新的协议更有好处的时候才应该采取类似措施。例如,切到新的HTTP 版本比旧版本更有优势,或者切到一个实时且同步的协议以传送利用此类特性的资源。 102 由WebDAV(RFC 2518)扩展的状态码,代表处理将被继续执行。 2xx 成功 这一类型的状态码,代表请求已成功被服务器接收、理解、并接受。 200 请求已成功,请求所希望的响应头或数据体将随此响应返回。 201 请求已经被实现...阅读全文

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

Gitlab CI 配置文件 .gitlab

job名称和当前分支名称或者是tag作为存档名称,只存档没有被Git跟踪的文件: job: artifacts: name: "${CI_JOB_NAME}_${CI_COMMIT_REF_NAME}" untracked: true 使用当前stage和分支名称作为存档名称: job: artifacts: name: "${CI_JOB_STAGE}_${CI_COMMIT_REF_NAME}" untracked: true 如果是使用Windows批处理来运行yaml脚本,需要用%替$: job: artifacts: name: "%CI_JOB_STAGE%_%CI_COMMIT_REF_NAME%" untracked: true artifacts:when GitLab...阅读全文

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

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

什么,因为与火狐、LibreOffice和GIMP一样,它大概是世界上最著名的开源软件之一! 这是一款用途广泛的桌面媒体播放器,可以处理你扔给它的几乎任何媒体格式,播放DVD,甚至还能将视频由一种格式转码成另一种格式。 替代方案:SMPlayer(Qt)。 5. Unity Tweak Tool实用工具 Unity Tweak Tool可谓是Ubuntu Unity桌面界的瑞士军刀,它让你可以微调和定制桌面来适合自己的口味。无论你想试用一种新潮的GTK主题、更图标集、调整应用程序菜单的大小或行为、设置触发角,还是缩小Unity启动器的尺寸,它都能满足要求。 从高级配置选项到普通选项:如果某个项可以调整,那么Unity Tweak Tool很可能有相应的切开关! 6. Caffeine锁屏...阅读全文

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

协议介绍之深入了解 gRPC

大的提高一条连接上面的 stream 并发,可以考虑调大 SETTINGS_MAX_CONCURRENT_STREAMS,在 TiKV 里面,我们就遇到过这个值比较小,整体吞吐上不去的问题。 这里还需要注意,虽然一条连接上面能够处理更多的请求了,但一条连接远远是不够的。一条连接通常只有一个线程来处理,所以并不能充分利用服务器多核的优势。同时,每个请求编解码还是有开销的,所以用一条连接还是会出现瓶颈。 在 TiKV 有一个版本中,我们就过分相信一条连接跑多 streams 这种方式没有问题,就让 client 只用一条连接跟 TiKV 交互,结果发现性能完全没法用,不光处理连接的线程 CPU 跑满,整体的性能也上不去,后来我们成了多条连接,情况才好转。 Priority 因为一条连接允许多个...阅读全文

博文 2017-06-22 11:08:48 debian.cn

在 Kubernetes 上扩展 TensorFlow 模型

管理、流量分割和版本管理。然而,这个选项并没有提供自动扩展功能。 - **Seldon Core** 是一款第三方工具,可用于 Kubeflow 抽象和资源。它支持多种机器学习框架,包括 TensorFlow,并允许将训练好的 TensorFlow 模型转为 REST/gRPC 微服务,运行在 Kubernetes 中。Seldon Core 默认支持模型自动扩展。 - **BentoML** 是 Kubeflow 使用的另一个第三方工具,它提供高级的模型服务功能,包括自动扩展,以及支持微批处理的高性能 API 模型服务器。 在下一节中,我将展示如何使用 KFServing 对训练好的 TensorFlow 模型进行自动扩展,KFServing 是默认的 Kubeflow 安装中的一个模块...阅读全文

案例:Redis命令不当 引起数据库雪崩 造成数百万损失

,CPU持续上升到99% 5分钟内,大量应用报警,并且拒绝服务,RDS的监控显示出现大量慢SQL,联系服务器数据库提供商进行协助 8分钟内,进行数据库主备切(业务会受损,但是也没办法,没有定位到问题) 9分钟内,部分业务恢复,但是一些业务订单的回调消息堆积超过20w,备库的CPU使用率也持续上升 15分钟内,备库CPU使用率超过97%,业务再次中断,进行切回主库,并进行限流 20分钟内,关闭一些次要应用的流量入口 25分钟内,主库CPU使用率恢复正常 30分钟内,逐步开启关闭的限流应用 35分钟内,所有应用恢复正常 接下来就是与服务器数据库提供商成立应急小组紧急优化可能出现的慢SQL,虽然说可能解决了一些慢SQL,但此次并没有定位到具体的问题,也就为几天后再次发生宕机事件埋下了伏笔 事故影响 某...阅读全文

博文 2018-10-27 10:18:18 debian.cn

Web前端知识体系精简

容器中的元素适应新大小。Flex容器也可以设置伸缩比例和固定宽度,还可以设置容器中元素的排列方向(横向和纵向)和是否支持元素的自动行。有了这个神器,做页面布局的可以方便很多了。注意,设为Flex布局以后,子元素的float、clear和vertical-align属性将失效。 6、过渡 Transition 、旋转 Transform 应用transform可以对元素进行平移(translate)、旋转(rotate)、放大缩小(scale)、倾斜(skew)等处理,而transition使css属性值(包括transform)在一段时间内平滑的过渡。使用transition和transform就可以实现页面的滑动切效果。 7、动画 Animation Animation首先需要设置一个...阅读全文

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

大起底:揭开亚马逊云计算丰厚利润的秘密 - 电子商务

”、“简单存储服务”等数据存储业务,再加上保存和提取数据的”关系数据库服务”和数据迁移费,这占到了亚马逊云计算的七成收入。不过在今天,亚马逊更加注重更复杂的高级云计算功能,它们不仅利润率高,而且让企业客户切服务商的成本更高。比如在五月份,塞林普斯基在Twitter上介绍了一个新服务“应用运行器”(App Runner),可以在虚拟容器中部署应用软件,这可以让企业用户把精力集中在业务构建上,而不是管理“容器”或是“基础设施”。美国贝尔斯登研究公司六月份发布的一份报告指出,2015年,亚马逊云计算14%的收入来自于高毛利的“平台即服务”云计算产品,其余来自于低端的“基础设施即服务”产品。但是贝尔斯登认为,在去年上半年,平台即服务的收入占比已经提高到了18%。美国科技业人士乔·金塞拉(Joe...阅读全文

博文 2021-09-07 11:41:54 cnBeta.COM

OpenAI掌门人Sam Altman:AI的下一个发展阶段_OneFlow

来源|Greylock OneFlow社区编译 翻译|胡燕君、贾川 预告了一整年的GPT-4迟迟没来,人们猜想OpenAI是不是要跳票了,更何况他们之前的得意之作DALL-E也被开源Stable Diffusion打了个措手不及,再不来点深水炸弹业界地位危矣。 不过,就在大家以为今年OpenAI将以沉寂收场时,聊天机器人模型ChatGPT横空出世,让人们看到了AI的更大创造力,聚光灯也再度打到了OpenAI的身上。 今年9月,LinkedIn联合创始人Reid Hoffman与OpenAI首席执行官Sam Altman进行了一场对话,而肩负着宏伟使命且极富远见的Altman就曾预言:AI即将迎来下一个发展阶段。如今,大型语言模型越来越先进,也出现了可以实现文本-图像相互转的多模态模型,一...阅读全文

博文 2023-02-04 15:55:11 CSDN博客

aptitude 与 apt

一些发行版中我们也能看到它的身影。 Apt是一个很完整和先进的软件包管理程序,使用它可以让你又简单,又准确的找到你要的的软件包, 并且安装或卸载都很简洁。 它还可以让你的所有软件都更新到最新状态,而且也可以用来对 Debian/Ubuntu 进行升级。apt是需要用命令来操作的软件,不过现在也出现了很多有图形的软件,比如 Synaptic, Kynaptic 和 Adept。 命令样例 下面将要介绍的命令大部分需要sudo,使用时请将“packagename”和“string”替成您想要安装或者查找的程序。 apt-get update —— 在修改/etc/apt/sources.list或者/etc/apt/preferences之後运行该命令。此外您需要定期运行这一命令以确保您的软件...阅读全文

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

分布式任务调度平台 XXL

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

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

成为Debian社区维护人需要做好的准备

Bug、回应用户请求),来使你的 sponsor 相信你已经有能力来处理好某个特定软件包,这样他们才会在接下来的申请流程中推荐你。 一些 sponsor 会在他们觉得合适时向你提议申请 DM,另外一些不会,作为新维护人员要在自己觉得差不多合适的情况下和 sponsor 进行沟通,听取他的意见看是否可以申请。 6. 申请 DM 前要让至少一位你 sponsor 之外的 DD 对你的 GPG 密钥进行数字签名,且密钥本身至少要 2048 RSA 或更强。签署密钥不需要对技能的考察,其目的是确认每个密钥的控制者确实是他本人,从而构建 Web of Trust,因而任何人都可以参与到密钥签名活动当中。签名时一般需要双方在现实生活中见面,互相检查身份证或护照确认无误后,交事先打印好的 GPG key...阅读全文

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

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

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

Ceph 12.2.0 正式版本发布, 代号 Luminous

SSD来调整其默认配置。一般不需要手动调整。 原型mclock QoS排队算法已经可用。 新增一种退出机制,可以防止OSD出现对当前不能处理IO对象或PG的请求过载情况。 OSD更过程简化,变得更加强大了。 您可以使用ceph功能来查询所有连接的后台程序和客户端的支持功能和版本。 通过ceph osd set-require-min-compat-client连接到集群,您可以配置最旧的Ceph客户端版本,但 Ceph将阻止您启用会破坏与这些客户端的兼容性的功能。 包括osd_recovery_sleep,osd_snap_trim_sleep和osd_scrub_sleep的几个睡眠设置,已经被重新实现,并且可以有效地工作。(这些在某些情况下用于解决问题,限制后台工作。) 完成对...阅读全文

博文 2017-08-31 13:36:49 debian.cn

如何在 Debian 下配置邮件服务器

程中的演示只是运行在实验室环境中。测试DNS服务器所有必要的记录都已配置,并且用户之间的邮件可以在相同的服务器上发送(相同的域交)。为了让事情更有趣,多邮件服务器可以被部署到不同的域来检查电子邮件如何跨域通信,因为必要的DNS记录都已存在。 对外的邮件服务器有效的DNS记录。 Postfix和Dovecot的的设置,可以根据需要进行调整。 警告:如果想要部署邮件服务器任何能够访问互联网邮件服务器,请确保您的SMTP是安全的。互联网以及来自局域网内部的恶意软件都是可以攻击SMTP的。...阅读全文

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

树莓派 9 周年:你不知道的树莓派冷知识

实验。尽管 Pis 已经是比较旧的树莓派型号,但最近 Astro Pi 项目组刚刚对它们进行了内存升级,把 32 GB SD 卡成了 256 GB 的 microSD 卡。7.树莓派基金会希望老款的产品也能永远存在尽管 Raspberry Pi B +,Raspberry Pi 2,Raspberry Pi 3 B 和其他一些老款型号的树莓派产品已经发布了很多年,但树莓派基金会仍在继续积极地制造并销售它们。树莓派官方表示不会报废(EOL)产品,因为树莓派低成本的特性,这些老款的树莓派在很多对设备性能要求并不高的工业客户中依然很受欢迎。 树莓派创始人 Upton 在 2019 年接受媒体采访时曾表示:“停产意味着产品的死亡,我们迄今为止仅停产了 5 种产品。”他说,树莓派目前停产的仅有 5...阅读全文

博文 2021-03-11 17:03:55 diablo4

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

Thrift 缺失的能力。 Thriftgo 目前虽然仅支持生成 Golang Thrift 代码,但其定位是可支持各语言的 Thrift 代码生成,未来如果有需求,我们会考虑生成其他语言的代码。同时我们也会尝试将其回馈至 Apache Thrift 社区。 Netpoll-http2 Netpoll-http2 基于 Golang 标准库 golang.org/x/net/http2 的源码替 go net 为 Netpoll,目前用于 Kitex 对 gRPC 协议的支持,对 HTTP2 有需求的外部开发者也可以使用此库。 前面提到字节跳动会坚持内外维护一套代码,为了遵守长期投入承诺,其基础架构团队已经将与内部生态没有耦合的项目,如 Netpoll,直接迁移到 CloudWeGo 开源库,并将内...阅读全文

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

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

个简化的Web应用,由这些部分组成: 为了冗余而在两个集群上运行的二进制文件,实现前段逻辑负载均衡,有集群前和全局的配置全局的Spanner数据库 生产或者服务基础架构提供服务所需的基础模块来服务用户的请求,比如,Borg集群管理系统[2],网络交机的firmware等等。每个这些组件都是一个asset。 Shakespeare服务使用多个基础架构提供者:Borg来运行二进制文件,GSLB[1]管理负载均衡,以及Google共享的Spanner基础架构。 控制平面是服务用于管理生产服务基础结构的平面——比如,添加一台VM或者搭建负载均衡器。控制平面可以包括人工(“我会把新的二进制文件拷贝到服务器上”)到复杂的自动化系统(“我使用机器学习来控制变更”)。控制平面包括变更管理:控制平面里的逻辑...阅读全文

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

Hadoop 核心 - HDFS 分布式文件系统详解

/hadoopDatas/dfs/nn/edits hdfs oev -i edits_0000000000000000112-0000000000000000113 -o myedit.xml -p XML 9.5 secondarynameNode如何辅助管理FSImage与Edits文件 secnonaryNN通知NameNode切editlog。 secondaryNN从NameNode中获得FSImage和editlog(通过http方式)。 secondaryNN将FSImage载入内存,然后开始合并editlog,合并之后成为新的fsimage。 secondaryNN将新的fsimage发回给NameNode。 NameNode用新的fsimage替旧的fsimage。 完成合并的是...阅读全文

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

详细徐叙述 2、设置数组边界值,一维数组就是设置第一个数字,二维数组就是设置第一行跟第一列的值,特别的滚动一维数组是要设置整个数组的值,然后根据后面不同的数据加进来变幻成不同的值。 3、找出状态转方程,也就是说找到每个状态跟他上一个状态的关系,根据状态转化方程写出代码。 4、返回需要的值,一般是数组的最后一个或者二维数组的最右下角。 代码基本框架: for(j=1; j<=m; j=j+1) // 第一个阶段 xn[j] = 初始值; for(i=n-1; i>=1; i=i-1)// 其他n-1个阶段 for(j=1; j>=f(i); j=j+1)//f(i)与i有关的表达式 xi[j]=j=max(或min){g(xi-[j1:j2]), ......, g(xi-1[jk:jk+1...阅读全文

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

RabbitMQ 高可用实现镜像队列

队列机制,将 queue 镜像到 cluster 中其他的节点之上。在该实现下,如果集群中的一个节点失效了,queue 能自动地切到镜像中的另一个节点以保证服务的可用性。 在通常的用法中,针对每一个镜像队列都包含一个 master 和多个 slave,分别对应于不同的节点。slave 会准确地按照 master 执行命令的顺序进行命令执行,故slave 与 master 上维护的状态应该是相同的。除了 publish 外所有动作都只会向master 发送,然后由 master 将命令执行的结果广播给 slave 们,故看似从镜像队列中的消费操作实际上是在 master 上执行的。 一旦完成了选中的 slave 被提升为 master 的动作,发送到镜像队列的 message 将不会再丢失...阅读全文

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

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

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

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

处理器架构消亡史

,X86依旧屹立不倒,但对抗他的玩家却了一批,这一轮与他竞争的是ARM和RISC—V两个阵营。从后两者的发展来看,近些年来,他们都在积极向PC市场做扩展。同时,在大数据时代的推动下,他们也有有意向服务器市场方向发展。但对于这一块市场来说,英特尔在该领域已经建立起了强大的优势,除了产品外,生态也是他们能够固守城市的一个有利武器。IBM所推出的POWER被视为是在现在的服务器市场占有一定地位的架构,但POWER架构也没有在通用市场打过英特尔,POWER架构在例如银行、航空公司、公安系统等高端应用中较为广泛,采用这种架构的产品作为小型机,封闭系统,其设计更加完整紧凑,综合起来性能强于X86。在特定的市场中发展的思路,让POWER架构得以在竞争激烈的处理器架构竞争中存活了下来。而这或许也为后来的挑战者...阅读全文

Golang 操作 Kafka 样例

有更好的吞吐量,内置的分区,冗余及容错性,这让Kafka成为了一个很好的大规模消息处理应用的解决方案。消息系统 一般吞吐量相对较低,但是需要更小的端到端延时,并尝尝依赖于Kafka提供的强大的持久性保障。在这个领域,Kafka足以媲美传统消息系统,如ActiveMR或RabbitMQ 站点的用户活动追踪: 为了更好地理解用户行为,改善用户体验,将用户查看了哪个页面、点击了哪些内容等信息发送到每个数据中心的Kafka集群上,并通过Hadoop进行分析、生成日常报告。 流处理:保存收集流数据,以提供之后对接的Storm或其他流式计算框架进行处理。很多用户会将那些从原始topic来的数据进行 阶段性处理,汇总,扩充或者以其他的方式转到新的topic下再继续后面的处理。例如一个文章推荐的处理流程...阅读全文

博文 2023-01-10 13:46:09 掘金

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

高可用性。使Prometheus高可用的一种方式是运行多个实例去scraping相同的作业。这些实例在抓取指标时会因微小的时间间隔差异而在数据中产生细微差异。此外,如果其中一个实例宕机了几个小时,那么当查询转发到该实例时,将会出现数据空白。如果我们使用grafana这样的工具将指标展示为图形,我们可能会得到不同的样本值或有数据缺失的图形。可以将Cortex配置为从多个HA Prometheus实例读取数据。它从一个主实例main接受指标,并从其他实例放弃该度量。一旦这个副本掉线,Cortex会无缝切到另一副本并将其标记为主副本main。为此,Cortex着眼于两个标签,一个共同的标签与一个集群(或一组Prometheus)相关联,另一个识别副本。全局指标视图可以将Prometheus实例配...阅读全文

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

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

controller节点要么是Active状态,或者就是standBy状态。Process.Roles使用KRaft模式来运行kafka集群的话,我们有一个配置叫做Process.Roles必须配置,这个参数有以下四个值可以进行配置:Process.Roles=Broker, 服务器在KRaft模式中充当Broker。Process.Roles=Controller, 服务器在KRaft模式下充当Controller。Process.Roles=Broker,Controller,服务器在KRaft模式中同时充当Broker和Controller。如果process.roles没有设置。那么集群就假定是运行在ZooKeeper模式下。如果需要从zookeeper模式转成为KRaft模式,那么需要进行重新格式...阅读全文

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

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

我们正处于gRPC采用的开始阶段,期待社区提供更多的工具和技术。很高兴能够加入这个充满活力的社区,并对未来的项目有一些想法,我们希望看到这些项目是开放源代码或我们自己写的。 gRPC工具的当前状态 gRPC比较新,缺乏可用的开发工具,特别是与经验丰富的REST over HTTP / 1.1协议相比。搜索教程和示例时,这一点尤其明显,因为只有少数有用的信息。二进制格式也使消息不透明,需要努力解码。虽然有一些选择,例如JSON代码转器可以帮助,但预计需要做一些基础工作,以便为gRPC提供顺畅的开发体验。 我们喜欢用Apiary 来记录外部API。使用服务协议缓冲区(protobuf)文件自动生成交互式文档的等价物,将是理想的有效的内部通信gRPCAPI。protobuf文件的静态分析在运行时...阅读全文

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

得物云原生全链路追踪Trace2.0-采集篇 - OSCHINA

塞队列性能更好的 Mpsc (多生产单消费)队列,它使用大量的 long 类型字段来做内存区域填充,用空间时间解决了伪共享问题,减少了并发情况下的写竞争来提高性能。 在流量高峰时期,链路数据的发送队列这一块的性能从火焰图上看 CPU 占比平均小于2%,日常服务CPU整体水位与0采样相比几乎没有明显差距,因此我们经过多方面压测对比后,决定在生产环境客户端侧开放链路数据的全量上报,实现了在得物技术史上的全链路 100% 采样,终结了一直以来因为低采样率导致问题排查困难的问题,至此,在第三阶段,得物的全链路追踪技术正式迈入 Trace2.0 时代。 得益于 OpenTelemetry 整体的可插拔式 API 设计,我们二次开发了 OpenTelemetry Java...阅读全文

博文 2022-12-10 06:50:41 中文开源技术交流社区

CCPA vs. GDPR:欧美这两部个人数据保护法有什么差异?

(establishment)在欧盟境内,不论该数据处理的行为发生在境内或境外,该数据控制者或处理者及其欧盟境内的营业场所都将受到GDPR的约束——前提是该数据控制者或处理者与欧盟境内的营业场所之间存在“不可摆脱的联系”(inextricable link)。依据第29工作组(WP 29)的观点和欧盟法院判例,“财务上的联系、提供免费网络服务以取用户会员费或用户订阅、利用用户数据盈利”,都可被认定存在‘不可摆脱的联系’。”[5] (3) 保护性管辖:无论数据控制者和处理者是否在欧盟境内有实体机构,也不论数据处理行为是否发生在欧盟境内,只要向欧盟数据主体提供产品或服务(无论该产品或服务是否需要支付对价)[6]或监控其行为[7],或只要处理或持有居住在欧盟的数据主体的数据的所有企业,都受GDPR的管辖。 (4) 根据国...阅读全文

kubectl 创建 Pod 背后到底发生了什么?—探寻 Kubectl 创建 Pod 的原理

的 Pod 的分布状况,这是分布式系统(比如 Kubernetes)的关键因素。这些任务都是由 Kubelet 组件完成的,让我们开始吧! 在 Kubernetes 集群中,每个 Node 节点上都会启动一个 Kubelet 服务进程,该进程用于处理 Scheduler 下发到本节点的任务,管理 Pod 的生命周期,包括挂载卷、容器日志记录、垃圾回收以及其他与 Pod 相关的事件。 如果一种思维模式,你可以把 Kubelet 当成一种特殊的 Controller,它每隔 20 秒(可以自定义)向 kube-apiserver 通过 NodeName 获取自身 Node 上所要运行的 Pod 清单。一旦获取到了这个清单,它就会通过与自己的内部缓存进行比较来检测新增加的 Pod,如果有差异,就...阅读全文

博文 2022-04-18 16:18:04 CSDN