Skip to content

Latest commit

 

History

History
123 lines (96 loc) · 4.27 KB

README.en.md

File metadata and controls

123 lines (96 loc) · 4.27 KB

日本語

Concept of messaging system

SINETStream is a messaging system that adopts a topic-based publish/subscribe model. It provides an abstraction layer of Broker, which in turn employs Kafka or MQTT as its backend.

In SINETStream, the publisher is called Writer, and the subscriber is called Reader.

Conceptual diagram of the messaging system

Broker's configuration and communication parameters are abstracted as "service" in SINETStream. Writers and Readers can communicate with any Broker just by specifying a "service".

A logical channel in Broker is called a topic. Writers and Readers send/receive a message specifying a topic, allowing different types of messages to be transferred through a Broker.

Directory structure

  • README.en.md
  • python/
    • README.en.md
      • Build procedure of the Python version of SINETStream
    • src/
      • Common files of the Python version of SINETStream
    • plugins/
      • broker/
        • kafka/
          • Kafka-specific files of the Python version of SINETStream
        • mqtt/
          • MQTT-specific files of the Python version of SINETStream
      • value_type/
        • image/
          • Support for messages with image payload
    • sample/
      • Sample programs
  • java/
    • README.en.md
      • Build procedure of the Java version of SINETStream
    • api/
      • Common files of the Java version of SINETStream
    • plugin-kafka/
      • Kafka-specific files of the Java version of SINETStream
    • plugin-mqtt/
      • MQTT-specific files of the Java version of SINETStream
    • plugin-type-image/
      • Support for messages with image payload
    • sample/
      • Sample programs
  • docs/

Operating environment

The SINETStream API supports the following languages.

  • Python 3.6
  • Java 8

The SINETStream API supports the following messaging systems.

The operating environment of SINETStream is as follows:

  • CentOS 7.6
  • Windows 10

Preparation

SINETStream uses Kafka or MQTT as a backend messaging system of Broker. Therefore, you need to install one of these messaging systems along with SINETStream. The tutorial package utilizes a Docker container to install the required software components, i.e., SINETStream, Kafka, and MQTT.

  1. Kafka broker settings
  2. MQTT broker settings
  3. Installing SINETStream
    • Python: pip3 install --user sinetstream-kafka sinetstream-mqtt
    • Java: Please refer to the Java version of README.

Please Refer to the tutorial using docker container.

Links

License

Apache License, Version 2.0.