我在他们的网站上阅读了RabbitMQ的文档,遇到了似乎在做相同事情的两个术语-“ Durable Queues”和“ Disk Node”。根据文档(如果我创建磁盘节点),除消息,消息存储索引,队列索引和其他节点状态(不确定其他节点状态)以外的所有数据。
因此,如果我将节点设为Disk Node
,是否还需要将队列标记为durable
才能使代理重新启动?
durable exchanges
也有相同的问题。
答案 0 :(得分:0)
磁盘节点和持久队列是RabbitMQ中的两个不同概念。
RabbitMQ在特定的 function custom_update_roles( $user_login, $user ) {
if ( ! empty( $user->roles ) && is_array( $user->roles ) ) {
if ( in_array( "translator", $user->roles ) )
{
$user_id =$user->ID;
$post_count=count_user_posts( $user_id );
if ( $post_count>=5 ) {
// Success.
$u = new WP_User( $user_id );
$u->remove_role( 'translator' );
$u->add_role( 'editor' );
}
}
else
{
// This user is not a subscriber.
}
}
}
add_action( 'wp_login', 'custom_update_roles', 10, 2 );
表中维护某些内部信息(例如用户,密码,虚拟主机等)。磁盘节点将这些表存储在磁盘上。正如related documentation所述:
这不包括消息,消息存储索引,队列索引和其他节点状态。
为确保交换,队列或消息的持久性/持久性,您需要在声明/发布时明确声明它。