2 ポイント 投稿者 gg5823 12 일 전 | まだコメントはありません。 | WhatsAppで共有

Springの複雑さとWordPressの重さに疲れた開発者が、C11/C23で自ら実装したブログエンジン Fly.Board です。HTTP/3(QUIC) over TLS 1.3 環境で、単一バイナリとして C10k をさばける性能を確認したため共有します。

主な特徴

  • Minimalist Stack: 独自フレームワーク(CWIST)と単一バイナリ構成
  • Pure SSR(Server-Side Rendering): クライアント側でのレンダリング遅延を最小化
  • LibTTAK: Cの速度を維持しながら、非同期処理とメモリ安全性を保証するカスタムメモリ管理ツール
  • High Performance: アイドル状態で20MB、10,000同時接続時でもRSS 369MB程度で低遅延運用が可能
  • Modern Protocol: カスタムCスタックベースのHTTP/3(QUIC)およびTLS 1.3をサポート

C10kベンチマーク結果 (/usr/bin/time -v 測定)

  • 同時接続: 10,000件 (24分46秒維持)
  • メモリ使用量: 最大RSS 約369 MB (接続あたり約37KB)
  • I/O効率: Major page faults 0 (ディスクI/Oボトルネックなし)
  • データ安定性: SIGINT受信時にNukeDBを通じて89,208件のFS outputとしてデータを安全に保存

既存スタックとの比較

  • WordPress: PHP-FPM/MySQLベースでリソース消費が重く、多段キャッシュが必須
  • Pure SSR(Server-Side Rendering): 低スペック端末でのレンダリング遅延を最小化
  • Spring Boot: JVMヒープおよびDIコンテナによる高い初期複雑性とメモリ使用量
  • Fly.Board: 別途キャッシュレイヤーなしでも、1GB未満のVPSで余裕を持ってC10k処理が可能

惜しい点と今後の課題

  • System timeがUser timeより高い現象について、Userspace処理効率の改善が必要
  • 読み取り中心のベンチマークに加え、SQLiteベースのデータ層における書き込み負荷(コメント/投稿の同時作成)も検証予定

リンク

  • GitHub: https://github.com/gg582/fly.board
    技術的完成度と実用性のバランスを考えながら作りました。低スペックVPSで個人ブログを運用したい開発者にとって、良い代替案になれば幸いです。フィードバック歓迎です!

まだコメントはありません。

まだコメントはありません。