Distributed programming: Difference between revisions
m
→{{header|Raku}}: Fix code: Perl 6 --> Raku
Thundergnat (talk | contribs) (Rename Perl 6 -> Raku, alphabetize, minor clean-up) |
SqrtNegInf (talk | contribs) m (→{{header|Raku}}: Fix code: Perl 6 --> Raku) |
||
Line 1,588:
Server listens for JSON encoded messages. It processes requests for set|get|dump. 'set' stores a message, 'get' returns message, 'dump' returns all stored messages. Optional parameters for ip address and port.
Server.
<pre>./server.
Usage:
server.p6 [--server=<Any>] [--port=<Any>]</pre>
<lang perl6>#!/usr/bin/env
use JSON::Fast ;
sub MAIN( :$server='0.0.0.0' , :$port=3333 ) {
Line 1,628:
}
}</lang>
client.
<pre>Usage:
client.
client.
client.
<lang perl6>#!/usr/bin/env
use JSON::Fast ;
multi MAIN('set', $topic, $message='', :$server='localhost', :$port='3333', :$json='') {
Line 1,665:
<pre>echo '{"function":"set","topic":"push","message":["perl5","perl6","rakudo"]}' | nc localhost 3333
./client.
{"status": "ok"}
./client.
{"status": "ok","topic": "version","message": "perl6"}
./client.
{"status": "ok"}
./client.
{"push": ["perl5","perl6","rakudo"],"version": "perl6","mylist": ["one","two","three"]}
./client.
{"status": "ok"}
Line 1,682:
${:function("set"), :message($["one", "two", "three"]), :topic("mylist")}
${:function("dump")}
${:function("delete"), :topic("version")}</pre>
=={{header|Ruby}}==
|