0.5 * (4 GB - 1 GB) = 1.5 GB
)。相反,总内存为1.25 GB的系统将为WiredTiger缓存分配256 MB,因为这是总内存的一半以上减去1 GB (0.5 * (1.25 GB - 1 GB) = 128 MB < 256 MB
)。storage.wiredTiger.engineConfig.cacheSizeGB
和 --wiredTigerCacheSizeGB
。避免将WiredTiger内部缓存的大小增加到其默认值以上。storage.wiredTiger.engineConfig.cacheSizeGB
限制WiredTiger内部缓存的大小。操作系统将使用可用的空闲内存进行文件系统缓存,从而允许压缩的MongoDB数据文件保留在内存中。此外,操作系统将使用任何可用的内存来缓冲文件系统块和文件系统缓存。mongod
是运行在无法访问所有系统中所有可用的内存的容器(例如lxc
, cgroups
,Docker,等等)中时,您必须将storage.wiredTiger.engineConfig.cacheSizeGB
的值设置为小于容器中可用内存大小的值。确切的大小取决于容器中运行的其他进程。请参阅 memLimitMB
。writeConcernMajorityJournalDefault
是真的,写关注["majority"
](https://docs.mongodb.com/manual/reference/write-concern/#writeconcern."majority")参数为`j: true`。db.collection.stats()
标题下的wiredTiger.block-manager.file bytes available for reuse
输出中。db.collection.storageSize()
返回磁盘存储上集合的大小(以字节为单位)。如果集合数据被压缩(即default for WiredTiger
),则存储大小将反映压缩后的大小,并且可能小于db.collection.dataSize()
所返回的值 。db.collection.totalIndexSize()
返回集合的索引大小(以字节为单位)。如果索引使用前缀压缩(即default for WiredTiger
),则返回的大小将反映压缩后的大小。