小编del*_*rox的帖子

Postgres Index-only-scan:我们可以忽略可见性映射还是避免堆取?

对不起,在实际问题之前有很多上下文,因为我们已经仔细研究了这个,我想给你完整的背景.

某些上下文:postgres仅索引扫描依赖于可见性映射(VM).如果页面未在可见性映射中标记为不完全可见,则postgres将获取该页面以确保此事务对数据可见,即使仅执行索引扫描也是如此.不幸的是,这可以大大减慢索引只扫描.索引可能会返回10k行的结果,但索引本身只能跨越50页(就IO而言非常快).但是,如果未设置VM,则会进行额外的10k堆提取(在IO方面减慢200倍).

详细信息:https://wiki.postgresql.org/wiki/Index-only_scans#The_Visibility_Map_.28and_other_relation_forks.29

自己试试:在VACUUM之前和之后,EXPLAIN ANALYZE仅索引查询.您可以在VACUUM之后看到堆提取的数量下降(假设您之前在VM中有一些脏页)

已经尝试过:我们已经调整了autovacuum,我们经常吸尘.这有很大帮助,但我们想要更快.

问题(最后):在进行仅索引扫描时是否可以跳过堆取?我知道在阅读时我们不会有完美的MVCC,但我们对此感到满意.索引中的数据足够接近,绝对不值得数千个堆提取的开销,以确保我们不会查看稍微陈旧的数据.借用NoSQL中的一个术语,我们可以完成"最终一致性"读取.

谢谢!

postgresql indexing

7
推荐指数
1
解决办法
718
查看次数

iOS 9:未设置UICollectionView dataSource

自iOS 9推出以来,NSInternalInconsistencyException:即使设置了数据源,crashalytics也报告了相当多的崩溃事件.感觉它可能是一个SDK错误,但我不知道如何避免它.

细节:

  • 这只发生在iOS 9上.在iOS 9上发生了数百次,在7/8上发生了零次
  • 这发生在UIKit代码深处的主线程上
  • 我正在设置dataSource,但看起来UICollectionView比数据源寿命长?
  • 没有一致的复制品,但根据crashalytics,它每天都会发生多次.
Thread : Fatal Exception: NSInternalInconsistencyException
0  CoreFoundation                 0x181a91900 __exceptionPreprocess
1  libobjc.A.dylib                0x1810fff80 objc_exception_throw
2  CoreFoundation                 0x181a917d0 +[NSException raise:format:]
3  Foundation                     0x18240499c -[NSAssertionHandler handleFailureInMethod:object:file:lineNumber:description:]
4  UIKit                          0x1869152dc -[UICollectionView _createPreparedSupplementaryViewForElementOfKind:atIndexPath:withLayoutAttributes:applyAttributes:]
5  UIKit                          0x1867e8990 -[UICollectionView _updateVisibleCellsNow:]
6  UIKit                          0x1867e389c -[UICollectionView layoutSubviews]

ios uicollectionview ios9

7
推荐指数
0
解决办法
2099
查看次数

UICollectionViewData updateItemCounts 崩溃

我从 Apple 的 UICollectionViewFlowLayout 布局代码深处收到崩溃,我不知道如何解决这些问题(下面的堆栈跟踪)。任何建议将不胜感激。

细节:

  • 不幸的是我无法重现这个问题
  • 这个问题并不常见(它发生在不到 0.1% 的会话中)但它是我们的 #1 崩溃
#0. Crashed: com.apple.main-thread
0  libsystem_platform.dylib       0x1879490d4 __bzero + 36
1  UIKit                          0x18e824e40 -[UICollectionViewData _updateItemCounts] + 544
2  UIKit                          0x18e824e40 -[UICollectionViewData _updateItemCounts] + 544
3  UIKit                          0x18e8e67e0 -[UICollectionViewData numberOfSections] + 28
4  UIKit                          0x18f086bc0 -[UICollectionViewFlowLayout _getSizingInfosWithExistingSizingDictionary:] + 612
5  UIKit                          0x18f088834 -[UICollectionViewFlowLayout _fetchItemsInfoForRect:] + 152
6  UIKit                          0x18e8e66b4 -[UICollectionViewFlowLayout prepareLayout] + 224
7  UIKit                          0x18e7cf574 -[UICollectionViewData _prepareToLoadData] + 164
8  UIKit                          0x18e7ceb5c -[UICollectionViewData validateLayoutInRect:] + 100
9  UIKit                          0x18e7ce55c …
Run Code Online (Sandbox Code Playgroud)

ios uicollectionview uicollectionviewlayout

5
推荐指数
1
解决办法
2000
查看次数

Firebase AB Test有0位用户

我们已经使用Firebase远程配置启动了AB测试.它已经超过24小时了,并且当每个变体应该分配了数万个DAU时,它显示"总用户数:0".

  • 数据进入需要多长时间?
  • 有没有办法判断它是否正在运行?
  • 如果它保持为零,那么潜在的根本原因是什么?为什么没有人被分配到测试变体?

ios firebase firebase-remote-config

5
推荐指数
1
解决办法
584
查看次数

托管Breakpad服务器(Electron Crash Reporter)

我想设置一个服务来收集breakpad崩溃报告(特别是使用Electron Crash Reporter的电子应用程序:https://github.com/electron/electron/blob/master/docs/api/crash-reporter.md)

我能找到的唯一服务器只是转储minidump并将它们显示在一个列表中,这对于有数百万个会话生成数百个崩溃报告的应用程序没有帮助.Fabric/Crashlytics为iOS/Android做的事情是理想的(集群匹配报告,按发布排序).托管的东西也会非常好.

  • 收集破坏者崩溃报告是否有更好的项目?
  • 有没有好的托管选项
  • 是否有任何中间件可以收集破坏平台报告并将其发送到Crashlytics,HockeyApp或Firebase等托管服务?

谢谢!

google-breakpad electron

3
推荐指数
1
解决办法
1237
查看次数

S3 生命周期到期:SIA 对象的对象到期/删除是否需要花钱?

我计划删除大量 S3 标准不频繁访问 (SIA) 对象(超过一亿个),并希望确保我不会收到巨额账单。计划是使用生命周期到期来删除这些对象。

1) SIA 对象的生命周期到期是否有任何费用/成本?定价页面列出了“生命周期转换”的成本为 0.01 美元/1000 美元,但文档似乎暗示“生命周期转换”(移动到另一个存储类)和“生命周期到期”(删除对象)是两个独立的事情。没有列出“生命周期到期”的价格,但我不确定这是否意味着它是免费的(或者它是否被视为出于定价目的的过渡?)。

2) 使用 SIA 对象的生命周期到期删除 SIA 对象是否有任何其他费用/成本?

谢谢!

amazon-s3

2
推荐指数
2
解决办法
542
查看次数

Gmail使用Bigtable的一般架构是什么?

Google现在允许您使用BigTable开发应用程序(托管在Google Cloud Platform中称为"Cloud Bigtable"的产品).但是,我找不到太多关于如何为它设计架构的示例.他们有一份文件,但它的级别非常高:https://cloud.google.com/bigtable/docs/schema-design

我的问题:gmail的大致架构是什么(只是电子邮件列表组件).它是高大还是宽大的设计?它们用于主键的是什么?

大型应用程序中的任何其他生产示例都会受到赞赏,但我认为Gmail就是一个很好的例子.

bigtable google-cloud-bigtable

1
推荐指数
1
解决办法
758
查看次数