我有一个函数(无法更改/替换的旧版VB6 COM),它接受文件的Base64字符串表示或UNC或文件的本地路径。
这些值来自客户的WFC API调用,可以是字节数组,也可以是文件路径。如果文件以字节数组形式出现,我们目前将字节数组转换为base64字符串以传递给函数。
问题出现在如果客户传入太多非常大的文件,我们有时会在服务器上耗尽内存。我们的临时解决方案是,不是转换为base64,而是将字节数组保存到磁盘目录中,然后将本地文件路径传递给函数。
我的问题是,这里的回报有减少吗?我敢肯定,如果它是一个非常大的文件,保存到磁盘会更好,但如果它是一个100kb的文件,那么转换为base64并以这种方式传递它会更快更高效吗?意思是,我可以检查字节数组的长度,如果文件小于,例如400kb转换为base64,如果超过400kb,保存到磁盘?