RUVIDEO
Поделитесь видео 🙏

OpenStack Oslo Messaging RPC API Tutorial Presentation смотреть онлайн

OpenStack Oslo Messaging RPC API Tutorial Presentation
http://fosshelp.blogspot.in/2015/02/openstack-oslo-messaging-rpc-api.html

1) RPC Server
===========

from pprint import pprint
from oslo.config import cfg
import oslo.messaging as om

##Invoke "get_transport". This call will set default Configurations required to Create Messaging Transport
transport = om.get_transport(cfg.CONF)

##Set/Override Configurations required to Create Messaging Transport
cfg.CONF.set_override('rabbit_host', '192.168.56.101')
cfg.CONF.set_override('rabbit_port', 5672)
cfg.CONF.set_override('rabbit_userid', 'guest')
cfg.CONF.set_override('rabbit_password', 'cloud')
cfg.CONF.set_override('rabbit_login_method', 'AMQPLAIN')
cfg.CONF.set_override('rabbit_virtual_host', '/')
cfg.CONF.set_override('rpc_backend', 'rabbit')

##Check Configurations
res = [{k:v} for k, v in cfg.CONF.iteritems()]
pprint(res)

##Create Messaging Transport
transport = om.get_transport(cfg.CONF)

##Create Target (Exchange, Topic and Server to listen on)
target = om.Target(topic='testme', server='192.168.56.102')

##Create EndPoint
class TestEndpoint(object):
def test_method1(self, ctx, arg):
res = "Result from test_method1 " + str(arg)
print res
return res
def test_method2(self, ctx, arg):
res = "Result from test_method2 " + str(arg)
print res
return res

##Create EndPoint List
endpoints = [TestEndpoint(),]

##Create RPC Server
server = om.get_rpc_server(transport, target, endpoints, executor='blocking')

##Start RPC Server
server.start()

2) RPC Client
===========

from pprint import pprint
from oslo.config import cfg
import oslo.messaging as om

##Invoke "get_transport". This call will set default Configurations required to Create Messaging Transport
transport = om.get_transport(cfg.CONF)

##Set Configurations required to Create Messaging Transport
cfg.CONF.set_override('rabbit_host', '192.168.56.101')
cfg.CONF.set_override('rabbit_port', 5672)
cfg.CONF.set_override('rabbit_userid', 'guest')
cfg.CONF.set_override('rabbit_password', 'cloud')
cfg.CONF.set_override('rabbit_login_method', 'AMQPLAIN')
cfg.CONF.set_override('rabbit_virtual_host', '/')
cfg.CONF.set_override('rpc_backend', 'rabbit')

##Check Configurations
res = [{k:v} for k, v in cfg.CONF.iteritems()]
pprint(res)

##Create Messaging Transport
transport = om.get_transport(cfg.CONF)

##Create Target
target = om.Target(topic='testme')

##Create RPC Client
client = om.RPCClient(transport, target)

##Invoke remote method and wait for a reply.
arg = "Saju"
ctxt = {}
client.call(ctxt, 'test_method1', arg=arg)

##Invoke remote method and return immediately.
arg = "Saju"
ctxt = {}
client.cast(ctxt, 'test_method1', arg=arg)

3)
RPC Client Options
===============

a)
RPC Client Call and Cast
----------------------------------------------

##Create Target
target = om.Target(topic='testme')

##Create RPC Client
client = om.RPCClient(transport, target)

##RPC Call
ctxt = {}
for x in range(10):
client.call(ctxt, 'test_method1', arg=x)

##RPC Cast
ctxt ={}
for x in range(10):
client.cast(ctxt, 'test_method1', arg=x)

b)
Client send request to Specific Server
--------------------------------------------------------------------

##Create Target and specify the server where you want to send the request
target = om.Target(topic='testme', server='192.168.56.102')

##Create RPC Client
client = om.RPCClient(transport, target)

##RPC call
ctxt = {}
for x in range(10):
client.call(ctxt, 'test_method1', arg=x)

##RPC cast
ctxt = {}
for x in range(10):
client.cast(ctxt, 'test_method1', arg=x)

c)
Client send request to one of the servers in a round-robin fashion
--------------------------------------------------------------------

##Create Target without any specific server
target = om.Target(topic='testme')

##Create RPC Client
client = om.RPCClient(transport, target)

##RPC Call
ctxt = {}
for x in range(10):
client.call(ctxt, 'test_method1', arg=x)

##RPC Cast
ctxt = {}
for x in range(10):
client.cast(ctxt, 'test_method1', arg=x)ctxt = {}

d)
Client send request to all the servers. (fanout)
----------------------------------------------------------------------

##Create Target and set fanout = True
target = om.Target(topic='testme', fanout=True)

##Create RPC Client
client = om.RPCClient(transport, target)

##RPC Call (Will not Support)
ctxt = {}
for x in range(10):
client.call(ctxt, 'test_method1', arg=x)

##RPC Cast.Fanout works with only RPC Cast.
ctxt = {}
for x in range(10):
client.cast(ctxt, 'test_method1', arg=x)

Что делает видео по-настоящему запоминающимся? Наверное, та самая атмосфера, которая заставляет забыть о времени. Когда вы заходите на RUVIDEO, чтобы посмотреть онлайн «OpenStack Oslo Messaging RPC API Tutorial Presentation» бесплатно и без регистрации, вы рассчитываете на нечто большее, чем просто загрузку плеера. И мы это понимаем. Контент такого уровня заслуживает того, чтобы его смотрели в HD 1080, без дрожания картинки и бесконечного буферизации.

Честно говоря, Rutube сегодня — это кладезь уникальных находок, которые часто теряются в общем шуме. Мы же вытаскиваем на поверхность самое интересное. Будь то динамичный экшн, глубокий разбор темы от любимого автора или просто уютное видео для настроения — всё это доступно здесь бесплатно и без лишних формальностей. Никаких «заполните анкету, чтобы продолжить». Только вы, ваш экран и качественный поток.

Если вас зацепило это видео, не забудьте взглянуть на похожие материалы в блоке справа. Мы откалибровали наши алгоритмы так, чтобы они подбирали контент не просто «по тегам», а по настроению и смыслу. Ведь в конечном итоге, онлайн-кинотеатр — это не склад файлов, а место, где каждый вечер можно найти свою историю. Приятного вам отдыха на RUVIDEO!

Видео взято из открытых источников Rutube. Если вы правообладатель, обратитесь к первоисточнику.