モチベーション 学習の必要性から、海外のサーバーメーカー(どこのメーカーかは言いません)のVPSサービスを購入しました。ただし、ラダーとして使用しても、1 か月あたり 1T のトラフィックが使い果たされることはありません。ようやく栄養が十分摂れた気がして、観る映画を探したいです。 ねえ、VPS を使用して独自のオフライン ダウンロード サーバーを構築できますか?この方法では、余剰の帯域幅リソースを活用してダウンロード速度を上げることができます。これは素晴らしいことではないでしょうか。この疑問を念頭に置き、私は孤独な夜にそれを作り始めました。 建設プロセス マシン構成の配布: CentOS 6.9 このマシンの構成はそれほど高くはありませんが、ダウンロードサーバーとして使用するには十分すぎるほどです。 ツールの選択 いくつか調べた結果、デプロイメント ツールとして transmission + vsftpd + nginx + aria2c を選択しました。
導入の実践 1. トランスミッションをインストールし、構成を変更してサービスを開始する トランスミッションとトランスミッションデーモンをインストールする
設定を変更して、トランスミッションサービスを開始します。/var/lib/transmission/.config/transmission パスの下にある settings.json ファイルは、トランスミッションの設定ファイルです。この中には多くの設定があります。リモートソフトウェアを使用してトランスミッションを制御できるようにするには、次の設定を変更する必要があります。
送信サービスを開始する
したがって、http://host_ip:9091 から転送サービスにアクセスできます。テスト後、速度は依然として良好で、ピーク速度は 30MB/s です。 さらに、ページにアクセスせずに送信を制御するために、Transmission-Remote-GUIをインストールすることもできます。Linux(Mint)のアプリストアからダウンロードできます。操作方法はuTorrentのUIインターフェースに似ています。 2. vsftpdはFTPサーバーを構築する FTP サーバーの構築は、ファイルをダウンロードするために使用されません。FTP によるファイルのダウンロード速度は非常に遅いです。したがって、FTP サーバーの役割はファイルの管理であり、一般的に言えば、削除操作です。 vsftpdをインストールする
仮想ユーザーではなくLinuxユーザーでログインします(データベースのインストールが面倒なので) ユーザーの追加
ftpuserのホームディレクトリを送信のダウンロードディレクトリに変更します
vsftpd設定ファイル(/etc/vsftpd/vsftpd.conf)を変更します。
chroot_list_enable=NO の構成は、ユーザーがホーム ディレクトリから切り替えることができないことを示します。 vsftpdを起動する
このように、ftp を使用して、転送によってダウンロードされたファイルを管理できます。 3. nginxで静的ファイルサーバーを構築する ダウンロードしたリソースを表示するために、静的リソース サーバーとして nginx を使用します。インターネットには nginx のインストールに関するチュートリアルが多数あります。フォローアップとして記入してください。 主に構成について話す nginx 設定ファイル (/etc/nginx/conf.d/default.conf) を変更します。 自動インデックスオン; autoindex_exact_size をオン; autoindex_localtime をオン; サーバー{ 聞く 8090; 聞く [::]:8090; server_name ローカルホスト; 文字セット utf-8; 位置 / { ルート /var/lib/transmission/Downloads; インデックス index.html index.htm; } nginx サービスを開始すると、ポート 8090 経由でファイル リストを取得できます。 4. aria2c ファイルをダウンロード aria2c は、サーバーからファイルをダウンロードし、自分のマシンにインストールするために使用されます。 主にaria2cマルチスレッドによるダウンロードの高速化について説明します aria2cにはマルチスレッドダウンロードに関連するパラメータがいくつかあります。
したがって、大きなファイルの場合、 x および s パラメータを適切に増やすと、ダウンロード速度が向上します。 参考リンク: CentOS 6 に Transmission BitTorrent クライアントをインストールする方法 以下もご興味があるかもしれません:
|
<<: MySQL 百万レベルのデータページングクエリ最適化ソリューション
>>: JavaScript デザインパターン 責任連鎖パターン
目次概要node.js でマルチコア CPU を最大限に活用する方法Node で子プロセスを作成する...
yum で vsftpd をインストールします [root@localhost など]# yum -...
目次テーブルの目的例えばテーブル分割戦略すでにオンラインになっている実行中のテーブルはどうすればよい...
この記事では、一般的な MySQL ストレージ エンジンの機能と使用方法を例を使って説明します。ご参...
クリックハウスの紹介ClickHouse は、SQL クエリを使用して分析データ レポートをリアルタ...
標準化されたデザインソリューション - マークアップ言語とスタイルマニュアルWeb 標準ソリューショ...
MySQL には、msi インストールと zip 解凍の 2 つのインストール方法があります。 zi...
1. 既存のモジュールを表示する nginx の sbin ディレクトリに nginx の sbin...
この記事では、カレンダー効果を実現するためのBootstrap+Jqueryの具体的なコードを参考ま...
目次1. 反射とは何ですか? 2. JavaScriptで反映する2.1 Reflect.get(タ...
<br />Web デザインと制作テスト パート I 多肢選択問題 1. 単一選択問題 ...
実験環境:物理マシン Windows 10 x64物理NIC情報IPv4 アドレス: 192.168...
複雑なテーブル構造では、一部のセルが垂直方向に複数のセルにまたがるため、列間属性 COLSPAN を...
デフォルトでは、MyISAM テーブルはディスク上に .frm (テーブル構造ファイル)、.MYD ...
目次animate() アニメーションメソッドアニメーションキューイングdelay() メソッドアニ...