モチベーション 学習の必要性から、海外のサーバーメーカー(どこのメーカーかは言いません)の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 デザインパターン 責任連鎖パターン
MySQL をインストールすると初期パスワードが与えられますが、この初期パスワードは大文字と小文字の...
マルチ選択は、すべてのオプションを一覧表示し、ユーザーが Ctrl/Shift キーを使用して複数選...
Like は中国語で「好き」を意味しますが、MySQL データベースに適用される場合、Like は、...
<br />以下は開発中に遭遇した問題と、そこから得た経験です。デバッグに時間がかかりま...
目次1. 変数の概要1.1 変数のメモリへの保存1.2 変数の使用1. 変数を宣言する2. 譲渡3....
HTML で境界線を設定する 3 つの方法 境界線の幅: 1px 2px 2px; 境界線のスタイル...
汎用ロード/書き込みメソッドオプションを手動で指定するSpark SQL の DataFrame イ...
tbody 要素は、thead 要素および tfoot 要素と組み合わせて使用する必要があります...
目次序文1. 理由: 2. 解決策のアイデア: 1. ローカル保存方法: 2. 実装手順: 3. 最...
<テンプレート> <div id="ルート"> <...
まずpostcss-pxtoremをインストールします: npm install postcss-p...
環境: MacOS_Cetalina_10.15.1、Mysql8.0.18、Docker_2.0....
EXPLAIN ステートメントは、MySQL クエリ ステートメント プロセスと EXPLAIN ス...
垂直方向では、セルの配置を上、中央、下に設定できます。基本的な構文<TD VLIGN=&quo...
1. Linuxファイアウォールの基礎Linux ファイアウォール システムは主にネットワーク層で動...