Skip to content

ulen2000/sinetstream

 
 

Repository files navigation

permalink
README.html

English

メッセージングシステムの概念

SINETStreamは トピックベースのPublish/Subscribeモデル のメッセージングシステムである。 Brokerを実現するバックエンドのメッセージングシステムとしてKafkaまたはMQTTを利用している。

SINETStreamではPublisherをWriterと呼び、SubscriberをReaderと呼ぶ。

メッセージングシステムの概念図

Brokerの構成情報やBrokerとの通信パラメータをまとめたものをSINETStreamではサービスと呼ぶ。 WriterやReaderはサービスを指定するだけでブローカーに接続してメッセージの送受信ができる。

トピックとはブローカーにおける論理的なチャンネルであり、 Writer/Readerはトピックを指定してメッセージの送受信を行うことで 異なる種類のメッセージ配信を1つのブローカー上で行える。

ファイル構成

  • README.md
    • このファイル
  • python/
    • README.md
      • Python版SINETStreamのビルド手順
    • src/
      • Python版SINETStreamの共通部分
    • plugins/
      • broker/
        • kafka/
          • Python版SINETStreamのKafka固有部分
        • mqtt/
          • Python版SINETStreamのMQTT固有部分
      • value_type/
        • image/
          • 画像メッセージのサポート
    • sample/
      • サンプルプログラム
  • java/
    • README.md
      • Java版SINETStreamのビルド手順
    • api/
      • Java版SINETStreamの共通部分
    • plugin-kafka/
      • Java版SINETStreamのKafka固有部分
    • plugin-mqtt/
      • Java版SINETStreamのMQTT固有部分
    • plugin-type-image/
      • 画像メッセージのサポート
    • sample/
      • サンプルプログラム
  • docs/

動作環境

SINETStream API では以下の言語をサポートする。

  • Python 3.6
  • Java 8

SINETStream では以下のメッセージングシステムをサポートする。

SINETStreamの動作環境は以下の通り。

  • CentOS 7.6
  • Windows 10

準備

SINETStreamでは、Brokerを実現するバックエンドのメッセージングシステムとしてKafkaまたはMQTTを利用している。 そのため、SINETStreamとともに、これらのメッセージングシステムのどちらかをインストールする必要がある。 チュートリアルパッケージでは、dockerコンテナを利用して必要なソフトウェア一式(SINETStream, Kafka, MQTT)をインストールする方法を用意している。

  1. Kafkaブローカーの設定
  2. MQTTブローカーの設定
  3. SINETStreamのインストール
    • Python: pip3 install --user sinetstream-kafka sinetstream-mqtt
    • Java: Java版READMEを参照

dockerコンテナをつかったチュートリアルも参考のこと。

リンク

ライセンス

Apache License, Version 2.0.

Packages

No packages published

Languages

  • Java 73.5%
  • Python 24.1%
  • Shell 1.8%
  • Other 0.6%