終点は死に、ほとんどの galgame リソースサイトは閉鎖して風を避けています。十分に強力なリソースサイトが必要です。これはいくつかの考えであり、リソースサイトを運営したい人にとって役立つことを願っています。
政治に幻想を抱かない#
「政治というものは、自分から関わらなければ、向こうから関わってくる」という言葉があります。
終点フォーラムの管理者が逮捕されたことを悼む一方で、さらなる深い考察はありましたか?いわゆる愚かな現世報復はこのようなものです。他人の肉となることを選んだ以上、切り刻まれて食べられるときに運命の不公平を嘆いてはいけません。あなたが流した涙は、かつてあなたの頭に入った水です。
終点の管理者は政治に対する明確な認識を持たず、中国が国内でフォーラムを開設する行為を無視するだろうと盲目的に信じ、運が良いと思っていました。さらには、彼らは悪事を助け、フォーラム内で言論検閲を始め、さらには実名制を支持しました。その結果、彼らが支持した実名制と彼らが支持した国産ブランドが彼らを刑務所に送ったのです。
人の公然たる行動は、その人の政治的立場と一致すべきです。そうでなければ、背後から攻撃されることになります。Galgame リソースサイトを運営するのであれば、この行為が中国では違法であり、いつでも制裁を受ける可能性があることを明確に認識すべきです。したがって、中国の検閲と規制に対抗することは避けられません。
中国は遥かに先を行く北朝鮮に追いつこうと努力しています。これは明らかな事実です。私たちは、いつの日か、検閲と独裁のために中国国内で Galgame をプレイできなくなるかどうかすら確信が持てません。
フロントエンドとバックエンドの選択#
SSR アーキテクチャは実際には良い選択です。Cloudflare を利用することで、静的ページは効果的にキャッシュされ、CS アーキテクチャと同等の同時接続耐性を得ることができます。しかし、SSR の主な利点は、クローラーの作成難易度を上げることです。
バックエンドストレージは明らかに Onedrive のような便利に無料で利用できるストレージを使用すべきです。さもなければ、1 日 1T のトラフィックでは、VPS/VDS の帯域幅が不足し、トラフィックも不足し、オブジェクトストレージのコストが驚異的になります。容量はそれほど大きな問題ではありません。しかし、Onedrive でも複数のアカウントで負荷分散を行う必要があります。さもなければ、API 呼び出し制限を超えてしまいます。Onedrive の一つの利点は、国内では少なくとも接続可能であることですが、速度はあまり高くないかもしれません。
Onedrive のトークンはキャッシュされるべきです。さもなければ、同時に非同期で Microsoft API を呼び出しすぎてメモリが溢れてしまいます。キャッシュ戦略は、ユーザーがトークンが期限切れになる前にダウンロードを完了できるようにすることです。
キャッシュは Redis などのデータベースを通じて実現でき、定期的なタスクは比較的容易です。
大量リソースの整理#
大量のリソースを整理するのは非常に手間がかかります。BT サイトや E-hentai を参考に、規範的なリソース命名方式を使用することで、リソースを効果的に整理し、検索能力を向上させることができます。
提案されるリソース命名方式は次のとおりです。
(シリーズ名)[会社名 1][会社名 2][会社名 n] 元の日本名(中文名 1)(中文名 2)(中文名 4)[プラットフォーム名]{翻訳グループなどの情報}
ここで、シリーズ名、中文名、翻訳グループ情報は省略可能です。
この命名方式は正規表現で認識できるため、データベースを使用せずにタグを保存しない場合でも、必要に応じて名前に基づいて直接分析できます。参考コードは以下の通りです。
import re
# サンプル文字列
example = "(シリーズ名)[会社名 1][会社名 2][会社名 n] 元の日本名(中文名 1)(中文名 2)(中文名 4)[プラットフォーム名]{翻訳グループなどの情報}"
# 正規表現
pattern = r'\((.*?)\)?(\[(.*?)\])+(.*?)\((.*?)\)(\[(.*?)\])?\{(.*?)\}?'
# 文字列を解析
match = re.match(pattern, example)
if match:
# データを抽出
series = match.group(1)
publishers = match.group(3).split('][')
jp_name = match.group(4).strip()
cn_names = match.group(5).split(')(')
platform = match.group(7)
comment = match.group(8)
# オブジェクトを作成
result = {
"series": series if series else None,
"publisher": publishers,
"jpName": jp_name,
"cnName": cn_names,
"platform": platform if platform else None,
"comment": comment if comment else None
}
else:
result = None
print(result)
リソースが十分に大きくなると、検索を便利にし、さまざまなアルゴリズムを実行するために、vndb をクローリングして galgame 情報をローカルに保存することができます。この方法により、E-hentai のような発達したタグ検索能力や、グラフ構造に基づく推薦アルゴリズムと人気アルゴリズムを実現できます。
リソースストレージ#
明らかに、複数の Onedrive に完全に同じ内容を保存する必要があります。それに加えて、信頼できるクラウドストレージ(例えば MEGA)やローカルの異地に保存する必要があります。
データをローカルに置くことは安全ではありません。これは、さまざまな予期しない事故が発生し、すべてのデータを失う可能性があるためです。そのため、遠く離れた複数の人が同じデータを保存し、異地での災害復旧を実現する必要があります。
ローカルストレージのメディアは問題です。ハードディスクの価格は非常に高く、すべての Galgame に必要なハードディスクは約 12TB であり、このような大容量のハードディスクは非常に高価で、約 1 千元以上かかります。条件があれば、安価なテープをストレージメディアとして使用することもできます。しかし、中古のハードディスクは使用できません。中古のハードディスクは安価ですが、いつデータが失われるかわからないからです。
クラウドストレージに保存するコストは無視できません。Onedrive のみに保存している場合、サブスクリプションが無効になったり、アカウントが停止されたりすると、すべてのリソースを失う可能性があります。
コスト#
Onedrive プランを採用すること自体はあまりコストがかからないはずですが、利用者が増えると、さまざまなメンテナンスコストやサーバーコストが発生するのは避けられません。しかし、利用者が増えれば、それだけコスト回収の機会も増えます。
適切な Galgame リソースサイトは、ダウンロードのハードルを設定すべきではなく、ましてやダウンロードに料金を取るべきではありません。合理的なコスト回収の方法は、寄付を受け入れたり、広告を掲載したりすることです。
寄付を受け入れることには一定のリスクがあります。国内の支払い方法を使用する必要があるかもしれないからです。しかし、広告は、利用者が多ければ多いほど、広告を出したい人が現れるでしょう。
ただし、広告を配信する際には、ユーザー体験に影響を与えないように注意する必要があります。
ここまでで、今後追加される可能性があります。