我通过自制软件在我的Mac上安装了Riak,并希望设置一个本地三节点集群.
然而,basho快速跟踪教程基于源代码构建,据我所知,这些说明将不适用于我的自制软件安装(例如,make devrel将生成3个节点,但我的安装不包含makefile).
我试图使3份/usr/local/Cellar/riak,命名dev1,dev2和dev3.然后我调整http,handoff_port并且pb_port在设置devN/1.1.1x86_64/libexec/etc/app.config以及所述-name在设置 devN/1.1.1x86_64/libexec/etc/vm.args(I用于81XX用于使用由节点DEV1,82XX为那些由节点DEV2所使用的,等.对于端口-name我用设定riak1@127.0.0.1,riak2@127.0.0.1等).
可以使用成功启动节点dev1 ./dev1/1.1.1x86_64/bin/riak start.但是在启动节点dev2时./dev2/1.1.1x86_64/bin/riak start,riak 抱怨该节点已在运行.
如何让riak将这三个安装识别为单独的节点?
我正在使用Terraform模块来管理AWS Elastic Beanstalk应用程序和环境,并希望将环境变量列表传递给模块.
由于缺乏更好的解决方案,我目前正在传递一个名单和值的平面列表,并声明一定数量的setting节(见下文).这似乎有效,除非当然有人会传递比我预期更多的环境变量.
那么 - 有更好的方法来实现这一目标吗?
# file: main.tf
variable env_vars {
default = ["FIRST_ENV_VAR", "1", "SECOND_ENV_VAR", "2"]
}
provider "aws" {
region = "eu-central-1"
}
module "beanstalk-app" {
source = "./beanstalk"
env_vars = "${var.env_vars}"
}
# file: beanstalk/main.tf
variable "env_vars" {
type = "list"
}
resource "aws_elastic_beanstalk_application" "app" {
name = "myapp"
}
resource "aws_elastic_beanstalk_environment" "env" {
name = "myapp-env"
application = "${aws_elastic_beanstalk_application.app.name}"
solution_stack_name = "64bit Amazon Linux 2016.03 v2.1.3 running Tomcat 8 Java 8"
setting …Run Code Online (Sandbox Code Playgroud) 我将Oracle 11g用于我的数据库,将Oracle Streams AQ功能用作JMS实现.
据我所知,应该可以实现一个基于Spring的消息驱动的POJO(MDP),它使用相同的数据源进行事务数据访问和JMS事务 - 所有这些都没有XA-Transactions(IIRC,它作为一个市场销售) SpringSource Advanced Pack for Oracle的特性).
这也可以使用Hibernate吗?理想情况下,我的MDP将启动JMS事务并从队列中读取消息,然后通过Hibernate重新使用该事务进行数据访问.如果出现任何问题,JMS和数据库事务都将回退,而不使用两阶段提交(2PC).
我不是一个交易大师,所以在我开始深入挖掘之前,任何人都可以确认这是可能的并且也有意义吗?
更新:
我想要的是共享事务资源模式的实现.该示例代码演示了它的ActiveMQ和JDBC,但我需要使用Oracle流AQ和Hibernate.
Update2: SpringSource Advanced Pack for Oracle 作为Spring Data JDBC的一部分开源,它"提供了使用单个本地事务管理器进行数据库和消息访问的选项,而无需采用昂贵的分布式两阶段提交事务管理".
当尝试为使用 Rails 实现的服务生成 YARD 文档时,我收到以下警告:
$ yardoc
[warn]: in YARD::Handlers::Ruby::MixinHandler: Undocumentable mixin:
YARD::Parser::UndocumentableError for class MyClass
[warn]: in file 'app/models/my_class.rb':7:
7: include Rails.application.routes.url_helpers
Run Code Online (Sandbox Code Playgroud)
我的理解是 YARD 无法确定 mixin 的类型,因为它仅在运行时可用。
那么在这里该怎么做才是正确的呢?是否可以正确记录 mixin?如果没有,我该如何摆脱警告?
我用来gcloud sql instances create创建 CloudSQL 实例。通常,该命令会超时,但会提供一个等待数据库创建完成的命令。
$ gcloud sql instances create mydb
Creating Cloud SQL instance...failed.
ERROR: (gcloud.sql.instances.create) Operation https://www.googleapis.com/sql/v1beta4/projects/foobar/operations/abcd is taking longer than expected.
You can continue waiting for the operation by running `gcloud sql operations wait --project foobar abcd`
$ gcloud sql operations wait --project foobar abcd
Waiting for [https://www.googleapis.com/sql/v1beta4/projects/foobar/operations/abcd]...done.
NAME TYPE START END ERROR STATUS
abcd CREATE 2018-03-19T15:04:29.477+00:00 2018-03-19T15:10:08.561+00:00 - DONE
Run Code Online (Sandbox Code Playgroud)
我想知道是否可以配置超时gcloud sql instances create?我似乎在文档中找不到任何内容,甚至找不到它默认使用的超时。
另一种选择是异步启动实例创建,列出挂起的操作并等待其完成:
$ gcloud sql instances create …Run Code Online (Sandbox Code Playgroud)