我正在开发一个REST应用程序,可以用作大文件的数据上传服务。我创建文件块并上传每个块。我想有多个服务运行此服务(用于负载平衡)。我希望我的REST服务是一个无状态系统(没有关于每个存储的块的信息)。这将有助于我避免服务器亲和力。如果我允许服务器亲缘关系,我可以为每个上传请求设置一个服务器,并且块可以存储在磁盘中的临时文件中,并且可以在上载完成后移动到其他位置。
理想情况下,我会使用一个中心位置来存储数据。我想避免这种情况,因为这是单点故障(在分布式系统中很糟糕)。所以我在考虑使用像HDFS这样的分布式文件系统,但是附加到文件效率不高,所以这不是一个选项。
是否可以使用某种缓存来存储数据?由于数据的大小非常大(2 -3 GB文件),因此无法使用Memcache等传统缓存解决方案。
是否还有其他选项可以解决此问题。我不是在寻找任何特定的方向吗?
非常感谢任何帮助。