Alchemy Factory
発売日:2025年12月12日
マルチプレイ最大人数:不明
リンク:Steam
説明:錬金術師の自動化経営シム。
ベルトコンベアを並べて錬金グッズを大量生産、売りさばいて利益を上げよう...みたいなゲームだと思います。
"webアプリ"を作りたいと見切り発車で製作に取り掛かったものの、
環境構築を終えて満足したのがこのサイトです。
せっかく作ったので管理者の個人的なメモ帳として利用します。
もしかしたら他の誰かにとっても有益な情報が載るかもしれません。
友達と遊ぶのにちょうどいいゲームを探しています。
発売日:2025年12月12日
マルチプレイ最大人数:不明
リンク:Steam
説明:錬金術師の自動化経営シム。
ベルトコンベアを並べて錬金グッズを大量生産、売りさばいて利益を上げよう...みたいなゲームだと思います。
備忘録です。
Webサーバーにおけるキャッシュ設定のお話です。
HTTPで配信するコンテンツは、
Cache-Controlヘッダーを適切に設定してあげることでブラウザがキャッシュしてくれます。
サイトで配布する静的コンテンツについて、その設定方法を調べたので記事に残しておきます。
まずこのドキュメントを読みます。
さすがMDN、なんて読みやすくて面白いドキュメントを作ってくれるのでしょう。
今回は静的コンテンツについての設定です。
ガンガンにキャッシュを効かせたいと思ったので次のようなヘッダーを設定することにしました。
Cache-Control: public, max-age=31536000, immutable
これで31536000秒=1年間キャッシュを保持してくれることでしょう。
ですが、逆にキャッシュが効きすぎてコンテンツが更新されないというトラブルが発生し得ります。
同ドキュメントでは対策としてcache-bustingなるテクニックを紹介しています。
ファイル名にバージョン文字列を含める...パラメータに固有の文字列を追加する...など、
要はURLそのものが変わればキャッシュは効きませんよねということです。
<script src="https://example.com/style.css?v=1234567890"></script>
上の例ではパラメータを付与することでキャッシュを避けています。パラメータ名は仮に「v」としていますがなんでもいいです。
このサイトではデプロイスクリプトを走らせたときに、その日時を固有バージョンとして環境変数にセットしています。
後はテンプレート内で固有バージョンを静的ファイルのパラメータにくっつけてあげればOKです。
あと余談ですが、これってどの程度効果がある話なのでしょうか。
サイトの機能が増えてくると静的コンテンツのキャッシュ以外の部分がネックになりそうですし、
実際にトラフィックを測ったわけでもないので負荷軽減に役立っているのかも不明です。
チューニングをしている間は楽しいですし、DevToolsでキャッシュされている様子を眺めるのは気持ちがいいんですけどね。
ハッシュ関数の発表年次まとめ、MD系とSHA系についてWikipediaからの引用です。
絶対に憶えられないことです。
ffmpeg -hwaccel cuda -hwaccel_output_format cuda -i input.mp4 -c:v h264_nvenc -vb 10000k output.mp4
ffmpeg -ss hh:mm:ss -t 300 -i input.mp4 -c copy -map 0:v -map 0:a output.mp4
ffmpeg -ss hh:mm:ss -to hh:mm:ss -i input.mp4 -c copy -map 0:v -map 0:a output.mp4
ffmpeg -hwaccel cuda -hwaccel_output_format cuda -i input.mp4 -map 0:1? -vn -acodec copy ./audio1.mp3
ffmpeg -hwaccel cuda -i input.mp4 -c:v h264_nvenc -r 30 output.mp4
ffmpeg -hwaccel cuda -hwaccel_output_format cuda -i input.mp4 -c:v h264_nvenc -vf scale=-1:1080 output.mp4
ffmpeg -hwaccel cuda -hwaccel_output_format cuda -i input.mkv -map 0:0? -vcodec copy output.mp4 -map 0:1? -vn -acodec copy ./audio1.m4a -map 0:2? -vn -acodec copy ./audio2.m4a -map 0:3? -vn -acodec copy ./audio3.m4a
ffmpeg -hwaccel cuda -hwaccel_output_format cuda -i input.mp4 -i input.m4a -c:v copy -c:a aac -map 0:v:0 -map 1:a:0 output.mp4
ffmpeg -hwaccel cuda -hwaccel_output_format cuda -i input.mp4 -c:a copy -c:v h264_nvenc output.mp4
ffmpeg -hwaccel cuda -hwaccel_output_format cuda -f concat -i list.txt -c copy cat_output.mp4
↓list.txt
file /home/hoge/0.mp4
file /home/hoge/1.mp4
file /home/hoge/2.mp4
ffmpeg -hwaccel cuda -i input.mp4 -c:v h264_nvenc -c:a copy -vb 20000k -vf scale=-1:1080 output.mp4
Ctrl+Shift+Pでコマンドパレットを開き、「user settings json」などで検索して設定ファイルを開きます。
{
"workbench.startupEditor": "none",
"extensions.ignoreRecommendations": true,
"workbench.secondarySideBar.defaultVisibility": "hidden",
"workbench.statusBar.visible": true,
"files.autoSave": "onFocusChange",
"workbench.editor.empty.hint": "hidden",
"editor.acceptSuggestionOnEnter": "off",
"git.confirmSync": false,
"explorer.confirmDragAndDrop": false,
"explorer.confirmPasteNative": false,
"update.showReleaseNotes": false
}
同じくコマンドパレットで「keyboard shortcuts json」などで検索してショートカット割り当ての設定ファイルを開きます。
[
{
"key": "ctrl+shift+n",
"command": "workbench.action.quickOpen"
},
{
"key": "ctrl+shift+n",
"command": "-workbench.action.newWindow"
}
]
これはJetBrainsのIDEAと同じCtrl+Shift+Nでファイルを検索するための設定です。