【解答】

1:首先在数据库中EOS_UNIQUE_TABLE表保存了某业务表和对应主键的当前最大序列号(第一次调用getPrimaryKey就会自动新增一条记录)

2:该序列号默认值为20,相当于在应用缓存中存了20个ID,从1开始,即第一次存这个值为20,每次更新都是20递增,比如40,60,这个20是可以自定义配置的(在governor序列号生成器的缓冲池大小,DAS配置中,缺省20),

3:当用户调用获取主键的操作时,从内存中取出当前的序列号加1返回,然后更新内存中保存的最大序列号(加1),当内存中的号段用完后,再更新数据库,获取下一个号码段。