公開後が、まるで違う CMS。
nano-cms は、ケイズ・ソフトウェアが自社開発する CMS。複数サイトを1台で・速く落ちにくく配信し、予約の「当日の完成形」まで先に見える。その設計・配信・運用を解説するドキュメントです。
理論上、これ以上速くできない
CDN ネイティブ記事は事前生成された純粋な静的ファイル。最も近い CDN エッジから、オリジンの計算も DB アクセスも介さず届きます。標準的な静的出力だけなのでどの CDN にもそのまま100%乗る(CDN-agnostic)。「ファイルをエッジから返す」より速い配信は、原理的に存在しません。
予約を100世代積んでも、競合なしで「当日」を確認
タイムマシン・プレビューお知らせ・バナー・記事を何件予約で積み上げても、その公開予定日の完成形を先に見られます。鍵はブランチを単純に git マージして未来を作らないこと ―― 予約された変更を時系列で積み上げて描く方式なので、10世代でも100世代でも競合で止まりません。多くの CMS のプレビューが「いまの下書き単体」しか見せないのに対し、nano-cms は他の予約も織り込んだ実際の見え方を見せます。
10年運用しても、土台が太らない
自己剪定システムの大きさは、これまでの操作回数(累積)ではなく、いま生きている仕事(活動)だけで決まります。古いキャッシュ・版・下書きは各サブシステムが自分で剪定する ―― そんな自己剪定の仕組みが独立に12個。だから1年運用しても10年運用しても、土台のオーバーヘッドはだいたい平らなまま。「あとで掃除する」を「最初から散らからない」に置き換えた設計です。
複数サイトを1つの管理画面で
小さなサーバー1台で、何サイトでも配信。
誤掲載を仕組みで防ぐ
承認ワークフロー・差分確認・サイト丸ごとプレビュー。
共通パーツは1か所だけ
Liquid の partial タグで、ヘッダー等を全ページへ配る。
誰が・どこで・何を、を細かく
サイト別の権限と、すべての操作ログ。
横断一括更新・アーカイブ・復元
静的なのに直すのは1か所。片付く・戻せる・太らない。
- Next.js管理画面
- PrismaDB アクセス
- MySQLデータベース
- Liquidテンプレート
- Nginx静的配信
はじめに
nano-cms とは何か、なぜ自社開発したのか。
機能・運用
複数サイト運用・権限・承認・プレビュー・一括更新・アーカイブ。日々の運用を支える機能。
静的配信・CDN・キャッシュ
速く・落ちにくく・狙われにくい配信を支える仕組み。
Liquid テンプレート
テンプレートの拡張と共通パーツ、{% partial %} の全仕様。
設計の深掘り(アーキテクチャ)
予約プレビュー・事前確認サイトの仕組みと速さ、「10年運用しても太らない」を支える設計判断。