Sangoのメッセージ数について聞いてみた
メッセージ数が足りない!
金魚水槽のページやトップページからライトを点灯するのにSangoというサービスを使用しているのですが、
1ヶ月で使用できるメッセージ数がどうもオーバーしそう
でもウチのPV数でそんなに沢山の人が点灯ボタン押しまくってるワケでもないし・・・何でやという事でサポートの方に聞いてみました
サポートに聞いてみる
聞いてみた結果がこちら
メッセージ数ですが、全ての MQTT メッセージをカウントしています。その中には KeepAlive 用の ping/pong も含まれています。そのため、接続しているだけでメッセージ数が増えてしまいます。
回避方法としては Ping/Pong の間隔を Connect 時に keepAliveTimer という値で指定出来ますのでそちらをながめにとっていただければと思います。
・・・との事
待ち受け側のKeepAlive機能でメッセージ数が消費されてるらしい なるほど
現在RubyのMQTTクライアントをRaspberry Pi2で使用しているのでAPIを調べてみる
Default attribute values
{
:host => nil,
:port => nil,
:version => '3.1.0',
:keep_alive => 15, #←デフォルト15秒
:clean_session => true,
:client_id => nil,
:ack_timeout => 5,
:username => nil,
:password => nil,
:will_topic => nil,
:will_payload => nil,
:will_qos => 0,
:will_retain => false,
:ssl => false
}
デフォルト15秒!
接続後、1分放置したら4回ping/pongが発生しメッセージ数8消費って事かな? そら足らんわw
ひとまずKeepAliveを90秒にして様子見してみる
#!/usr/bin/env ruby
# -*- coding: utf-8 -*-
require 'rubygems'
require 'mqtt'
MQTTHOST = "接続先"
USERNAME = "****@github"
PASSWORD = "パスワード"
# MQTTに接続するためのクライアントを作成します
client = MQTT::Client.new(
MQTTHOST,
:username => USERNAME,
:password => PASSWORD,
:keep_alive => 90 #←90秒に設定
)
# 接続します
client.connect do |c|
# Subscribeします
TOPIC = "****@github/led"
c.get(TOPIC) do |topic, message|
`sudo 点灯コマンド`
end
end
これでかなりメッセージ数の消費は穏やかになりました もうちょっと伸ばしても大丈夫だろうか?
無料枠で納めたい等でどうしても足りない場合は待ち受け時間を決めてcronで接続&切断って所でしょうか
ウチの場合だと自動点灯の時間帯10:00~19:00は点灯ボタンは押してもスルーするのでその間切断しておけば節約できそう
でも自動点灯の時間帯を変更した時に直さなきゃいけないところが増えるからちょっとなぁ・・・って所w
ひとまず5月はどこまで増えるのか 繋ぎっぱの状態で様子見とします
関連記事
-
-
Raspberry Pi2に2台のカメラを繋いで同時配信する
水槽増えたんだけどまたパイ買うの? 先日新しく45cm水槽を買いまして買ったなら …
-
-
ベランダ水槽の配信ページを追加しました
配信ページ追加 先日ベランダに引っ越した穂竜たちの配信ページを追加しました。 ベ …
-
-
Raspberry Pi ZEROでGW-450D2(無線LANドングル)を使う
ZERO買っちゃった Pimoroniで入荷しているのを見たのでRaspberr …
-
-
Raspberry Pi2で外部から水槽のLEDを点灯する その2
前回でひとまずさくらVPS上のPHPから自宅水槽のLED照明をONにできるように …
-
-
Raspberry Pi2で室温、水温を計測してグラフ表示する その2
前回でRaspberry PiからさくらVPSへ計測したデータを飛ばして登録でき …
-
-
Raspberry Pi2で水槽のLEDを自動点灯/消灯する
先日Raspberry Pi2を購入し、自宅からのストリーミング配信する為あれこ …
-
-
Raspberry Pi2で室温、水温を計測してグラフ表示する
Raspberry Pi2に水温計と温度計を取り付け、10分ごとに室温と水温を計 …
-
-
RaspberryPi2で動画配信しながら写真も撮りたい
金魚デカくなった? 金魚にエサやってると4月の初頭から飼い始めた琉金が1周り大き …
-
-
エサやりボタンを撤去しました
寒い! 寒くなってきましね。 水温を10度を切り始めたので、プラ舟ページに配置し …
-
-
RaspberryPi2を使ったリモートのエサやりボタン復活しました
春がきた 春になり水温が上がってきたのでプラ舟ページのエサやりボタンを復活させま …
- PREV
- RaspberryPi2で動画配信しながら写真も撮りたい
- NEXT
- プラ舟はじめました
