- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在尝试为 Cassandra 设置一个新的 Recipe ,并在 cassandra.yaml
文件中包含以下关于最佳设置的注释:
# For workloads with more data than can fit in memory, Cassandra's
# bottleneck will be reads that need to fetch data from
# disk. "concurrent_reads" should be set to (16 * number_of_drives) in
# order to allow the operations to enqueue low enough in the stack
# that the OS and drives can reorder them.
#
# On the other hand, since writes are almost never IO bound, the ideal
# number of "concurrent_writes" is dependent on the number of cores in
# your system; (8 * number_of_cores) is a good rule of thumb.
但是,无法确定属性中预定义的内核数
或磁盘驱动器数
,因为部署的服务器可能具有不同的硬件设置。
是否可以使用部署的硬件设置动态覆盖属性?我读了Opscode doc而且我认为它没有办法捕获来自cat/proc/cpuinfo | grep 处理器 | wc -l
我在想这样的事情:
cookbook-cassandra/recipes/default.rb
cores = command "cat /proc/cpuinfo | grep processor | wc -l"
node.default["cassandra"]["concurrent_reads"] = cores*8
node.default["cassandra"]["concurrent_writes"] = cores*8
cookbook-cassandra/attributes/default.rb
default[:cassandra] = {
...
# determined by 8 * number of cores
:concurrent_reads => 16,
:concurrent_writes => 16,
..
}
最佳答案
您可以使用 mixlib-shellout
在 Chef 中捕获 stdout
(此处的文档:https://github.com/opscode/mixlib-shellout)。
在您的示例中,您可以执行以下操作:
cc = Mixlib::ShellOut.new("cat /proc/cpuinfo | grep processor | wc -l")
cores = cc.run_command.stdout.to_i # runs it, gets stdout, converts to integer
关于ruby - 使用 Chef's Cookbook Recipe 动态覆盖属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17608296/
我正在尝试为服务器提供依赖于旧版本 mysql cookbook (5.6.3) 的 Chef 项目。由于这个特定版本与 Ubuntu 14.04 之后的任何更新版本都不兼容,我尝试更新到最新版本 (
我正在为厨师学习曲线而苦苦挣扎。这两个命令有什么区别,为什么有两个? knife cookbook :knife cookbook 子命令用于与位于 Chef 服务器或本地 Chef-repo 上的
我正在接受以下 Chef 服务器培训: 学习 Chef>教程>管理节点>Red Hat Enterprise Linux>Hosted Chef>将说明书上传到 Chef 服务器 教程刚刚让我使用“k
我打算使用 https://github.com/opscode-cookbooks/mysql但是当我运行 vagrant provision 时 找不到菜谱 mysql 的 recipe ruby
我正在写一本 Recipe ,在同一台主机上安装多个 tomcat 实例。我为多个实例创建了一个散列,这个散列将包含 shutdown_port 和 startup_port 的键值对。例如 - in
我已经搞了两天了,还是没明白。基本上,我从头开始使用 JQuery Cookbook 模式。我的问题是表单 html 页面加载正常,但代码无法识别我的提交按钮。这是代码的相关部分: 单独的 HTML:
本文实例讲述了Python在字符串的开头或结尾处进行文本匹配操作。分享给大家供大家参考,具体如下: 问题:在字符串的开头或结尾处按照指定的文本模式做检查,例如检查文件的扩展名、URL协议类型等;
本文实例讲述了Python将多个映射合并为单个映射的方法。分享给大家供大家参考,具体如下: 问题:在逻辑上将多个字典或映射合并为一个单独的映射结构,以此执行某些特定的操作,比如查找值或者检查键是否
本文实例讲述了Python针对任意多的分隔符拆分字符串操作。分享给大家供大家参考,具体如下: 问题:将分隔符(以及分隔符之间的空格)不一致的字符串拆分为不同的字段; 解决方案:使用更为灵活的re
本文实例讲述了Python从字典中提取子集的方法。分享给大家供大家参考,具体如下: 问题:想创建一个字典,其本身是另一个字典的子集 解决方案:利用字典推导式(dictionary compreh
本文实例讲述了Python将名称映射到序列元素中的方法。分享给大家供大家参考,具体如下: 问题:希望通过名称来访问元素,减少结构中对位置的依赖性 解决方案:使用命名元组collections.n
本文实例讲述了Python同时对数据做转换和换算处理操作。分享给大家供大家参考,具体如下: 问题:我们需要调用一个换算函数(例如sum()、min()、max()),但是首先需对数据做转换或者筛选
本文实例讲述了Python找出序列中出现次数最多的元素。分享给大家供大家参考,具体如下: 问题:找出一个元素序列中出现次数最多的元素是什么 解决方案:collections模块中的Counter
本文实例讲述了Python通过公共键对字典列表排序算法。分享给大家供大家参考,具体如下: 问题:想根据一个或多个字典中的值来对列表排序 解决方案:利用operator模块中的itemgetter
本文实例讲述了Python实现对不原生支持比较操作的对象排序算法。分享给大家供大家参考,具体如下: 问题:想在同一个类的实例之间做排序,但是它们并不原生支持比较操作。 解决方案:使用内建的sor
本文实例讲述了Python根据字段将记录分组操作。分享给大家供大家参考,具体如下: 问题:想根据字典或者对象实例的某个特定的字典(比如日期)来分组迭代数据 解决方案:itertools.grou
本文实例讲述了Python筛选及提取序列中元素的方法。分享给大家供大家参考,具体如下: 问题:提取出序列中的值或者根据某些标准对序列做删减 解决方案:列表推导式、生成器表达式、使用内建的filt
本文实例讲述了Python从序列中移除重复项且保持元素间顺序不变的方法。分享给大家供大家参考,具体如下: 问题:从序列中移除重复的元素,但仍然保持剩下的元素顺序不变 解决方案: 1、如果序列中
本文实例讲述了Python对切片命名清除索引的方法。分享给大家供大家参考,具体如下: 问题:如何清理掉到处都是硬编码的切片索引 解决方案:对切片命名 假设有一些代码用来从字符串的固定位置中取出
我已经在这本 Recipe 上苦苦挣扎了一段时间了。 我正在尝试将包括 Azure SDK 在内的许多资源安装到 Windows Server 2012 R2 实例上。 最初我在堆栈跟踪中收到以下错误
我是一名优秀的程序员,十分优秀!