gemfire如何进行复制和分区区域的托管

时间:2014-07-10 13:16:50

标签: gemfire

1.宝石内部如何执行共址?

2.协同定位如何与分区区域一起使用?

3.协同定位如何与复制区域协同工作?

4.协同定位如何与复制区域和分区区域一起工作?

3.进行共址需要自定义分区吗?

1 个答案:

答案 0 :(得分:0)

Gemfire的共址功能存在,因此您可以确保您的交易将以内存速度而非网络速度发生。例如,假设您想通过CustomerId对问题进行分区。客户拥有与之相关的订单,发货和付款。假设发货时,您要插入货件记录,更新订单并更新客户记录。为了保证订单与客户记录位于同一位置,您需要做的是为包含OrderId和CustomerId的订单构建复合密钥。这可以像包含由连字符分隔的OrderId和CustomerId的String一样简单。然后,您需要实现一个PartitionResolver,它返回键的CustomerId部分。定义Orders区域时,您需要将以下内容添加到区域配置中:

<cache>
    <region name="Orders">
        <region-attributes>
            <partition-attributes colocated-with="Customers">
            <partition-resolver=CustomerIdPartitionResolver">
            <class-name>myPackage.CustomerIdPartitionResolver</class-name>
        </region-attributes>
    </region>
</cache>