InfraPub 为您找到相关结果 596

在 Mac OS X 上安装 Nessus 10

/Nessus/run/var/nessus/plugin_feed_info.inc /Library/Nessus/run/lib/nessus/plugins/plugin_feed_info.inc (1)更新插件 sudo /Library/Nessus/run/sbin/nessuscli update all-2.0.tar.gz all-2.0.tar.gz 为默认名称,请根据插件离线包的实际路径和文件名修改 (sysin) (2)写入配置文件 编辑 plugin_feed_info.inc 文件(这两个文件可能源录下没有,需要自己创建): sudo vi /Library/Nessus/run/var/nessus/plugin_feed_info.inc sudo vi...阅读全文

Golang Context 探究

server 来解释, Go 服务每次都是启动一个新的 goroutine 来处理每一个请求,在这个请求的操作往往会启动新 goroutine 访问数据库或其他服务,如果此时客户端断开了连接,后续的消耗资源的操作就完全没必要了。所以我们需要一个在 goroutine 之间同步取消信号,截止时间的机制或者特定请求数据。而 Context 被设计出来就是帮我们实现这个标。 1 2 3 |-----------| |-----------| |-----------| | goroutine |-------> | goroutine |-------> | goroutine | |-----------| |-----------| |-----------| 默认 Context context 包...阅读全文

博文 2021-02-25 09:27:27 lxkaka

基于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 鱼儿的博客

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博客

域名与商标: 如何防止域名被仲裁

”、“梅花”等。从这一点上看,域名的独有性,似乎更好一些。 从商业的角度来看,域名因其独特性,可以把它当作一个企业的网上商标。不过,可以肯定地说,域名与商标没有绝对的联系。 在这个眼球经济时代,作为企业,最理想的状态,当然是希望它的实物商标与网上商标保持高度一致的,以使大众无论从哪个途径,都能将光聚焦在它的身上,为此,企业们也付出了巨大的努力,比如商标之争比较有名的当属“加多宝”和“王老吉”,域名方面,作为米农,所听到见到的域名仲裁案例也不在少数。 由于域名和商标分属不同领域的不同系统,再加上时间差的原因,一般企业想要达到理想状态,是有难度的。比如说,自已注册的商标,其对应的域名不一定是未注册状态,这个时候,域名权与商标权,甚至商号权、网站名称权等就形成了冲突。除了收购外,另外一个途径就是仲裁...阅读全文

博文 2019-01-18 14:59:59 debian.cn

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

; 我们告诉kubeadm使用相同的子网。第二个任务在/home/sammy创建一个.kube录。 此录将保存配置信息,例如连接到群集所需的管理密钥文件以及群集的API地址。第三个任务将从kubeadm init生成的/etc/kubernetes/admin.conf文件复制到非root用户的主录。 这将允许您使用kubectl访问新创建的集群。最后一个任务运行kubectl apply安装Flannel 。 kubectl apply -f descriptor.[yml|json]是告诉kubectl创建描述descriptor.[yml|json]文件中descriptor.[yml|json]的对象的语法。 kube-flannel.yml文件包含在集群中设置Flannel所需的...阅读全文

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

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

Prometheus已成为cloud-native世界中的默认监控应用程序和系统。对于真是使用案例,Prometheus应该是高可用的,这是有挑战的。一旦在高可用性模式下运行Prometheus,就会遇到很多问题,例如数据重复,为重复数据实现single pane等。为了解决此问题,Cortex诞生了。Cortex是一个CNCF sandbox project,旨在为使用Prometheus 收集的指标提供长期存储和全局指标视图。首先让我们看一下Cortex的主要标,然后看一下它为Prometheus解决的一些问题。水平可伸缩性– Cortex可以分成多个微服务,每个微服务都可以独立地水平伸缩。例如,如果许多Prometheus实例正在向Cortex发送数据,则可以扩展Ingester微...阅读全文

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

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

API收集堆栈跟踪和跟踪内存分配,因而其可以和OpenJDK、Oracle JDK和其他基于HotSpot JVM的Java应用在运行时协同工作。 Github项链接地址:https://github.com/jvm-profiling-tools/async-profiler Async-profiler可以跟踪以下类型的事件: CPU周期; 硬件和软件性能计数器,如缓存未命中、分支未命中、页面错误、上下文切换等; Java堆中的分配; 满足的锁定尝试,包括Java对象监视器和可重入锁; 支持的平台Linux / x64 / x86 / ARM / AArch64macOS / x64注意:macOS分析仅限于用户空间代码。 生成的火焰图,绿色代表用户栈,黄色代表jvm,红色代表内核;横坐标...阅读全文

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

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

基本为技术相关的文章。请问起初做这个网站的初衷是什么呢?关于网站还有其他需要说的吗? 答:原来写过一个成绩分析的php小程序(phpcj的由来),放到网上,得到不少人的鼓励,于是就申请了个域名作为程序的网站。后来在朋友的建议下,做成了博客。说是博客,也就是一个个人笔记,记录一下遇到的问题如何解决的,方便以后查询,好记性不如一个烂笔头嘛!有时遇到问题,搜索一下,也会搜索到自己的博客上,咦,以前不是遇到过这个问题么? 11.作为一名狂热的Linux爱好者,能介绍下日常你怎么折腾技术或者Linux的吗?您喜欢哪些呢,能与我们分享吗? 答:由于喜欢折腾各种发行版,笔记本上前有若干个Linux最新的发行版,现在是 Gentoo + Ubuntu16.04 + Archlinux + Fedora23...阅读全文

博文 2021-01-28 17:50:13 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...阅读全文

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

展已经有一段时间了,但业内一直各自为政,由于没有统一的接口标准,"胶水"芯片生态难建,大公司止步不前,小公司也不敢迈出第一步。长期以来,摩尔定律的持续演进被视为芯片性能提升的主要途径。经历四十多年的发展,构成芯片的晶体管几乎要缩小到原子级别,不仅面临难以突破的物理极限问题,制程升级的投入产出比也大幅下降,业界开始寻找新的办法提升产品性能,例如,通过改变封装的方式提升晶体管密度。提出摩尔定律的戈登本人也意识到了封装的重要性,他在论文中写道:"事实证明用较小的功能模块构建大型系统可能会更经济,这些功能模块将分别进行封装和互连。"简单来讲,也就是将原先生产好的芯片集成到一个封装中,达到减少产品开发时间和成本的的,这些芯片模块可以是不同工艺节点,最终通过裸片对裸片的方式连接在一起,这一类似于用胶水...阅读全文

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

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

Facebook 的首位发布工程师,前是 Facebook 发布工程的工程总监。 Facebook 的发布周期是“ quasi-continuous ” (准连续)——这只是一种委婉的说法,表明并非每次提交都会部署到生产环境,实际上它采用的是对几十到几百个提交进行批处理,每隔几个小时就进行推送。这种分层发布的方式使任何变更的回滚很容易。 这个新系统从 2016 年 4 月开始,经过一年的时间慢慢地完善。早先的模式是从主干分支的提交中选择特定的变更放到发布分支上。发布分支每天将这些变更推送到生产环境。这种“ cherry-picking ”的特点是,每天选择变更的数量为 500 ~ 1000。剩下的变更就推入到每周发布分支中。随着时间的推移,提交的数量和参与其中的工程师都有所增加,发布工程师的手工劳动变得...阅读全文

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

Debian Jessie、Stretch 下安装配置 PHP7.2

PHP 7.2.0 已于 2017 年11月30日正式发布GA版,大家可以第一时间尝鲜了。这里我们介绍如何在 Debian 9 "Stretch" 上安装配置 PHP-7.2,以便大家及时升级。前 Debian.cn 全站已稳定运行在 PHP-7.2 版本中。 本教程使用以下系统及组合: Debian 9 stretch 、Debian 8 Jessie、Ubuntu 16.04 LTS、Ubuntu 14.04 LTS / PHP-7.2 、PHP-7.1、PHP-5.6 安装 PHP-7 Ondřej Surý 的 PHP PPA 为 Ubuntu 16.04/14.04 提供了 PHP-7.2 版本,也通过个人网站为 Debian 9/8 提供 PHP7.2 版本。Ondřej...阅读全文

博文 2017-12-16 14:16:25 debian.cn

JDK 11 版本时间表公布

在 JDK 10 发布两天之后,Oracle Java 平台组首席架构师 Mark Reinhold 提出了 JDK 11 GA 发布的时间表: 6 月 28 日:第一阶段开发(从主分支 fork) 7 月 19 日:运行所有测试 7 月 26 日:第二阶段开发 8 月 16 日:初始候选版本 8 月 30 日:最终候选版本 9 月 25 日:正式版 到前为止,包含在 JDK 11 中的 JEP 有: JEP-309:动态类文件常量 JEP-318:Epsilon:一款低开销的垃圾收集器 JEP-320:移除 Java EE 和 CORBA 模块 JEP-323:Lambda 参数的局部变量语法 JDK 11 的 早期体验版本 在 JDK 10 发布前的一个月就有了。Reinhold 之...阅读全文

博文 2018-04-27 08:33:08 debian.cn

开源硬件是趋势,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

AD:为什么说 CoinEx 是一家很有潜力的数字货币交易所?

平台用户在交易时可直接使用CET抵扣等价值的交易手续费,并享受专属费率优惠。 ** 3、享受VIP服务 ** 持有一定数量CET可以成为平台VIP客户,成为平台VIP可以获得费率折扣、提现加速、专享活动、专享客服等特权。 ** 4、专项活动权益 ** CET持有用户可享有平台市场推广活动的专项权益,如参与代币空投、投票上币、优质项投资机会等。 ** 5、CoinEx Smart Chain(CSC)内置代币 ** CoinEx Smart Chain(CSC)是 CoinEx 即将推出的全新一代支持智能合约的智能链。CET将作为CSC的内置流通代币和其燃料使用。 ** 6、更多流通场景 ** 除了在CoinEx生态内部进行流通以外,CoinEx还将会推动CET在更多外部场景下进行使用和流通...阅读全文

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

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

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

Go 1.16 即将发布,这些变更你需要知道

-bindata/go-bindata 这类第三方开源库来实现。 而从 Go1.16 起,通过 go:embed 就可以快速实现这个功能: import _ "embed" //go:embed hello.txt var s string print(s) 通过对变量 s 声明 go:embed 指令,使其在编译时读取当前录下的 hello.txt 文件。 最终变量 s 就会输出 hello.txt 文件中的字符串内容。 新增 io/fs 的支持 新增了标准库 io/fs,正式将文件系统相关的基础接口抽象到了该标准库中。 以前的话大多是在 os 标准库中,这一步抽离更进一步的抽象了文件树的接口。在后续的版本中,大家可以优先考虑使用 io/fs 标准库。 调整切片扩容策略 Go1.16 以前的...阅读全文

博文 2021-02-17 08:52:12 CSDN博客

如何校验 Debian 软件包的 MD5

生成MD5和。 all――指令debsums忽视磁盘上和,使用deb文件中存在的和,或者如果没有的话,就用它生成一个。 keep――指令debsums把提取/生成的和写入到/var/lib/dpkg/info/package.md5sums文件。 nocheck――意味着提取/生成的和没有对照已安装软件包来进行校验。 如果你看一下录/var/lib/dpkg/info/的内容,就会看到各个文件的md5sum,如下图所示: $ cd /var/lib/dpkg/info $ ls *.md5sums 列出软件包的所有MD5和: a11y-profile-manager-indicator.md5sums account-plugin-facebook.md5sums account...阅读全文

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

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

Linux 内核的发行版本,且它默认使用该实现挂载 exFAT 文件系统。因此,用户不再需要使用 exfat-fuse 软件包所提供的用户空间文件系统实现。如果您要继续使用用户空间文件系统的实现,您需要在挂载 exFAT 文件系统时直接调用 mount.exfat-fuse 命令。创建和检查 exFAT 文件系统的工具位于 exfatprogs 软件包,它由 Linux 内核 exFAT 实现的作者编写。由已有的 exfat-utils 软件包提供的独立实现仍然可用,但它不能与新的实现共同安装在系统上。我们推荐您迁移到使用 exfatprogs 软件包,尽管您需要注意并处理两者可能不互相兼容的命令行选项。改进的 man page 翻译部分项,例如 systemd、 util-linux...阅读全文

Linux 系统 vim 编辑器使用简明教程

做文字输入,按ESC键可回到命令模式。 3) 底行模式(last line mode) 将文件保存或退出vi,也可以设置编辑环境,如寻找字符串、列出行号。 不过一般我们在使用时把vi简化成两个模式,就是将底行模式也算入命令模式。 一、打开文件、保存、关闭文件(vi命令模式下使用) vi filename //打开filename文件 :w //保存文件 :w debian.cn //保存为当前录下的文件"debian.cn" :q //退出编辑器,如果文件已修改请使用下面的命令 :q! //退出编辑器,且不保存 :wq //退出编辑器,且保存文件 :x! //退出编辑器,且保存文件,忽略是否对文件具有写权限 二、插入文本或行(vi命令模式下使用,执行下面命令后将进入插入模式,按ESC键可退...阅读全文

博文 2015-07-25 16:33:04 debian.cn

监控Kubernetes集群证书过期时间的三种方案 - OSCHINA

kubelet_server_expiration_renew_errors kubelet_certificate_manager_client_ttl_seconds kubelet_certificate_manager_server_ttl_seconds 监控效果 对应的 Prometheus 告警规则如下: 方案三: 使用 enix 的 x509-certificate-exporter 监控手段 该 Exporter 是通过监控集群所有node的指定录或 path 下的证书文件以及 kubeconfig 文件来获取证书信息. 如果是使用 kubeadm 搭建的 Kubernetes 集群, 则可以监控如下包含证书的文件和 kubeconfig: watchFiles: - /var/lib/kubelet/pki/kubelet-client...阅读全文

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

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

和使用 sudo 为默认 – >使用当前密码 – >OK ->使用当前密码 ->OK。 完成以上操作后,接着我们来重启系统,此时它将从你的硬盘驱动器启动。 注意: 我们不建议在任何电脑上永久安装 Kodachi Linux,因为它会将所有的设置保存在硬盘上,这就违背了该系统反取证的初衷!了解更多关于取证内容,请点击 这里 。 Kodachi 是一个基于 Debian 的实时 DVD / USB 操作系统,因此所有软件包,也都基于纯 Debian 存储库。 Kodachi 是 Apache License 2.0 下的开源项,所有在系统上使用的代码都是纯文本 bash 脚本,并且包含在 ISO 包中,没有编译过的二进制代码, 也没有隐藏的 Kodachi 代码,这些代码都可在 GitHub...阅读全文

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

深入学习golang — channel

可以提供一个可选的整型参数,用于设置该channel的缓冲区大小。该值缺省为0,用来构建默认的“无缓冲channel”,也称为“同步channel”。 Channel作为goroutine间的一种通信机制,与操作系统的其它通信机制类似,一般有两个的:同步,或者传递消息。 2. 同步 c := make(chan int) // Allocate a channel. // Start the sort in a goroutine; when it completes, signal on the channel. go func() { list.Sort() c <- 1 // Send a signal; value does not matter...阅读全文

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

新加坡华侨银行(OCBC) 零门槛开户 使用APP在家即可申请

, Singapore 049514 ,地区选新加坡,SWIFT代码输入OCBCSGSGXXX ,代码输入后银行名址和城市就自动加载出来了。不同银行跨境汇款对比:​跨境汇款手续费等关于管理费所有账户首年免管理费,账户超过6个月没余额也不活跃,会自动关闭,也可以找客服申请关户,开户6个月内关户需要收取 30 新元的关户费,第 2 年开始的管理费。STS 账户: 外国人日均存款不超过2万新元 收取 10 新元/月。GSA 账户: 不需要管理费。360 账户: 外国人日均存款不超过 3000 新元 收取 2 新元/月MSA 账户(Monthly Savings Account): 日均存款不超过 500 新元 收取 2 新元/月前比较合适的保号方案是保留 GSA 账户 +360 账户或 MSA 账户 。MSA 账户...阅读全文

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

-config.php 包含了数据库访问凭据和其他一些对入侵系统有助的有用信息。大多数人都将其保留在主要的 WordPress 文件夹中,但可以将其移动到上层的文件夹。大多数情况下,该文件夹位于 Web 服务器根录之外,而且无法通过 HTTP 请求进行访问。 或者,也可以通过配置 Web 服务器(如 Apache .htaccess 文件)来保护它: order allow,deny deny from all 6. 尽可能授予用户最低权限角色 用户是任何系统最弱的一点 — 特别是当他们可以选择使用自己的弱口令并将其传给任何问他们索要的人时。WordPress 提供了 一系列的角色和功能 。大多数情况下,用户应该是: 编辑: 可以发布和管理自己和其他人的帖子的人 作者: 可以发布和管理自己的帖子的人 贡献者...阅读全文

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

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

田全球各地员工机器、网络相关的数据,而这些数据清楚表明了本田内部在使用哪家端点安全供应商,哪些设备在使用最新的安全防护软件,哪些设备依旧在运行旧版操作系统。 此外,这些数据包含了清楚的标记,可以非常容易地识别出 CEO、CFO 以及 CSO 等级别对应的电脑,本田 CEO 的完整电子邮件、全名、MAC 位置、Windows 操作系统版本、IP 及设备类型均可查到,甚至一些字符提供的信息与本田在日本的办事处位置相对应。 在研究人员提交该漏洞后,本田方面迅速封闭了该漏洞,并回复称:“非常感谢您指出漏洞。您发现的安全问题可能允许外部各方访问本田的一些基于云的数据,这些数据包括与员工及其计算机相关的信息。我们调查了系统的访问日志,发现没有任何第三方下载数据的迹象。前,没有证据表明数据泄露,不包括您...阅读全文

HTTP状态码详解

,而且有一个新的资源已经依据请求的需要而建立,且其 URI 已经随Location 头信息返回。假如需要的资源无法及时建立的话,应当返回 ‘202 Accepted’。 202 服务器已接受请求,但尚未处理。正如它可能被拒绝一样,最终该请求可能会也可能不会被执行。在异步操作的场合下,没有比发送这个状态码更方便的做法了。 返回202状态码的响应的的是允许服务器接受其他过程的请求(例如某个每天只执行一次的基于批处理的操作),而不必让客户端一直保持与服务器的连接直到批处理操作全部完成。在接受请求处理并返回202状态码的响应应当在返回的实体中包含一些指示处理当前状态的信息,以及指向处理状态监视器或状态预测的指针,以便用户能够估计操作是否已经完成。 203 服务器已成功处理了请求,但返回的实体头部元信...阅读全文

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

RabbitMQ 高可用实现镜像队列

rabbitmqctl在离线节点上执行forget_cluster_node命令,迫使RabbitMQ在未启动的slave节点中选择一个作为master。当在A节点执行rabbitmqctl forget_cluster_node -offline B时,RabbitMQ会mock一个节点代表A,执行forget_cluster_node命令将B提出cluster,然后A就能正常启动了。最后将新的slave节点加入A即可重新恢复镜像队列 场景5:A先停,B后停,且A和B均无法恢复,但是能得到A或B的磁盘文件 这个场景更加难以处理。将A或B的数据库文件($RabbitMQ_HOME/var/lib录中)copy至新节点C的录下,再将C的hostname改成A或者B的hostname。如果copy过来的是A节点...阅读全文

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

Golang 操作 Kafka 样例

1. Kafka介绍 1.1.1. Kafka是什么 kafka使用scala开发,支持多语言客户端(c++、java、python、go等) Kafka最先由LinkedIn公司开发,之后成为Apache的顶级项。 Kafka是一个分布式的、分区化、可复制提交的日志服务 LinkedIn使用Kafka实现了公司不同应用程序之间的松耦和,那么作为一个可扩展、高可靠的消息系统 支持高Throughput的应用 scale out:无需停机即可扩展机器 持久化:通过将数据持久化到硬盘以及replication防止数据丢失 支持online和offline的场景 复制代码 1.1.2. Kafka的特点 Kafka是分布式的,其所有的构件borker(服务端集群)、producer(消息生产...阅读全文

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

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

. Etcher USB映像刻录器 如果你经常试用新的Linux发行版,就知道拥有一款可靠、易于使用的映像刻录器有多重要――Etcher就是这样一款映像刻录器。 它是一款完全开源的应用程序,由Resin.io的人员开发。简单的界面让你可以轻松完成将ISO或IMG映像文件刻录到USB或SD卡的过程。 你可以从Etcher官方网站下载这款应用程序的最新Linux版本。 11. Atom文本编辑器 虽然它不是Linux上唯一可选择的文本编辑器(有好多文本编辑器),但是Github的Atom无疑是比较受欢迎的选择之一。 作为一款开源文本编辑器,Atom让你能够定制它的几乎每一项功能,可以手动定制,也可以通过安装其他Atom用户开发的程序包、插件和主题来定制。 你可以从其在Github的项页面下载最新版本的...阅读全文

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

译:Kubernetes 最佳实践

本文翻译自 Jack Roper 的文章 Kubernetes Best Practice。译者:文章中作者从应用程序开发、治理和集群配置三个方面给出了一些 Kubernetes 的最佳实践,同时翻译过程中也加入了我过往的一些使用经验。有误的地方,也欢迎大家指正。在这篇文章中,我将介绍一些使用 Kubernetes (K8s) 时的最佳实践。作为最流行的容器编排系统,K8s 是现代云工程师掌握的事实标准。众所周知,不管使用还是维护 K8s 复杂的系统,因此很好地掌握它应该做什么和不应该做什么,并知道什么是可能的,将是一个好的开局。这些建议包含 3 大类中的常见问题,即应用程序开发、治理和集群配置。最佳实践录使用命名空间使用就绪和存活探针(译者注:还有启动探针)使用自动缩放使用资源请求和约...阅读全文

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

2017 年会是 Serverless 爆发之年吗

中小型公司,尤其是互联网行业的创业公司,本身并没有太多的技术人员,如果设计系统时需要考虑诸多的技术问题,例如 Web 应用服务器如何配置、数据库如何配置、消息服务中间件如何搭建等等,那对于他们来说人员成本、系统成本会很高,Serverless 架构的出现,让这种情况可能可以大幅度改善。 初识 Serverless? 在前主流云计算 IaaS(Infrastructure-as-a-Service,基础设施即服务)和 PaaS(Platform-as-a-Service,平台即服务)中,开发人员进行业务开发时,仍然需要关心很多和服务器相关的服务端开发工作,比如缓存、消息服务、Web 应用服务器、数据库,以及对服务器进行性能优化,还需要考虑存储和计算资源,考虑负载均衡和横向扩展能力,考虑服务...阅读全文

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

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

压缩为单个提交。事实证明,在 Docker 中也可以使用多阶段构建达到类似的的。在这个示例中,你将构建一个 Node.js 容器。让我们从 index.js 开始: const express = require('express') const app = express() app.get('/', (req, res) => res.send('Hello World!')) app.listen(3000, () => { console.log(`Example app listening on port 3000!`) }) 和 package.json: { "name": "hello-world", "version": "1.0.0", "main...阅读全文

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

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

等),填表的过程就是根据递推关系,从1行1列开始,以行或者列优先的顺序,依次填写表格,最后根据整个表格的数据通过简单的取舍或者运算求得问题的最优解。 f(n,m)=max{f(n-1,m), f(n-1,m-w[n])+P(n,m)} 算法实现的步骤 1、创建一个一维数组或者二维数组,保存每一个子问题的结果,具体创建一维数组还是二维数组看题而定,基本上如果题中给出的是一个一维数组进行操作,就可以只创建一个一维数组,如果题中给出了两个一维数组进行操作或者两种不同类型的变量值,比如背包问题中的不同物体的体积与总体积,找零钱问题中的不同面值零钱与总钱数,这样就需要创建一个二维数组。 注:需要创建二维数组的解法,都可以创建一个一维数组运用滚动数组的方式来解决,即一位数组中的值不停的变化,后面会...阅读全文

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

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

家 Dijkstra 就是“递归”的强烈支持者。现在的语言里面都有递归,然而你可能不知道,早期的程序语言是不支持递归的。直到 Dijkstra 强烈要求 Algol 60 委员会加入对递归的支持,这个局面才改变了。Tony Hoare 也是语言特性设计者。他设计了几个重要的语言特性,却没有设计过任何语言。另外大家不要忘了,有个语言专家叫王垠,他是早期 union type 的支持者和实现者,也是 checked exception 特性的支持者,他在自己的博文里指出了 checked exception 和 union type 之间的关系 很多人盲的崇拜语言设计者,只要听到有人设计(或者美其民曰“发明”)了一个语言,就热血沸腾,佩服的五体投地。他们却没有理解,其实所有的程序语言,不过是像...阅读全文

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

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

,即为计算 Pod 资源请求(Request)或者使用量(Usage)消耗的成本。根据不同类型的资源,按照 Pod 所在 Node 的 IaaS 计价方式作为基本参考,来计算 Pod 所使用的成本费用。 前云厂商的 Node 计费模式一般是**包年包月(Month)**、**按量计费(Hour)**和**竞价实例**。当 Kubecost 计算 Pod 成本时,即使是相同请求量的 Container,在不同类型的 Node 上成本消耗也不一致。 上述三种计费模式中,由于用户购买的是一个整体实例,因此按照实例计费,不针对单独一个资源计费。而通过使用 Kubecost,可以参照模型分析资源类型分摊成本、每种资源分摊成本。 例如,一个云厂商提供的某种 Node(虚拟机、物理机),CPU 为1核(C...阅读全文

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

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

索容易许多。 创建大文档集合 MongoDB 乐于把最大 16MB 的文档置于集合中,而 GridFS 设计用于超过 16MB 的大文档。但是,可以容纳大文档并不意味着那是一个好主意。MongoDB 在单个文档的大小为几 KB 时表现最好,处理它们的方式更像宽 SQL 表的行。大文档会导致 多种性能问题 。 使用大数组创建文档 文档可以包含数组。最好是把数组元素的数量保持在四位数以下。如果数组频繁添加,会使得包含它的文档过大,那样, 它在磁盘上的位置就需要移动 ,反过来,这意味着 每个索引都必须更新 。当一个包含大数组的文档重新索引时,由于 每个数组元素都有一个单独的索引条 ,所以会发生大量的索引重写。此外,这种重新索引在这类文档插入或删除时也会发生。 为了最小化这个问题,MongoDB...阅读全文

WebAssembly:无需容器的 Docker (下)

包括一个可以构建到 wasm32-wasi 标的 clang 编译器,以及在 WASI 之上实现基本 POSIX 系统调用接口的 wasi-libc。 使用 WASI SDK,我们可以从 PHP 的代码库中构建一个用 C 编写的 Wasm 模块,。之后,我们需要一个非常简单的基于 scratch 的 Dockerfile 来制作一个可以使用 Docker+Wasm 运行的 OCI 镜像。构建一个 WASM 二进制码假设你现在位于 wlr-demo 文件夹,这是前期准备工作的一部分,可以运行以下命令来构建 Wasm 二进制文件。export WASI_SDK_ROOT=/opt/wasi-sdk/ export WASMLABS_RUNTIME=wasmedge ./wl-make.sh...阅读全文

博文 2023-01-03 06:39:46 spider

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

截止前k8s1.18,k8s已经支持标准容器,sidecar容器,init 容器,ephemeral 容器 4种类型的containers。本文我们详细介绍一下这4种容器的特性已经使用场景。 Ephemeral 容器 临时容器与其他容器的不同之处在于,它们缺少对资源或执行的保证,并且永远不会自动重启,因此不适用于构建应用程序。临时容器使用与常规容器相同的 ContainerSpec 段进行描述,但许多字段是不相容且不允许的。 临时容器没有端口配置,因此像 ports,livenessProbe,readinessProbe 这样的字段是不允许的。 Pod 资源分配是不可变的,因此 resources 配置是不允许的。 有关允许字段的完整列表,请参见临时容器参考文档。 临时容器是使用...阅读全文

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

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

写给五年陈的自己 写周报,写的兴起,编写周报,还边用虎跑泉,泡铁观音喝。自己写周报的**惯还是要改一改,自己是个性情中人,写个周报也透露了太多情感在周报里。有很多人肯定觉得不好,也许以后我也会改,改的越来越干练,掏心的话少说。 兴奋了,喝了茶,睡不着了。灵感闪动,本周是个值得纪念的日子,写个文章纪念下过去。 回想这一路路走来,还是很感恩收获的一切,我渐渐从一名菜鸟,成长为一位架构师,记得毕业的时候我给自己定的标是:五年要成为一方面的专家。虽然,实际的成长比这个慢了两年,但是我还是庆幸自己当初果断的裸辞,然后进入支付宝。 每个架构师都是独立无二的,每个架构师都应该有自己的情怀,这些情怀是你的世界观。 我是如何成长为一个架构师的,我姑且给自己定的 title 就是架构师,不要认为有架构师的...阅读全文

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

深入理解Golang之context

// reading from req.Header after their Handler starts // and maybe mutates it (Issue 14940) wants10KeepAlive: req.wantsHttp10KeepAlive(), wantsClose: req.wantsClose(), } ... return w, nil } 这样处理的的主要有以下几点:一旦请求超时,即可中断当前请求;在处理构建response过程中如果发生错误,可直接调用response对象的cancelCtx方法结束当前请求;在处理构建response完成之后,调用response对象的cancelCtx方法结束当前请求。在整个server处理流程中,使用了一条context链贯穿...阅读全文

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

协议介绍之深入了解 gRPC

好没有 HTTP/2 支持,也仅仅有一个可用的 protobuf 实现。为了支持 gRPC,我们 team 付出了很大的努力,也走了很多弯路,从最初使用纯 Rust 的 rust-grpc 项,到后来自己基于 c-grpc 封装了 grpc-rs,还是有很多可以说的,后面在慢慢道来。如果你对 gRPC 和 rust 都很感兴趣,欢迎参与开发。 gRPC-rs: https://github.com/pingcap/grpc-rs 原文作者:siddontang@简书 链接:https://www.jianshu.com/p/48ad37e8b4ed 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。...阅读全文

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

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

应用性能监测的可观测性解决思路。​要采集容器、节点运行环境、应用、网络各个维度的数据挑战非常大,云原生社区针对不同需求给出了 cAdvisor、node exporter、kube-state-metics 等多种方式,但仍然无法满足全部需求。维护众多采集器的成本也不容小觑,引发的一个思考是能否有一种对应用无侵入的、支持动态扩展的数据采集方案?前最好的答案是 eBPF。数据采集(eBPF 超能力)1、eBPF 的超能力​eBPF 相当于在内核中构建了一个执行引擎,通过内核调用将这段程序 attach 到某个内核事件上,实现监听内核事件。有了事件我们就能进一步做协议推导,筛选出感兴趣的协议,对事件进一步处理后放到 ringbuffer 或者 eBPF 自带的数据结构 Map 中,供用户态进程...阅读全文

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

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

本文从 Redis 的基本特性入手,通过讲述Redis的数据结构和主要命令,对 Redis 的基本功能进行直观介绍。之后概览Redis提供的高级能力,并在部署、维护、性能调优等多个方面进行进一步的介绍。本文适合使用Redis的普通开发人员,以及对Redis进行选型、架构设计和性能调优的架构设计人员。 录 概述 Redis的数据结构和相关常用命令 数据持久化 内存管理与数据淘汰机制 Pipelining 事务与Scripting Redis性能调优 主从复制与集群分片 Redis Java客户端的选择 概述 Redis是一个开源的,基于内存的结构化数据存储媒介,可以作为数据库、缓存服务或消息服务使用。 Redis支持多种数据结构,包括字符串、哈希表、链表、集合、有序集合、位图...阅读全文

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