在从Azure进行同步时,我就是这样做的
MSPullSettings *pullSettings = [[MSPullSettings alloc] initWithPageSize:500];
[self.table pullWithQuery:query queryId:[super getQueryIdForQuery:@"allCustomers"] settings:pullSettings
completion:^(NSError * _Nullable error) {
//Let the caller know that we have finished
if (completion != nil) {
dispatch_async(dispatch_get_main_queue(), ^{
completion(error);
});
}
}];
参考this。
我知道Azure的默认页面大小为50。 我观察到,如果我为1000条记录提供更多的页面大小(1000),那么1000条记录的页面大小(50)所需的时间就会缩短。
假设我不知道我的服务器上有多少条记录,所以我给出了最大的页面大小以获得更好的性能。
但我的问题是, 增加页面大小有任何缺点吗? (即50页记录页面大小为1000)
或
在给出页面大小之前,有没有办法知道服务器中有多少条记录?
答案 0 :(得分:1)
PageSize是在1个请求中获取从服务器到同步表的记录数的属性。如果您的响应数据大小不是很大,那么将PageSize增加到1000就没有任何缺点。一件重要的事情是,如果将客户端页面大小增加到1000,则还应将服务器上的页面大小增加到1000.还要确保服务器PageSize应始终大于客户端PageSize。