Phluxor

Design principles / 設計原則

Phluxorは以下の設計原則に基づいて開発されています。

Minimalistic, Not a framework / ミニマリズム、フレームワークではない

Phluxorは最小限の機能を提供し、
アクターモデルの基本的な機能を提供します。

特定のフレームワークには依存せず、
Phluxor自体もフレームワークではありません。

アクターモデルの基本的な機能を提供し、
Webアプリケーションフレームワークとしての機能や
DIコンテナーなどは提供しません。
小さくて使いやすいものを目指します。

Standard / 標準化

解決済みのテクノロジーを利用し、
広く一般的な概念を採用してアクターモデルを構築します。

Serialize / DeserializeにはProtocol Buffersを採用し、
クラスタリングにはgRPCを利用します。

クラスター管理にはConsulやEtcdなどの既存のツールを利用し、
アクターの監視にはOpenTelemetryを利用します。

Message Passing / メッセージパッシング

オブジェクト間の通信はメッセージパッシングを採用し、
メッセージは不変であることを保証します。

メッセージはシリアライズ可能であることを求めます。
オブジェクト間の相互依存を排除し、
PHP特有のシリアライズ機構を排除します。