Esempio n. 1
0
File: Learner.py Progetto: irff/uas
    def __init__(self):
        self.publisher = Publisher(queue_url=QUEUE_URL,
                                   queue_port=QUEUE_PORT,
                                   username=USERNAME,
                                   password=PASSWORD,
                                   virtual_host=VHOST)

        self.consumer = Consumer(queue_url=QUEUE_URL,
                                 queue_port=QUEUE_PORT,
                                 username=USERNAME,
                                 password=PASSWORD,
                                 virtual_host=VHOST)
Esempio n. 2
0
    def __init__(self, node_id):
        self.node_id = node_id

        self.publisher = Publisher(
            queue_url=QUEUE_URL,
            queue_port=QUEUE_PORT,
            username=USERNAME,
            password=PASSWORD,
            virtual_host=VHOST
        )

        self.consumer_write = Consumer(
            queue_url=QUEUE_URL,
            queue_port=QUEUE_PORT,
            username=USERNAME,
            password=PASSWORD,
            virtual_host=VHOST
        )

        self.consumer_broadcast = Consumer(
            queue_url=QUEUE_URL,
            queue_port=QUEUE_PORT,
            username=USERNAME,
            password=PASSWORD,
            virtual_host=VHOST
        )

        self.consumer_read = Consumer(
            queue_url=QUEUE_URL,
            queue_port=QUEUE_PORT,
            username=USERNAME,
            password=PASSWORD,
            virtual_host=VHOST
        )

        self.db = TinyDB('db.json')
        self.DB = Query()

        consume_write_thread = threading.Thread(
            target=self.consume_write
        )
        consume_write_thread.start()

        consume_broadcast_thread = threading.Thread(
            target=self.consume_broadcast
        )
        consume_broadcast_thread.start()

        consume_read_thread = threading.Thread(
            target=self.consume_read
        )
        consume_read_thread.start()
Esempio n. 3
0
    def __init__(self):
        self.publisher = Publisher(queue_url=QUEUE_URL,
                                   queue_port=QUEUE_PORT,
                                   username=USERNAME,
                                   password=PASSWORD,
                                   virtual_host=VHOST)

        self.consumer = Consumer(queue_url=QUEUE_URL,
                                 queue_port=QUEUE_PORT,
                                 username=USERNAME,
                                 password=PASSWORD,
                                 virtual_host=VHOST)

        # daftar Node ID, jangan lupa menambahkan ke sini jika menjalankan node baru
        self.nodes = [1, 2, 3]
Esempio n. 4
0
File: proposer.py Progetto: irff/uas
    def __init__(self, proposer_id):
        self.proposer_id = proposer_id

        self.publisher = Publisher(queue_url=QUEUE_URL,
                                   queue_port=QUEUE_PORT,
                                   username=USERNAME,
                                   password=PASSWORD,
                                   virtual_host=VHOST)

        self.consumer = Consumer(queue_url=QUEUE_URL,
                                 queue_port=QUEUE_PORT,
                                 username=USERNAME,
                                 password=PASSWORD,
                                 virtual_host=VHOST)

        # daftar Acceptor ID
        self.acceptors = [1, 2]
        self.number_of_acceptors = len(self.acceptors)
Esempio n. 5
0
                                child_of=sspan,
                                tags={
                                    tags.SPAN_KIND: 'producer',
                                    tags.COMPONENT: 'payment',
                                    'message_bus.destination': 'orders'
                                })

    # For screenshot demo requirements optionally add in a bit of delay
    delay = int(os.getenv('PAYMENT_DELAY_MS', 0))
    time.sleep(delay / 1000)

    headers = {}
    ot.tracer.inject(span.context, ot.Format.HTTP_HEADERS, headers)
    app.logger.info('msg headers {}'.format(headers))

    publisher.publish(order, headers)

    span.finish()


# RabbitMQ
publisher = Publisher(app.logger)

if __name__ == "__main__":
    sh = logging.StreamHandler(sys.stdout)
    sh.setLevel(logging.INFO)
    app.logger.addHandler(sh)
    app.logger.setLevel(logging.INFO)
    port = int(os.getenv("SHOP_PAYMENT_PORT", "8080"))
    app.run(host='0.0.0.0', port=port)
Esempio n. 6
0
from rabbitmq import Publisher # pylint: disable=import-error

TIMER_STATES = [
    'trends',
    'orders',
    'profit',
    'orders'
]

# initialize the logger so we see what happens
logger_path = Path(app_config.log.path)
logger = Logger(path = logger_path / Path(__file__).stem, level = int(app_config.log.level))

# intialize the Rabbit MQ connection
params = pika.ConnectionParameters(host='localhost')
publisher = Publisher(params)

current_stamp = int(datetime.datetime.now(tz = datetime.timezone.utc).timestamp()) * 1000
#current_stamp = int(datetime.datetime(2020, 11, 20, 19, 20, 00, tzinfo = datetime.timezone.utc).timestamp() * 1000)

# send the Rabbit MQ message
logger.debug('Sending check orders message.')
publisher.publish({
    'stamp': current_stamp,
    'lookahead': int(app_config.orders.lookahead)
})
logger.debug('Sent check orders message.')

if __name__ == '__main__':
    chroot = Path(__file__).absolute().parent
    state_file_name = Path(__file__).stem + '.state'