다음 두 메소드는 PartitionDefition 인터페이스를 통해 추가됩니다.
/** * This sets a string as alias name * */ void setPartitionAlias(String aliasName); /** * This returns the partition alias string for this partition * * @return String */ String getPartitionAlias();
두 개의 파티션 별명 샘플이 프로그래밍 예제로 제공됩니다. 하나는 파티션 별명의 작동 방법을 보여주고, 다른 하나는 동일한 응용프로그램에서 혼합된 파티션 별명 및 별명이 없는 파티션에서 어떻게 작동하는지 보여줍니다. 두 샘플은 다음과 같습니다.
파티션 별명 샘플
public PartitionDefinition[] getPartitions() { try { //1-1 between partition and alias numOfAlias=numOfPartitions; partitionAlias= new String[numOfAlias]; } catch(Exception e){ … } PartitionDefinition[] rc = new PartitionDefinition[numOfPartitions]; for (int i = 1; i <= numOfPartitions; ++i) { rc[i - 1] = ivManager.createPartitionDefinition(PartitionAlias.PARTITION_PREFIX + padZeroToString(i + "", 6)); rc[i-1].setPartitionAlias(PartitionAlias.PARTITION_ALIAS + padZeroToString(i + "", 6)); } return rc; }
public class PartitionAlias_PartitionKey { /** * return the partition string as the partition key * @param partition * @return */ public static String pingAlias(String partitionAlias) { return partitionAlias; } /** * return the partition string as the partition key * @param partition * @return */ public static String ping(String partition) { return partition; }
일부 메소드는 파티션 별명 컨텍스트를 사용할 수 있지만 다른 메소드는 파티션 컨텍스트를 사용할 수 있습니다.
혼합된 파티션 별명 및 별명이 없는 파티션 샘플
public PartitionDefinition[] getPartitions() { try { numOfAlias=numOfPartitions/5; partitionAlias= new String[numOfAlias]; } catch(Exception e){ …… } PartitionDefinition[] rc = new PartitionDefinition[numOfPartitions]; for (int i = 1; i <= numOfPartitions; ++i) { rc[i - 1] = ivManager.createPartitionDefinition(MixedAliasNoAliasPartition.PARTITION_PREFIX + padZeroToString(i + "", 6)); if ((i-1)%5==0){ int k= (i-1)/5 + 1; rc[i-1].setPartitionAlias(MixedAliasNoAliasPartition.PARTITION_ALIAS + padZeroToString(k + "", 6)); } } return rc; }
라우팅은 파티션 별명 컨텍스트(존재할 경우)나 파티션 컨텍스트를 사용할 수 있습니다. 파티션에 대해 파티션 별명이 존재하지 않지만 클라이언트 요청이 파티션 별명 컨텍스트를 가지고 있는 경우, 클라이언트 요청은 NO_IMPLEMENT 예외를 수신하지만 이 별명이 없는 파티션은 파티션 컨텍스트와 함께 라우트될 수 있습니다. 모든 응용프로그램에서, 일부 파티션은 별명을 가지고 있지만 다른 파티션은 별명이 없을 수 있습니다.
Related concepts
파티션 별명의 개념