Accord Cloud Service を通知サービスとして使用することで、目的を達成できます。Accord は、リアルタイム アプリケーションを作成するための JSON に似た言語である ActiveML を使用します。
次の Python コード例では、クライアントによって定義された「興味深い」イベントが発生したときに、クライアント ブラウザーに通知を送信します。
#!/usr/local/bin/python
import sys
import socket
if __name__ == '__main__':
#
# Connect with Accord Cloud Service using telnet port
#
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect(("ac.accord.com", 23))
data = s.recv(1024)
#
# Login with user and password
#
s.send("your-email-address-goes-here\n")
data = s.recv(1024)
s.send("your-password-goes-here\n")
data = s.recv(1024)
#
# Ensure Msg variable exists.
#
s.send("what is type of element Msg;\n")
data = s.recv(1024)
if data.startswith('error'):
s.send("create string Msg;\n")
data = s.recv(1024)
while (1):
print "Enter message to send to a browser: "
msg = sys.stdin.readline()
msg = msg[:-1]
print("set string Msg = \"%s\";\n" % msg)
s.send("set string Msg = \"%s\";\n" % (msg))
data = s.recv(1024)
s.close()
PHP、Perl、Java、C/C++ などのコードは、上記と非常によく似ています。必要に応じて、ブラウザーから JavaScript を使用して通知を送信することもできます。クラウド サービスに telnet で接続し、ActiveML CLI を使用して同じことを行うこともできます。
上記の例では、「set string Msg」がクラウド サービスに送信されるたびに、そのアイテムに関心のあるすべてのクライアント ブラウザに Msg の値が変更されたことを通知します。その後、各ブラウザはページの更新に進みます。以下の例では、クライアント ブラウザは上記の Python プログラムから開始された通知/更新を受信し、テキストが入力されたことを示すアラートを表示します。
http://ac.accord.com/demo/notify.html
それをプレイするには、「ログイン」ボタンをクリックして無料の一時アカウントを作成し、指示に従ってください。
予想される同時クライアント数は、10、100、1000 以上ですか? 開示:私はAccord Software、Inc.で働いています。