我们正在构建一个聊天应用程序,它应该能够处理数百万用户,并且能够轻松处理大量文件传输;我们决定使用 Ejabberd。
所以我的问题分为两部分:
Part One:
我做了一些关于用 Mongodb(NoSQL,速度和可扩展性)替换 Mnesia db(RDMS db 类型)的研究,结果证明效率不高,因为我们必须将 NoSQL 接口包装为 RDBMS 数据库。
我正在考虑这种方法:禁用 Ejabberd 服务器的 Mnesia 数据库(内置数据库),并使用 mongodb-erlang 插件存储所有内容,这可能吗?如果可能的话,它是否有效?
Part Two:
它是通过 Ejabberd 的mod_proxy65
插件为数百万用户处理此类预期大文件(用户可以传递视频)的文件传输的正确方法,还是有更好的方法,例如,在不同的应用程序/代理上解耦文件传输,我也需要对这部分进行一些澄清。