私は、リアルタイムのファイル共有を中核とするWebアプリケーションをいじくり回してきました。ユーザーのグループがあり、人々は自分のファイルをグループと共有できます。ファイルは、Webインターフェイスと他のユーザーのコンピューターの両方からすぐにアクセスできる必要があります。
サーバー上でDropboxのヘッドレスLinuxクライアントを使用して動作する基本バージョンがありました。ユーザーはサーバーのアカウントとフォルダーを共有し、サーバー側で厄介なブードゥーが発生してすべてを適切に整理しました。〜/ Dropboxフォルダーの更新を監視し、必要なことは何でもしました。Dropboxの構造により、ファイルのコピーはユーザーごとに1回保存する必要がありました。これは、大量のディスク容量が必要になることを意味します。私の解決策はうまくいきましたが、かろうじて。
DropboxのAPIに変換してみましたが、更新されたファイルをポーリングするための提案は5分に1回であることがわかりました。あなたが2分に1回よりもはるかに速い速度を維持するならば、彼らはあなたを断ち切るでしょう。それでも、APIのポーリングは実際にはオプションではありません。アップロードした瞬間にファイルが必要です。10秒後は本当に遅すぎます。GoogleドライブのAPIでも同様の問題が発生しました。
ユーザーがインストールできる独自のデスクトップアプリケーションを作成することを簡単に検討しましたが、すぐにそのアイデアを捨てました。私はデスクトップソフトウェア開発者ではないので、プログラムには間違いなく問題があります。さらに重要なことに、このアプリケーションは技術に精通したオタク向けではありません。それは平均的な人々のためのものです。デスクトップアプリケーションは、可能な限りシンプルである必要があります。コンピューター上にフォルダーがあり、フォルダーに物を置くと、魔法が起こり、ファイルがインターネット上にあります。Dropboxはこれを素晴らしく行いましたが、彼らの開発者APIは私のニーズにはまったく使用できません。
誰かが私が調べることができる他のアプリケーションを提案できますか?予算があまりないので、無料の方がいいです。サーバーにファイルを保存する必要はありません。ファイルの合計サイズは、せいぜい数ギガのままになる可能性があります。サーバー側のバイナリが必要な場合、私が使用するサーバーはUbuntu12.04を実行します。本当に重要なことは、デスクトップアプリケーションが技術者以外でも簡単に使用できることと、ファイルが更新された瞬間にアプリケーションに通知する方法があることだけです。