パブリッシュ【publish】
パブリッシュとは?
成果物の生成
コンテンツ制作やシステム開発において、編集中のデータを最終的な成果物の形式へ変換・出力する操作をパブリッシュという。例えば、Web制作ソフトで作成したデザインデータをブラウザで表示可能なHTMLやCSSのファイル群として書き出したり、動画編集ソフトで編集したプロジェクトを一本の動画ファイルとして出力したりする処理がこれに該当する。統合開発環境(IDE)やビルドツールでも、実行ファイルの生成や配置先への転送などをパブリッシュと呼ぶことがある。
成果物の公開
作成済みのファイルやデータをネットワークを通じて第三者が利用できる状態に置くことを指してパブリッシュということもある。WebサーバにファイルをアップロードしてWebサイトを公開する行為や、アプリをストアに登録して配信する行為がこれに含まれる。コンテンツ管理システム(CMS)では、下書き状態のコンテンツを一般公開へ切り替える操作を指すことも多い、「パブリッシュ」と書かれたボタンを押してこの操作を行うシステムもある。
メッセージ交換におけるパブリッシュ
システム間のメッセージ交換では、「パブリッシュ/サブスクライブモデル」(Publish/Subscribe model)と呼ばれる通信方式がある。情報を送信する側を「パブリッシャー」、受信する側を「サブスクライバー」と呼び、両者は「ブローカー」と呼ばれる中継システムを介してデータをやり取りする。
パブリッシャーが特定のトピックに対してデータを送信すると、そのトピックをあらかじめ購読していたサブスクライバー全員にメッセージが自動的に配信される。送受信の双方が互いの存在を意識せずに通信できるため、IoTシステムやリアルタイム通知サービス、イベント駆動型アーキテクチャなどの基盤技術として用いられる。MQTTなどのプロトコルやApache Kafkaなどのソフトウェアがよく知られている。
