zeromq

I can't grab/print data on the pull instance using plain zeroMQ Push/Pull pattern

拥有回忆 提交于 2020-03-21 10:10:49
问题 I am having tough times to grab and print data which is successfully pushed to the wire. I have set up a plain Push-Pull-Architecture with Metatrader 4 acting as producer and Python backend acting as consumer . When it comes to grabbing and printing the data, I just cannot make it happen. This is my push instance which works just fine: Metatrader 4 zeroMQ push instance: #include <Zmq/Zmq.mqh> // EA plot settings extern string PROJECT_NAME = "Dashex.Feeder"; extern string ZEROMQ_PROTOCOL =

Create language kernels for IPython for a language without ZeroMQ bindings

大城市里の小女人 提交于 2020-03-18 17:15:01
问题 There are some interesting descriptions of writing language kernels to allow a language previously unsupported by IPython to be executed from IPython. In all cases, the kernel creation step involves using the target language's ZeroMQ bindings (since ZeroMQ is a major architectural component of IPython's front-end to kernel communication protocol). In my company, a proprietary language was created a few years ago and is maintained with compilers to bytecode (with a bytecode runner written in C

Create language kernels for IPython for a language without ZeroMQ bindings

蹲街弑〆低调 提交于 2020-03-18 17:13:52
问题 There are some interesting descriptions of writing language kernels to allow a language previously unsupported by IPython to be executed from IPython. In all cases, the kernel creation step involves using the target language's ZeroMQ bindings (since ZeroMQ is a major architectural component of IPython's front-end to kernel communication protocol). In my company, a proprietary language was created a few years ago and is maintained with compilers to bytecode (with a bytecode runner written in C

Create language kernels for IPython for a language without ZeroMQ bindings

岁酱吖の 提交于 2020-03-18 17:12:24
问题 There are some interesting descriptions of writing language kernels to allow a language previously unsupported by IPython to be executed from IPython. In all cases, the kernel creation step involves using the target language's ZeroMQ bindings (since ZeroMQ is a major architectural component of IPython's front-end to kernel communication protocol). In my company, a proprietary language was created a few years ago and is maintained with compilers to bytecode (with a bytecode runner written in C

带你逆袭kafka之路

别说谁变了你拦得住时间么 提交于 2020-03-09 13:02:16
1. kafka概述 1.1 kafka简介 Apache Kafka 是一个快速、可扩展的、高吞吐的、可容错的分布式“发布-订阅”消息系统, 使用 Scala 与 Java 语言编写,能够将消息从一个端点传递到另一个端点,较之传统的消息中 间件(例如 ActiveMQ、RabbitMQ),Kafka 具有高吞吐量、内置分区、支持消息副本和高容 错的特性,非常适合大规模消息处理应用程序。 Kafka 官网: http://kafka.apache.org/ Kafka主要设计目标如下: 以时间复杂度为O(1)的方式提供消息持久化能力,即使对TB级以上数据也能保证常数时间的访问性能。 高吞吐率。即使在非常廉价的商用机器上也能做到单机支持每秒100K条消息的传输。 支持Kafka Server间的消息分区,及分布式消费,同时保证每个partition内的消息顺序传输。 同时支持离线数据处理和实时数据处理。 支持在线水平扩展 Kafka通常用于两大类应用程序: 建立实时流数据管道,以可靠地在系统或应用程序之间获取数据 构建实时流应用程序,以转换或响应数据流 要了解Kafka如何执行这些操作,让我们从头开始深入研究Kafka的功能。 首先几个概念: Kafka在一个或多个可以跨越多个数据中心的服务器上作为集群运行。 Kafka集群将 记录 流存储在称为 主题的 类别中。 每个记录由一个键

zeromq protobuf例子

走远了吗. 提交于 2020-03-09 09:04:37
https://github.com/AifiHenryMa/zeromq_protocolbuffer_demo https://github.com/protocolbuffers/protobuf github protobuf 随着使用的协议而有所不同,具体如下: TCP (tcp://hostname:port): 在主机之间进行通讯 INROC (inproc://name): 在同一进程的线程之间进行通讯(线程间) IPC (ipc:///tmp/filename): 同一主机的进程之间进行通讯 PGM (pgm://interface;address:port 和 epgm://interface;address:port): 多播通讯 消息格式 ZeroMQ ?默认可以发送或接收字符串和二进制的消息类型,但它对套接字之间传送的消息格式不加限制。我们可以自由地选择消息编码,如 XML,JSON、 MessagePack…在本文中为了简单起见,我们只使用字符串 http://travlr.github.io/libzmq/classzmq_1_1ipc__connecter__t.html 英文libzmq Protobuf 全称Protocol Buffers 是一种轻便高效的结构化数据存储格式,可以用于结构化数据串行化,很适合做数据存储或 RPC 数据交换格式。

Kafka学习笔记1 Kafka简介

帅比萌擦擦* 提交于 2020-03-05 09:48:09
正文 回到顶部 一、简介 1.1 概述 Kafka是最初由Linkedin公司开发,是一个分布式、分区的、多副本的、多订阅者,基于zookeeper协调的分布式日志系统(也可以当做MQ系统),常见可以用于web/nginx日志、访问日志,消息服务等等,Linkedin于2010年贡献给了Apache基金会并成为顶级开源项目。 主要应用场景是:日志收集系统和消息系统。 Kafka主要设计目标如下: 以时间复杂度为O(1)的方式提供消息持久化能力,即使对TB级以上数据也能保证常数时间的访问性能。 高吞吐率。即使在非常廉价的商用机器上也能做到单机支持每秒100K条消息的传输。 支持Kafka Server间的消息分区,及分布式消费,同时保证每个partition内的消息顺序传输。 同时支持离线数据处理和实时数据处理。 Scale out:支持在线水平扩展 1.2 消息系统介绍 一个消息系统负责将数据从一个应用传递到另外一个应用,应用只需关注于数据,无需关注数据在两个或多个应用间是如何传递的。分布式消息传递基于可靠的消息队列,在客户端应用和消息系统之间异步传递消息。有两种主要的消息传递模式: 点对点传递模式、发布-订阅模式 。大部分的消息系统选用发布-订阅模式。 Kafka就是一种发布-订阅模式 。 1.3 点对点消息传递模式 在点对点消息系统中,消息持久化到一个队列中。此时

消息队列的选择:kafka、rabbitmq、zeromq

此生再无相见时 提交于 2020-03-02 04:22:03
最近在做一个数据分析相关的工作,需求是将全国各地idc内的流量信息进行汇总和分析最后吐出一些安全策略,由于对时效性的要求比较高,大概每隔几秒就会有一次几十M的的数据需要传递到汇总服务器上去,而且随着业务的发展数据量还会越来越大,所以使用什么手段来做数据的传输就成为了一个关键的问题。 首先是可扩展性,如果使用标准socket进行传递的话随着数据量的扩大单点肯定会成为瓶颈,而且如果可用性要高的话,异步、缓存、重传等等都是需要考虑的要素,为了开速上线功能就要去几个开源的消息队列里挑选一下合适这个项目的了。 由于团队内的一些推荐和自己以前的经验,初步定下了kafka、rabbitmq、zeromq三个软件,这里主要介绍一下这三个软件各自的特点和功能,详细的使用说明和学习资料后面在补。 一、rabbitmq 首先是百科里的一段话,Rabbitmq是流行的开源消息队列系统,使用erlang语言进行开发。RabbitMQ是AMQP(高级消息队列协议)的标准实现。可以说从功能上rabbitmq基本上是符号这次项目要求的工具。 它的优点有: 1、完整的消息队列系统,支持多种消息队列模式,包括竞争消费; 2、基于AMQP 3、支持集群模式,扩展集群容量和性能比较方便,同时集成了集群的监控和管理; 4、支持消息的持久化; 缺点是: 1、需要学习比较复杂的接口和协议,比较耗费时间; 2

用Python写MT4自动交易策略来炒外汇

橙三吉。 提交于 2020-02-27 09:32:35
原理 使用MQL4原生语言调用ZERO-MQ作为消息接口服务端 使用Python作为ZERO-MQ的客户端,调用接口写MT4的自动交易策略 机器环境 Win10 Python3.6 MQL4调用ZERO-MQ作为接口服务器代码 #property version "1.00" #property strict // 调用ZERO-MQ库: MQL-ZMQ from https://github.com/dingmaotu/mql-zmq #include <Zmq/Zmq.mqh> // 设置ZERO-MQ参数 extern string PROJECT_NAME = "DWX_ZeroMQ_Example" ; extern string ZEROMQ_PROTOCOL = "tcp" ; extern string HOSTNAME = "*" ; extern int REP_PORT = 5555 ; extern int PUSH_PORT = 5556 ; extern int MILLISECOND_TIMER = 1 ; // 1 millisecond // 设置交易输入的参数 extern string t0 = "--- Trading Parameters ---" ; extern int MagicNumber = 123456 ; extern int

Asynchronous tasks. Which architecture? (Or pattern in zeroMQ)

霸气de小男生 提交于 2020-02-22 05:48:28
问题 I want one application on a Linux(Server) host to communicate with applications on Win7(Client) in a VM. Lib of choice is ZeroMQ. But how do I manage asynchronous tasks? Let me give an example: The application in the VM generates tasks in arbitrary intervals and sends them to the Linux box. This will process them but needs some time to answer. In this time the socket in REQ/REP pattern is blocked and incoming tasks from the WinApp can not be forwarded to the LinuxApp. How should I solve this?