内存优化并非是为了尽可能减少内存使用,而是在保证系 统性能完全没问题的前提下,内存使用尽可能稳定和够用,从而在机器资源和 性能中达到一个最佳的折衷。 阿里云 MongoDB 帮用户指定了比较合适的 CacheSize 大小,不建议也无法修 改该值。 控制并发连接数,这个是最直接有效的方法,根据性能测试结果,100 个长连 接足以压满数据库,默认 MongoDB driver 也是跟后端建立 100 的连接池。
当连接到客户端(ECS 机器)很多时,就需要降低每个客户端的连接池大小,一 般建议跟整个数据库建立的长连接控制在 1000 以内,连接太多,一是内存开 销,另外多线程上下文的开销也会增加,影响请求处理延时。
降低单次请求的内存开销,比如通过建索引,减少 COLLSCAN、内存排序等。另外,在连接数合适的情况下内存占用持续走高,建议升级内存配置,从而避免 可能存在 OOM 和疯狂的 evict 导致系统性能急剧下滑。
资源来源于《阿里云数据库运维实战问题改》
https://developer.aliyun.com/topic/download?spm=a2c6h.20345107.J_6399686890.1.2e1e17dbzKUX5r&id=8198
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。