(2)メッセージプロトコルについて
昨日は通信の仕方について、学ばなければならないと認識。
キーワードとしては、IOTなどで言われている、分散ネットワークのことらしいが・・・
https://www.hulft.com/special-column/iot-architecture_01/iot-architecture_05
https://cloud-textbook.com/60/
もうだるだる。。。
しかしながら、我が社もIOT部門などもあり、
実はソフトウェア開発をやっている。
なので、これらの勉強は、いずれ身になる可能性があり
情報は仕入れておこうと思う。
--------------------------------
分類
キュー・メッセージングについて、下記の分類があります。
PTP (Peer To Peer) モデル または キューモデルPTP モデルは、1本のキューがあり、送信側と受信側が 1対1 の形になっているものです。
Pub/Sub (パブ・サブ) モデルPub/Sub モデルは、Publish/Subscribe のことで、 送信側と受信側のレイヤがわかれており、1対1 もできますし、1対多 にすることもできます。 「出版-購読型モデル」と言うこともあるようです。
さらに別の切り口として、PULL・PUSH があります。
PULL受信側が、新しいメッセージを取りに来るタイプ。 例えば1秒に1回とか、1分に1回などの頻度でメッセージを取りに来るので、その分のタイムラグが発生します。
PUSH新しいメッセージがあると (比較的) すぐに受信側に送りつけるタイプです。
例えば Amazon SQS は、PTP モデルであり、PULL のみです。 Google Pub/Sub は、Pub/Sub モデルであり、PULL と PUSH 両方が可能です。
---------------------------------
ちなみにzeroMQのマニュアルに記載されていたのは
-----------------------------------
第 1 章「基礎」で最初の 3 つは既に見てきました。そして排他的ペアのパターンは後の章で
やります。zmq_socket() の man ページはパターンについて詳しく説明していますのでよく
理解できるまで何度か読み返すだけの価値はあります。以下は接続と bind を行う際に有効な
ソケットペアの組み合わせです。(どちら側でも bind 出来ます)
• PUB と SUB
• REQ と REP
• REQ と ROUTER
• DEALER と REP
• DEALER と ROUTER
• DEALER と DEALER
• ROUTER と ROUTER
• PUSH と PULL
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
今回のシステム開発は、通信ができれば何でもよさそうなので、
この辺はパスして、次のコーディングに進むことにする。
(システム完成までの貴重な時間を、1日ロスしてしまう。)
今後のスケジュールをザクっと書く
・PYTHON-MT4 メッセージ通信仕様の確認
・LOCALHOSTでのHEBHOOK受審(python側)
・MT4へのメッセージ送信(通貨ペア、HI/LOシグナル) (python側)
・MT4でのメッセージ受信
・MT4、該当通貨ペアでの分足データのCSV出力
ここまでを今月中に完成することを目指したい