这是我将要使用的类,并在循环中查询很多。
public class ManufacturerEntity extends RealmObject {
private ManufacturerEntity parent;
}
我正在从一个分页式Web服务(WS)下载以获取所有已知的制造商,我的网站数量超过5k,并且每页的WS最大项目数是100,因此我将向该WS进行50次调用。 >
对于每个调用,我将遍历100个制造商中的每一个,以将它们映射为Realm实体。问题是:为了获得最佳性能,我是否需要缓存所有使用Realm查询检索的ManufacturerEntity
,以避免以后遇到该制造商时再次进行查询?
这里是一个例子:
List<Manufacturer> backendManufacturers = call();
for (Manufacturer manufacturer : backendManufacturers) {
UUID parentId = manufacturer.getParent().getId();
//Realm query every time
//or call a method that'll cache the
//ManufacturerEntity with id = parentId ?
ManufacturerEntity parentEntity = ??;
ManufacturerEntity manufacturerEntity = map(manufacturer, parentEntity);
//save manufacturerEntity (and cache it) ?
}
我知道Realm确实非常快(这就是为什么我改用它的原因),但是它比HashMap
(或类似)还快吗?