InfraPub 为您找到相关结果 445

GitHub 发布10月21日系统故障分析报告

Raft 共识机制之上达成共识。Orchestrator 可以实现应用程序无法支持的拓扑,因此必须注意将 Orchestrator 的配置与应用程序级别的期望保持一致。 然而 21 日,在上述网络分中,Orchestrator 在主数据中心中一直保持活跃,根据 Raft 的共识机制,它开始了一个取消领导选举的过程。美国西海岸数据中心和美国东海岸公有云 Orchestrator 节点能够建立合规数量并开始对群集进行故障转移,以便将写入指向美国西海岸数据中心。Orchestrator 继续组织美国西海岸数据库集群拓扑,当连接恢复时,应用层立即开始将写入流量引导到西海岸站点的新当选者。 美国东海岸数据中心的数据库服务器包含一段短暂的写入时间,但尚未复制到美国西海岸的设施。由于两个数据中心中的数据库集群...阅读全文

Debian软件包常用管理命令整理

apt-get check #检查破损的依赖关系 $ sudo apt-get autoclean #自动清楚apt-get缓存 软件包卸载 $ sudo apt-get remove pkgname #删除已安装的软件包(保留配置文件) $ sudo apt-get purge pkgname #卸载软件,同时删除配置文件 $ sudo apt-get autoremove pkgname #彻底自动卸载软件,删除该软件包及所依赖的,以及不再使用和未使用的软件包 在清理本地缓存时,我们会用到 apt 的 clean 命令。值得一提的是,apt-get autoclean 和 apt-get clean 是略微有别的。 APT的底层包管理器是dpkg, dpkg 安装软件包时, 会将...阅读全文

ChaosMesh 的基本功能有哪些

Chaos Mesh 的基本功能,包括故障注入、混沌实验场景、可视化操作、安全保障。故障注入​故障注入是混沌实验的核心。Chaos Mesh 充分考虑分布式系统可能出现的故障,提供全面、细粒度的故障类型,分为基础资源类型故障、平台类型故障和应用层故障三大类。基础资源类型故障:PodChaos:模拟 Pod 故障,例如 Pod 节点重启、Pod 持续不可用,以及特定 Pod 中的某些容器故障。NetworkChaos:模拟网络故障,例如网络延迟、网络丢包、包乱序、各类网络分。DNSChaos:模拟 DNS 故障,例如 DNS 域名解析失败、返回错误 IP 地址。HTTPChaos:模拟 HTTP 通信故障,例如 HTTP 通信延迟。StressChaos:模拟 CPU 抢占或内存抢占场景...阅读全文

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

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

Oracle Linux 8.0 发布

KVM。KVM 访客崩溃报告中添加其它信息,这使得在使用 KVM 虚拟化时更容易诊断和修复问题。 文件系统与存储 增强 Device Mapper MultipathingSCSI Multiqueue 驱动使块层可以通过 SSD 和多核系统很好地扩展性能 Stratis,一种管理本地存储的简单解决方案XFS 支持共享写时复制(COW)数据扩展功能,因此两个或多个文件可以共享一组公共数据块。 此外还有关于网络、身份认证管理与安全等方面的内容,详情查看发布说明: https://blogs.oracle.com/linux/announcing-the-release-of-oracle-linux-8...阅读全文

博文 2019-07-20 22:39:32 debian.cn

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

Kinsella)曾经创办帮助企业优化云计算部署的科技公司“云健康”,公司后来被虚拟机巨头VMware并购。金塞拉分析称,在AWS的数百万客户中,营收和利润并未均匀分布。如果两成的客户贡献了八成的收入,那么主要的盈利来自于剩下的八成客户,他们主要是中小企业。需要指出的是,云计算大客户往往能够获得不菲的折扣。贝尔斯登公司预测,在2019年,亚马逊云计算已经实现了61%的总体毛利率。对于本报道,亚马逊官方目前并未发表评。核心计算:EC2美国科技行业观察人士哈瓦·苏里(Bhavan Suri)表示,EC2(亚马逊弹性计算云,是一个让使用者可以租用云端电脑运行所需应用的系统)是亚马逊云计算最古老的产品,是毛利润和运营利润的发动机。苏里表示,EC2服务的毛利率应该在50%左右。迄今为止,亚马逊并未提供各个云计算产...阅读全文

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

Linux下多线程程序为什么消耗大量虚拟内存

; getchar(); getchar(); pthread_create( &th, 0, thread_run, 0 ); while ( (getchar() ) ) { start = 1; } return(0); } 其运行结果如下图,刚开始时,进程占用虚拟内存14M,输入0,创建子线程,进程内存达到23M,这增加的10M是线程堆栈的大小(查看和设置线程堆栈大小可用ulimit -s),第一次输入1,程序分配1k内存,整个进程增加64M虚拟内存,之后再输入2,3,各再次分配1k,内存均不再变化。 这个结果让我欣喜若狂,由于以前学习过谷歌的Tcmalloc,其中每个线程都有自己的缓冲来解决多线程内存分配的竞争,估计新版的glibc同样学习了这个技巧,于是查看pmap $(pidof main...阅读全文

博文 2015-01-28 10:35:39 debian.cn

全民HTTPS时代:盘点免费SSL证书那些事儿

一家新兴的 SSL 证书提供商,赛门铁克(Symantec)亚太的白金合作伙伴。随着 Symantec 的 CA 业务被 DigiCert 收购完成,其证书链也从 Symantec 变为 DigiCert。现在也开始提供免费 1 年期的 DV SSL 证书。 在线申请网址:https://freessl.org/ 三、AlwaysOnSSL 官方网站:https://alwaysonssl.com/ 点评:AlwaysOnSSL 是一个新的免费和自动认证机构。它由 CertCenter 和 Digicert 运行,免费提供 6 个月的 DV SSL 证书。 在线申请网址:https://alwaysonssl.com/ 四、Comodo 官方网站:https...阅读全文

Systemd 及 Service 文件含义解析

Systemd 是 Linux下的一款系统和服务管理器,兼容 SysV 和 LSB 的启动脚本。Systemd 的特性有:支持并行化任务;同时采用socket式 与 D-Bus 总线式激活服务;按需启动守护进程(daemon);利用 Linux 的 cgroups 监视进程;支持快照和系统恢复;维护挂载点和自动挂载点;各服务间基于依赖关系进行精密控制。 其中的监视和控制功能的主要命令就是systemctl。 Systemd 有很多不同类型的使用单元,主要包括:系统服务(.service)、挂载点(.mount)、sockets(.sockets)、系统设备(.device)、交换分(.swap)、文件路径(.path)、启动目标(.target)。一般我们常用的是其中的系统服务。 对于系...阅读全文

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

7 个月猛涨 12 亿美元,开源技术服务商成北欧最新独角兽 - OSCHINA

Canonical 开始开发 Ubuntu 22.04 LTS,并公布开发路线图 Canonical 在上周正式发布了 Ubuntu 21.10,如今他们已经转而开发下一版本代号为 Jammy Jellyfish 的 Ubuntu 22.04,并公布了开发路线图。 Ubuntu 22.04 将会是一个长期支持版本,按照目前的开发路线,Ubuntu 22.04 LTS 的正式发布日期为明年 4 月 21 日,除此之外,开发过程的几个关键节点包括: 功能冻结: 2022 年 2 ... 3 0 Windows 11 已支持运行 Android 应用 Android 应用现已支持在 Windows 11 上运行。 微软今日宣布,美国地 Windows 11 Beta 通道的预览版已支持运行 Android 应用...阅读全文

博文 2021-10-21 20:04:43 中文开源技术交流社区

Intel 为啥要给 ARM 代工

也随着智能终端设备的井喷而一飞冲天。虽然 ARM 只是一个只授权不生产的企业,而且无是 CPU 的性能,还是企业规模都远远不能和 Intel 相比,但这背后却是 ARM 与 X86 的斗争。 在过去几年 Intel+微软+桌面/笔记本电脑 与 ARM+Linux 衍生系统+智能手机/平板之间已经发生了数次较量,Intel 研发了用于智能穿戴设备和物联网的“居里”和“爱迪生”,以及用于手机和平板的阿童木系列芯片,并通过高额补贴想将 X86 芯片在手机和平板电脑,以及智能穿戴产品中推广。为了能够兼容安卓系统,Intel 甚至不惜以损失部分 CPU 性能为代价进行翻译,而且还入股展讯,与展讯合作开发 X86 手机芯片。 同样,ARM 也在数年前就布局低功耗服务器 CPU,并以相对不高的价格将...阅读全文

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

架构师详解 Nginx 架构

、 多进程和异步非阻塞的请求处理方式、事件驱动模型等。通过这些理知识,对于我们以后学习 Nginx 的源码有很大的帮助;也推荐大家多看看 Nginx 的源码,才能更好地领悟 Nginx 的设计思想。 本文转自开源中国,原文出自:架构师详解: Nginx架构...阅读全文

博文 2018-05-01 23:10:47 debian.cn

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

用 docker,则打包过程就交由 docker build 完成。Deploy:用 Bake 中创建的镜像部署成一台虚拟机。Jenkins: 执行一个 Jenkins 的 job。Manual Judgment : 暂停,等待用户的许可后再继续。Pipeline : 执行另外一个 pipeline。Script :执行任意的脚本。Wait : 等待一段时间。 从 pipeline 的定义看,Spinnaker 和 Jenkins 有几分相似,不过两者的设计出发点的不同,stackoverflow上有相关的讨。总结来看,jenkins 偏向 CI,产出物是软件包;Spinnaker 是 CD,将软件包分发到服务器/虚拟机上,保持软件正常运行,它的目标只是让“部署”的过程更容易更可扩展。有一...阅读全文

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

Java Annotations详解

Java注释被用来为java代码提供元数据(meta data)。作为元数据,注释不会直接影响代码的执行结果,不过事实上有些注释就是为了影响代码的执行结果而定义的。 Java注释是从Java 5开始添加的。本文对于Java注释的讨是基于java 6的,据我所知,到目前为止Java 7中关于注释的部分并没有发生改变,所以本文对java 7编程人员上来说应该也是可用的。 目录: · Java 注释的作用 · 注释的基础知识 · 注释的位置 · Java中预置的注释 · 创建你自己的注释 Java 注释的作用 预编译指令(Compiler instructions) 编译时指令(Build-time instructions) 运行时指令(Runtime instructions) Java有...阅读全文

博文 2013-03-02 08:04:55 CSDN博客

WebAssembly:无需容器的 Docker (上)

布与 WasmEdge 合作支持 WebAssembly。本文将解释什么是 WebAssembly(Wasm),为什么它与 Docker 生态相关,并提供一些实践示例供大家尝试。 我们假设你已经熟悉 Docker 工具。 我们将使用我们在 PHP 的 WebAssembly 端口上做的工作来演示如何构建 PHP 解释器,将其打包为 OCI 镜像的一部分,并使用 Docker 运行它。请注意,本文专注动手经验,而不是讨技术细节。WebAssembly 是什么?为什么选它?本节是对 WebAssembly 的基本介绍。 已经熟悉 Wasm 的小伙伴,可以快速重温一下,明天的文章将介绍更多实践。什么是 WebAssembly?WebAssembly 是一种定义二进制指令格式的开放标准,它支持从不...阅读全文

博文 2023-01-03 06:35:56 spider

基于thanos搭建分布式prometheus

sidecar和prometheus则走原生HTTP接口拿数据。 为了高可用,我们可以部署多个prometheus同时抓取。 为了打散采集/存储压力,我们可以部署多个prometheus各自抓取部分数据。 无出于上述哪种目标或者混合目标,最终依靠Querier的正确配置都可以提供统一的Promql查询入口给Grafana,这一点是毋庸置疑的。 这里看到了图中有几个陌生的组件: Store Bucket Compactor Prometheus单机存储空间有限,SideCar和Prometheus在同POD内共享数据volume,然后sidecar可以自动将prometheus磁盘数据上传到Bucket里归档存储;后续Querier可以通过Store组件从Bucket拉取到历史数据,这样就实现了历史数据...阅读全文

博文 2021-03-01 13:02:46 鱼儿的博客

Debian 9.3上安装和配置 Observium 监控平台

once every 2 hours 完成后保存并关闭文件,然后重新启动cron服务以应用此更改: systemctl restart cron 结 恭喜! 您已经在Debian 9服务器上成功安装了Observium。 您现在可以轻松获得网络的状态和健康状况。 您可以检查Observium官方文档页面以获取有关配置设备,警报和身份验证模块的更多信息。【本文转载自 Howtoing.com,略有增删】...阅读全文

博文 2017-12-30 11:35:21 debian.cn

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

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

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

Web前端知识体系精简

this this 存在于函数中,它指向的是该函数在运行时被调用的那个对象。在实际项目中,遇到this的坑比较多,因此需要对this作深入的理解。 Function对象还提供了call、apply和bind等方法来改变函数的this指向,其中call和apply主动执行函数,bind一般在事件回调中使用,而call和apply的别只是参数的传递方式不同。关于call,apply和bind的用户请参考博客:详解JS的call,apply和bind 4、构造函数 new JS中的函数即可以是构造函数又可以当作普通函数来调用,当使用new来创建对象时,对应的函数就是构造函数,通过对象来调用时就是普通函数。 普通函数的创建有:显式声明、匿名定义、new Function() 等三种方式。 当通过new来...阅读全文

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

Python的闭包和装饰器

: Nonlocal 与 global 的别在于 nonlocal 语句会去搜寻本地变量与全局变量之间的变量,其会优先寻找层级关系与闭包作用域最近的外部变量。 闭包与装饰器 上面已经简单演示了装饰器的功能,事实上,装饰器就是一种的闭包的应用,只不过其传递的是函数: @makeitalic 装饰器将函数 hello 传递给函数 makeitalic,函数 makeitalic 执行完毕后返回被包装后的 hello 函数,而这个过程其实就是通过闭包实现的。@makebold 也是如此,只不过其传递的是 @makeitalic 装饰过的 hello 函数,因此最后的执行结果 外层,这个功能如果不用装饰器,其实就是显式的使用闭包: 闭包的作用 闭包的最大特点是可以将父函数的变量与内部函数绑定,并返...阅读全文

博文 2014-07-23 17:06:38 debian.cn

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

作逻辑 复制粘贴缓冲 安装的话也很简单,在 mac 下直接 brew install tmux(前提需要安装 homebrew),Debian 下则直接 sudo apt-get install tmux 在终端中输入 tmux 就可以打开一个新的 tmux session,tmux 的所有操作必须先使用一个前缀键(默认是 ctrl + b)进入命令模式,或者说进入控制台,就像 vim 中的 esc。 基本操作 信息查询 tmux list-keys 列出所有可以的快捷键和其运行的 tmux 命令 tmux list-commands 列出所有的 tmux 命令及其参数 tmux info 流出所有的 session, window, pane, 运行的进程号,等。 窗口控制 先来看看在...阅读全文

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

玩转 AWS 的必备工具

虽然AWS平台早已早已为使用者带来了十分详细和高品质的工具箱,但在具体运用中含的软件还没有尤其方便快捷或是能满足客户的必须,因而,紧紧围绕全部AWS平台,客户及其许多专业开发设计AWS专用工具的企业发布了很多和AWS规范专用工具互为补充的第三方开发环境。这种专用工具集中化在系统软件布署管理方法自动化技术,系统架构图自动生成可视化工具,及其服务器资源监管专用工具等AWS技术栈的最底层服务项目。 系统软件布署管理方法自动化技术专用工具. 中国开发者利好消息!AWS(亚马逊云计算)中国新用户注册即可免费使用12个月云服务产品啦!每注册一个新用户均可享受新的12个月免费云服务器数据库等产品!快来加入我们吧! 免费12个月链接: https://aws.amazon.com/cn...阅读全文

改善 Debian Linux 软件包管理的七款工具

说,你可以用它来设定软件包安装时向你提出哪种类型的问题、重置问题的优先级,或者尽管软件包破损仍强行安装。 dpkg-reconfigure可用来配置基于Debian系统的几乎方方面面。由于出现了配置安装系统的其他工具,它的多用途性在丧失,不过dpkg- reconfigure仍可用于配置诸如此类的特性:时、视频驱动程序、打印机和扫描仪。Ubuntu弃用了dpkg- reconfigure,但是它在其他基于Debian的发行版中仍很有用。 4.netselect-apt 如今,互联网连接的速度已经非常快。然而,一些软件包代码库的速度仍比其他代码库要快;在使用高峰期间,流行的软件包代码库会降低速度。有时候,根本就缺少高速连接。 对于注重速度的那些人来说,netselect-apt为你的位置列出...阅读全文

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

玩转 AWS 的必备工具

虽然AWS平台早已早已为使用者带来了十分详细和高品质的工具箱,但在具体运用中含的软件还没有尤其方便快捷或是能满足客户的必须,因而,紧紧围绕全部AWS平台,客户及其许多专业开发设计AWS专用工具的企业发布了很多和AWS规范专用工具互为补充的第三方开发环境。这种专用工具集中化在系统软件布署管理方法自动化技术,系统架构图自动生成可视化工具,及其服务器资源监管专用工具等AWS技术栈的最底层服务项目。 系统软件布署管理方法自动化技术专用工具. 中国开发者利好消息!AWS(亚马逊云计算)中国新用户注册即可免费使用12个月云服务产品啦!每注册一个新用户均可享受新的12个月免费云服务器数据库等产品!快来加入我们吧! 免费12个月链接: https://aws.amazon.com/cn/free...阅读全文

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

Kubernetes v1.21 新特性预览

设置 completionMode: Indexed。TopologyAwareHints Alpha服务拓扑(Service Topology)在 Kubernetes v1.21 中已弃用,并将在 v1.22 中删除。Kubernetes v1.21 新增的拓扑感知提示提供了类似的功能。该特性开启后,EndpointSlice 控制器将填充 EndpointSlice 中每个 Endpoint 上的提示字段,以将其分配到一个域。然后,诸如 kube-proxy 这样的组件在配置请求路由时就可以使用这些提示。其他需要留意的新特性CronJob 进入稳定版本,已有用户注意切换 API 版本到 apiVersion: batch/v1。Sysctls 进入稳定版本,用户终于有一个稳定的...阅读全文

博文 2021-03-30 20:24:36 mp.weixin.qq.com

漫画赏析:Linux 内核到底长啥样

鹅,它表示着 PID 为 421 的进程,它正在查看文件柜中的文件,这代表系统中正有一个进程在访问文件系统。在右下角有一只小狗,它是看门狗,这代表对文件系统的监控。 一层(地面层) floor 看完了地基,接下来我们来看地基上面的一层,都有哪些东西。 Process Table 在这一层,最引人瞩目的莫过于中间的一块垫子,众多小企鹅在围着着桌子坐着。这个垫子的域代表进程表。 左上角有一个小企鹅,站着,仿佛在说些什么这显然是一位家长式的人物,不过看起来周围坐的那些小企鹅不是很听话——你看有好多走神、自顾自聊天的——“喂喂,说你呢,哇塞娃(171),转过身来”。它代表着 Linux 内核中的初始化(init)进程,也就是我们常说的 PID 为 1 的进程。桌子上坐的小企鹅都在等待状态中,等待工...阅读全文

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

译:Kubernetes 最佳实践

束使用 Deployment、DaemonSet、ReplicaSet 或者 StatefulSet 跨节点部署 Pod使用多节点使用基于角色的访问控制(RBAC)在外部托管Kubernetes集群(使用云服务)升级Kubernetes版本监控集群资源和审计策略日志使用版本控制系统使用基于Git的工作流程(GitOps)缩小容器的大小用标签整理对象(译者注:或理解为资源)使用网络策略使用防火墙使用命名空间K8s 中的命名空间对于组织对象、在集群中创建逻辑分以及安全方面的考虑至关重要。 默认情况下,K8s 集群中有 3 个命名空间,default、kube-public 和 kube-system。RBAC 可用于控制对特定命名空间的访问,以限制组的访问以控制可能发生的任何错误的爆炸半径,例...阅读全文

博文 2022-09-13 19:32:21 atbug.com

Redis 命令、特性介绍与性能调优

”user:1000:followers”来说,节省了寥寥的存储空间,却引发了可读性和可维护性上的麻烦 最好使用统一的规范来设计Key,比如”object-type:id:attr”,以这一规范设计出的Key可能是”user:1000″或”comment:1234:reply-to” Redis允许的最大Key长度是512MB(对Value的长度限制也是512MB) String String是Redis的基础数据类型,Redis没有Int、Float、Boolean等数据类型的概念,所有的基本类型在Redis中都以String体现。 与String相关的常用命令: SET:为一个key设置value,可以配合EX/PX参数指定key的有效期,通过NX/XX参数针对key是否存在的情况进行别操作...阅读全文

博文 2018-10-27 10:37:55 debian.cn

aptitude 与 apt

文件 有的问题 apt-get 解决不了,必须使用 aptitude 解决,有的问题,用 aptitude 解决不了,必须使用 apt-get, aptitude 解决得更好的地方: install, remove, reinstall(apt-get无此功能), show(apt-get无此功能), search(apt-get无此功能), hold(apt-get无此功能), unhold(apt-get无此功能),apt-get 解决得更好的地方: source(aptitude无此功能), build-dep (低版本的aptitude没有build-dep功能)。apt-get 跟 aptitude 没什么别的地方:update, upgrade (apt-get upgrade...阅读全文

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

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

. **Infrastructure health**:集群基础架构状态评分,比较像我们的集群巡检,给出一些优化建议,例如: - Worker nodes 跨可用部署。 - Master 多副本。 - 检测 CPU 被 throttling 的 Pod。 ### Cost Allocation ![img](https://main.qcloudimg.com/raw/b9469008a0b87974c3796657ff505efd.png) **上述图中数字序号标示处相关说明可参考下文对应说明介绍**: 1. **显示的指标**: - 累积成本:在选定时间窗口的实际/历史支出。 - 费率指标:每小时、每天或每月的成本,基于所选时间窗口中的样本,也用于预计成本。 2. **聚合**: Cost Allocation 可以查...阅读全文

使用 MongoDB 之前应该知道的 14 件事

MongoDB 是一个多租户系统,它会尽可能地占用内存,因此最好是安装在服务器上,最大限度地提供内存,即使是开发工作。在服务器上使用默认端口安装而不启用身份验证是在自找麻烦,尤其是可以在查询中运行任意 JavaScript 时(例如把$where 作为注入攻击的载体)。 身份验证方法有多种,但是用户 ID/密码凭证最容易安装和管理。当你考虑 基于 LDAP 的身份验证 时,可以采用那个方法。在我们谈安全时,MongoDB 必须保持最新,而且,在日志里查找未授权访问的迹象总是值得的。我不喜欢使用默认端口。 忘记限制 MongoDB 的攻击面 MongoDB 的 安全检查清单 为降低网络渗透和数据泄露风险提供了很好的建议。我们很容易会认为,开发服务器不需要高等级的安全。不是这样的:安全对于所有...阅读全文

Gitlab CI 配置文件 .gitlab

despite the failure. when可以设置以下值: on_success - 只有前面stages的所有工作成功时才执行。 这是默认值。 on_failure - 当前面stages中任意一个jobs失败后执行。 always - 无前面stages中jobs状态如何都执行。 ``manual - 手动执行(GitLab8.10增加)。更多请查看手动操作。 举个例子: stages: - build - cleanup_build - test - deploy - cleanup build_job: stage: build script: - make build cleanup_build_job: stage: cleanup_build script: - cleanup...阅读全文

博文 2018-12-12 21:01:19 ci.yaml 详解(上)

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

的最细粒度的身份验证和授权。虽然服务网格可以提供帮助,但 Kubernetes 安全性仍然是一个复杂而微妙的话题,需要从多个层次进行了解。零信任是一种位于现代安全实践前沿的强大的安全模型。这也是一个容易引起轰动和炒作的术语,因此很难消除噪音。那么,究竟什么是零信任,对于 Kubernetes,它究竟意味着什么?在本文中,我们将从工程的角度探讨什么是零信任,并构建一个基本框架来理解它对 Kubernetes 运维和安全团队等的影响。介绍如果你正在构建现代云软件,无是采用 Kubernetes 还是其他软件,可能都听说过“零信任”一词。零信任的安全模式变得如此重要,以至于美国联邦政府已经注意到:白宫最近发布了一份联邦零信任战略的备忘录,要求所有美国联邦机构在年底前满足特定的零信任安全标准...阅读全文

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

,并且 toHexString()操作也进行了优化。重新使用 async-profiler 查看一下最新的火焰图信息。 之前的 toHexString() 耗时已经几乎看不到了,但是感觉日志append 的操作横轴还是略长,于是将日志输出关闭来看看极限处理速度。 将日志级别调整为 warn,并启动程序,观测到处理速度已经能够达到 18万/s了,这相当于 toHexString()优化前的快3倍了。 此时决定再将日志append 模式改为异步模式,然后启动程序,观察,处理速率也能够达到 18万/s。 十、参考链接 火焰图的介绍文 火焰图官方主页 火焰图生成工具 https://www.ruanyifeng.com/blog/2017/09/flame-graph.html https...阅读全文

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

如何写好技术文档 — 来自十多年的文档经验总结

的语言,你只需要将问题讲清楚即可。 - 有时候工具不好用也会影响的文档写作。如果没有一个很好的写作工具将写文档嵌入到开发工作流程中的话,写作确实会增加工作的负担。 - 大多数人将写文档看做是工作的额外负担。 我代码都没时间写,哪有时间写文档!,这其实是错误的观念,文档虽然前期有投入,但能让你代码的后期维护成本大幅降低,磨刀不误砍柴工这个道理相信大家都还是能理解的。 ## 如何产出高质量文档 ## 既然理解了好文档的重要性,我们如何保证在时间的长河中维护好一份文档,这里有些相关的方法,大家可以参考下。 ## 像管理代码一样管理文档 ## 对于如何写出好代码,整个技术圈已经有好多经验的总结了,比如书籍《重构》《代码简洁之道》…… 针对各种编程语言,也有相关的规范,比如国外的Google C...阅读全文

博文 2021-07-30 16:15:13 joseph

最全的 DevOps 工具集合

用 Marathon 的 Apache Mesos 架构,©AdrianMouat 如图所见,集群中有四个元素。ZooKeeper 帮助 Marathon 查找 Mesos master 的地址,可以使用多个实例来处理故障。 Marathon 负责启动、监视并扩展容器。Mesos master 将分配给节点的任务发送给 Marathon,并在节点具有一些可用的 CPU/RAM 时向 Marathon 提出要约。Mesos slaves 负责运行容器并提交自身可用资源的列表。 Kubernetes Kubernetes 是用于 Docker 容器的编排系统,使用标签和 pods 的概念将容器分为许多逻辑单元。Pod 是 Kubernetes 与其他两种解决方案之间的主要别所在——它们是位于同...阅读全文

博文 2021-05-26 14:35:21 博客园

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

于理上的设计,也就是上面4个步骤的确定,一旦设计完成,实现部分就会非常简单。 使用动态规划求解问题,最重要的就是确定动态规划三要素: (1)问题的阶段 (2)每个阶段的状态 (3)从前一个阶段转化到后一个阶段之间的递推关系。 递推关系必须是从次小的问题开始到较大的问题之间的转化,从这个角度来说,动态规划往往可以用递归程序来实现,不过因为递推可以充分利用前面保存的子问题的解来减少重复计算,所以对于大规模问题来说,有递归不可比拟的优势,这也是动态规划算法的核心之处。 确定了动态规划的这三要素,整个求解过程就可以用一个最优决策表来描述,最优决策表是一个二维表,其中行表示决策的阶段,列表示问题状态,表格需要填写的数据一般对应此问题的在某个阶段某个状态下的最优值(如最短路径,最长公共子序列,最大价值...阅读全文

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

深入理解Golang之context

: return "context.TODO" } return "unknown empty Context" } var ( background = new(emptyCtx) todo = new(emptyCtx) ) func Background() Context { return background } func TODO() Context { return todo } 但我们一般不会直接使用emptyCtx,而是使用由emptyCtx实例化的两个变量,分别可以通过调用Background和TODO方法得到,但这两个context在实现上是一样的。那么Background和TODO方法得到的context有什么别呢?可以看一下官方的解释:// Background returns...阅读全文

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

协议介绍之深入了解 gRPC

及它的相关属性。在 HTTP/1.x 时代,我们采用纯文本协议,并且使用 \r\n 来分隔,如果我们要传输的元数据很多,就会导致 header 非常的庞大。另外,多数时候,在一条连接上面的多数请求,其实 header 差不了多少,譬如我们第一个请求可能 GET /a.txt,后面紧接着是 GET /b.txt,两个请求唯一的别就是 URL path 不一样,但我们仍然要将其他所有的 fields 完全发一遍。 HTTP/2 为了结果这个问题,使用了 HPACK。虽然 HPACK 的 RFC 文档 看起来比较恐怖,但其实原理非常的简单易懂。 HPACK 提供了一个静态和动态的 table,静态 table 定义了通用的 HTTP header fields,譬如 method,path 等...阅读全文

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

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

datetime-local。 正如其名称所表明的,头两个元素可以让用户选择一个星期值和一个月份值。根据浏览器的支持情况不同,它们俩都会被渲染成一个下拉显示的日历,让你可以选择一年中一个特定的星期或者月份。 datatime-local 表示的是一个日期和时间的输入域, 不过没有时设置。其数据可以采用跟 month 或者 week 输入项类似的方法来选定, 而时间可以单独输入。

Week, Month and Datetime-local

Choose a week: <input type="week" name="year_week"> <input type="submit"> 阅读全文

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

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

较多:字符串(String),哈希(Hash),列表(List),集合(Set),有序集合(Sorted Set), Bitmap, HyperLogLog和地理空间索引(geospatial)等,需要根据业务场景选择合适的类型。 常见的如:String可以用作普通的K-V、计数类;Hash可以用作对象如商品、经纪人等,包含较多属性的信息;List可以用作消息队列、粉丝/关注列表等;Set可以用于推荐;Sorted Set可以用于排行榜等! 9.命名规范 虽然说Redis支持多个数据库(默认32个,可以配置更多),但是除了默认的0号库以外,其它的都需要通过一个额外请求才能使用。所以用前缀作为命名空间可能会更明智一点。 另外,在使用前缀作为命名空间隔不同key的时候,最好在程序中使用全局配置...阅读全文

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

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

者的工作方式类似,但有一点别:与验证链和授权链不同,如果某个准入控制器检查不通过,则整个链会中断,整个请求将立即被拒绝并且返回一个错误给终端用户。 准入控制器设计的重点在于提高可扩展性,某个控制器都作为一个插件存储在 plugin/pkg/admission 目录中,并且与某一个接口相匹配,最后被编译到 kube-apiserver 二进制文件中。 大部分准入控制器都比较容易理解,接下来着重介绍 SecurityContextDeny、ResourceQuota 及 LimitRanger 这三个准入控制器。 SecurityContextDeny 该插件将禁止创建设置了 Security Context 的 Pod。ResourceQuota 不仅能限制某个 Namespace 中创建资...阅读全文

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

HTTP状态码详解

能够处理的范围。此种情况下,服务器可以关闭连接以免客户端继续发送此请求。 如果这个状况是临时的,服务器应当返回一个 Retry-After 的响应头,以告知客户端可以在多少时间以后重新尝试。 414 请求的URI 长度超过了服务器能够解释的长度,因此服务器拒绝对该请求提供服务。这比较少见,通常的情况包括: 本应使用POST方法的表单提交变成了GET方法,导致查询字符串(Query String)过长。 重定向URI “黑洞”,例如每次重定向把旧的 URI 作为新的 URI 的一部分,导致在若干次重定向后 URI 超长。 客户端正在尝试利用某些服务器中存在的安全漏洞攻击服务器。这类服务器使用固定长度的缓冲读取或操作请求的 URI,当 GET 后的参数超过某个数值后,可能会产生缓冲溢出,导致任...阅读全文

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