Hackxiaoya / CuteOne

这大概是最好的onedrive挂载程序了吧,我猜。
http://demo.cuteone.cn
834 stars 198 forks source link

【官方解答】为什么V2.X版本进行模块化组件化了? #30

Open Hackxiaoya opened 5 years ago

Hackxiaoya commented 5 years ago

CuteOne初衷是网盘挂载程序,可是后来使用者越来越多,反馈的功能意见也越来越多;
那么有些功能有些人需要,另外的人却不需要,到底是开发呢?还是不开发呢?
基于这样的现象明显,所以在V2.X版本进行了局部重构;
重构的初衷是为了减轻CuteOne,按需加载,你需要什么功能,你就安装说明模块或插件来进行功能支持;

CuteOne V2.X,保留网盘挂载核心功能,别的功能皆可卸载删除,实际运行代码只有0.3KB左右,重构使用了动态模块加载方式,占用内存可以忽略不计;

请别用图片、css、JS的总体资源来衡量项目是否臃肿,因为这些不会增加你的服务器负担,一点都不;

mysql和mongo的支撑说明: 稍微懂代码的人就能知道,mongo是高速读写的数据库,读写性能远远超越mysql,可是mongo的缺点就是不是关系数据库,但这也是mongo的读写高速的优点; CuteOne用mysql这样的关系数据库来存储基础数据,这是保证数据的安全; 使用mongo来进行网盘数据缓存是为了高速读写; 我们假设一下5TB的onedrive盘,共有5万个文件,那么拉取一次入库,想快速拉取入库mysql肯定是没有mongo快的,其次,用户访问的时候读的时候如果你是mysql,一个用户进行5万数据的读取,你的mysql压力就很大了,而且并不快;而用mongo就完全解决了这个问题; 所以想你网站更新缓存快,大量用户并发高,影响速度快,CuteOne采用mongo是正确的;

当然,你都完全不考虑速度的话,你用txt当数据存储自然也是没问题的;毕竟我作为开发者,更愿意做稳定高效可靠的产品,而不是拉低智商的去考虑怎么方便;