SOCKET-MANAGER Frameworkは、WebSocketやTCP/UDPといったソケット通信を用いるリアルタイムアプリケーション開発を効率化するためのオープンソースフレームワークです。フレームワークの設計思想、アーキテクチャ、導入手順、具体的な実装例(サンプルコード)やデモ環境(マインクラフト連携含む)まで、現場ですぐ使えるノウハウを提供します。
SOCKET-MANAGERは、リアルタイム通信を伴うサービス(チャット、ゲーム連携、通知システムなど)での迅速な開発/運用を支援するために設計されたフレームワークです。拡張性の高いアーキテクチャと、実践的な実装パターンを揃えています。
- WebSocket、TCP/UDPを利用したリアルタイム通信の実装テンプレート
- 初期化クラス、UNITパラメータ、プロトコル/コマンドUNITなどの実装ガイド
- マルチサーバー構成やスケールを見据えたアーキテクチャ解説
- マインクラフトと連携するデモ環境、コマンド仕様、設定例
- PHP向けの技術ノウハウ(参照渡し、PHPDoc など)
フルドキュメントはこちら(ホストされた参照ページ)
- フレームワーク紹介: https://socket-manager.github.io/document/
- イベントハンドラ: https://socket-manager.github.io/document/event-handler.html
- アーキテクチャ: https://socket-manager.github.io/document/architecture.html
- マルチサーバー: https://socket-manager.github.io/document/multi-server.html
- WebSocket環境: https://socket-manager.github.io/document/websocket.html
- マインクラフト専用環境: https://socket-manager.github.io/document/minecraft-contents/
(その他のページはサイト内のメニューを参照してください)
- 新規プロジェクトを展開: composer create-project socket-manager/new-project <展開先のディレクトリ名>
- メイン処理クラスを作成: php worker craft:main MainForTest
- サンプルプロジェクト(demo-project)を参考にローカルで動作確認
補足(WebSocketサーバー開発)
- WebSocketサーバーを開発する場合は、専用プロジェクトを利用することを推奨します。WebSocket用の開発テンプレートと設定例を用意しています。
- プロジェクトを展開: composer create-project socket-manager/websocket-project <展開先のディレクトリ名>
- ドキュメント(手順・設定): https://socket-manager.github.io/document/websocket.html
詳しい手順はドキュメント内の以下のページを参照してください
- 新規開発環境: https://socket-manager.github.io/document/new-project.html
- メイン処理クラス: https://socket-manager.github.io/document/main.html
- 初期化クラスの実装: https://socket-manager.github.io/document/init-class.html
- UNITパラメータ: https://socket-manager.github.io/document/unit-parameter.html
- プロトコルUNIT / コマンドUNIT: https://socket-manager.github.io/document/protocol-unit.html / https://socket-manager.github.io/document/command-unit.html
- メイン処理クラス: https://socket-manager.github.io/document/main.html
- スケーラビリティとマルチサーバー設計: https://socket-manager.github.io/document/multi-server.html
- TCP/UDP 詳細: https://socket-manager.github.io/document/tcp-and-udp.html
- Laravel連携: https://socket-manager.github.io/document/laravel.html
- システム設定ファイル: https://socket-manager.github.io/document/system-setting.html
- library — SOCKET-MANAGER Framework のライブラリ
https://github.com/socket-manager/library/ - demo-project — マインクラフト連携のデモサーバー
https://github.com/socket-manager/demo-project/ - websocket-project — WebSocketサーバー開発環境
https://github.com/socket-manager/websocket-project/ - new-project — 新規開発テンプレート
https://github.com/socket-manager/new-project/ - contents-project — マインクラフト専用コンテンツ環境
https://github.com/socket-manager/contents-project/
バグ報告やご要望などはこちらから受け付けております。
本ドキュメントは Creative Commons Attribution 4.0 International (CC BY 4.0) の下で提供されています。
詳細: https://creativecommons.org/licenses/by/4.0/