「WebSocket」とは何かを簡単に説明してみましょう

Pocket

 

そもそも

「WebSocket」ってなに?

という話なのですが、難しい事を書こうとすれば長々といくらでも書けますが、それを書いても初心者の方はわからないので、ここではもっとわかりやすく書きたいと思います。

 

いつも通り簡単に書くと

「自分と相手が同時に通信を行う仕組みの1つ」です。

同時に通信を行うので、リアルタイムに通信が行われます。

 

「REST API」だと、こちらから「この情報が欲しい」という指示と出すと、相手が「この情報ですね」と返してくれます。

 

その為、こちらからの指示がない場合は、当然、何も情報は得る事ができず、情報を得る為には必ず「この情報が欲しい」という指示が入るので、その分だけ速度が遅くなります。

 

しかし、「WebSocket」は自分と相手が同時に通信を行うので、

最初に「この情報が欲しい」という指示を出すと、その後は相手側が欲しい情報を常に送り続けてくれます。

 

指示は最初だけなので「REST API」であった通信制限は、「WebSocket」にはなく、最速で情報を届けてくれます。

 

ここでの【自分】は「自動売買ツール(bot)」で【相手】は「仮想通貨取引所」ですね。

 

また同時に通信を行う仕組みを「双方向通信」と言います。

 


 

そして、これの利点は「WebSocket」「REST API」が同時に使える点です。

なので、「レート」は常に向こうから送ってもらいつつ、「購入と売却」はこちらの指示で行うという事ができるので、速度も管理も楽になります。

メリットはたくさんあるのですが、当然、デメリットもあります。

 

【接続するのに「REST API」よりもプログラミングスキルが必要】

「Public API」がURLを繋げるだけで情報が取得できるのに対して、「WebSocket」の「Public API」はパラメータの設定があったりと少しだけ大変です。
また常に通信している状態なので、データを軽くする為、相手はできるだけ簡単な情報にして送信してきます。その情報を整形するには、「REST API」よりも一工夫も二工夫も必要になってきます。

 

上記の通り、少しだけプログラムのハードルは上がってしまうのですが、「WebSocket」を接続できるメリットが上回るので、ぜひ覚えた方がいいです。

 

次回は実際にソースコードをコピーできるBitflyerで試してみましょう!

 

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です