mydeman的学习日志

知行合一

量化交易系统任务框架的演化之路(5)用Kafka实现分布式计算任务框架

在之前的几篇文章中,都是基于单服务器系统讲解了任务框架的逐步演化,包含了效率、依赖关系、可管理性等几个方面的内容。可是随着量化系统的中因子、信号、数据预处理、日志监控等需求的不断增多,并且大家都知道量化交易系统,是对响应时间有要求的,尤其是对分钟级别甚至tick级别信号的检测等,那么这个时候,单机...

2018-06-14 13:24:35

阅读数:129

评论数:0

量化交易系统任务框架的演化之路(4)用Push方式解决任务之间的依赖

在上一篇文章《量化交易系统任务框架的演化之路(3)基于多状态的任务依赖解决》中提供了一种利用数据库作为状态数据交换媒介的解决方案,通过这种方法,实现了依赖和被依赖的任务之间解耦,但是问题也十分明显,就是轮询被依赖任务的状态的做法会带来无谓的计算资源的浪费,一旦任务过多,无论是对数据库还是对任务系统...

2018-06-07 17:11:01

阅读数:87

评论数:0

量化交易系统任务框架的演化之路(3)基于多状态的任务依赖解决

在量化交易系统任务框架的演化之路(2)状态管理中为任务引入了一个状态,解决了任务的重入问题,那么还有一个悬而未决的问题:如何解决任务之间的依赖关系?那么今天就来看看如何基于多状态解决任务直接的依赖关系。 假定有两个每天执行一次的任务A和B,任务B要在任务A的执行完毕后才能启动。在设计时,应该考虑...

2018-05-28 22:50:13

阅读数:98

评论数:0

量化交易系统任务框架的演化之路(2)状态管理

在上一篇文章(量化交易系统任务框架的演化之路(1)定时任务)的结尾提了三个问题,今天就来第一版的解决方案。 之前的实现方案中,所有任务都是无状态、无管理的,人工干预就比较麻烦。其实解决这个问题的方法很简单,那就是增加一个“状态”,看一下这个流程图: Created with Raphaël 2...

2018-05-25 13:47:41

阅读数:300

评论数:0

量化交易系统任务框架的演化之路(1)定时任务

一个完善的量化交易系统不但包含了最基本的选股、择时、回测等基本的任务,而且还包含了众多了独立的任务模块,这些任务模块被设计成可插拔的独立任务。本系列文章将会分别讲解几种不同的实现这些任务模块的技术。 定时任务 定时执行是一种普遍采用的技术,容易理解也方便实现,很多开发框架都为快速的设定定时...

2018-05-17 17:11:54

阅读数:471

评论数:2

Elasticsearch上手 - 遇到的问题

记录在使用Elasticsearch时遇到一些问题。

2017-02-26 11:26:37

阅读数:4309

评论数:0

空间换时间,轻松提高性能100倍

空间换时间的最常用场景就是缓存,为了提高性能可以设置不同类型的缓存

2017-02-24 13:04:24

阅读数:1363

评论数:0

持续集成之路——使用SpringTestDbunit管理数据集的一个问题

在进行数据访问的单元测试,一般都会新增数据记录的情况,那么在设置数据集一般会是: 然后在测试方法中,通过验证新增的记录数或者新增记录的内容,确保被测试方法正确执行: @Test @DatabaseSetup("user/UserService-addUser-datase...

2013-08-22 09:18:20

阅读数:3334

评论数:0

持续集成之路 —— Mock对象引起的测试失败

今天遇到了一个很奇怪的问题,纠结了好久。在和同事念叨这个问题时,突然想到了问题所在。        问题现象: 在一个Service的单元测试类中有八个测试用例,单独运行时都可以正常通过。可是一旦一起运行时,总是会有固定的两个测试失败。        问题原因:有一个测试用例mock了Servic...

2013-08-12 15:14:23

阅读数:3457

评论数:0

持续集成之路——服务层的单元测试

在完成了数据访问层的单元之后,接下来看如何编写服务层(Service)的单元测试。服务层应该是整个系统中得重中之重,严密的业务逻辑设计保证了系统稳定运行,所以这一层的单元测试也应该占很大比重。虽然一般情况下单元测试应该尽量通过mock剥离依赖,但是由于在当前的项目中数据访问层使用spring-da...

2013-07-24 00:07:53

阅读数:4382

评论数:1

持续集成之路——数据访问层单元测试遇到的问题

在编写数据访问层的单元测试时,遇到不少问题,有些问题可以很容易Google到解决方法,而有些只能自己研究解决。这里分享几个典型的问题以及解决方法。先交代一下用到的测试框架 Spring Test + SpringTestDbUnit + DbUnit。一、先说一个低级的问题。Spring通过标签提...

2013-07-19 00:09:42

阅读数:13956

评论数:0

Eclipse无法直接运行Maven构建的webapp

最近开发的一个项目一直存放在移动硬盘上,结果前天由于查了多个设备,盘符就变了,Eclipse也就找不到了项目。把项目拷回本地磁盘后,重新打开。直接Run On Server,提示ClassNotFoundException,找不到Spring ApplicationContext。进到%ECLIP...

2012-09-12 13:49:46

阅读数:4850

评论数:0

最近使用Eclipse遇到的几个问题

自从用了Eclipse以后就再也没有更换过IDE,虽然期间也尝试过NetBeans、Idea等,但是总感觉用起来不顺手,快捷键也找不到,最后还是回归了Eclipse。不过,Eclipse偶尔也会耍耍小脾气,出现一些莫名其妙的问题。下面三个就是这一段时间经常碰到的。         1、在Eclip...

2011-11-08 23:40:41

阅读数:7014

评论数:0

Spring中Aspectj和Schema-based AOP混用引起的错误

前几天要在项目中增加一个新功能用来监控某些模块的运行情况,自然就想到了使用Spring的AOP来实现。之前已经有类似的AOP代码,使用的是Schema-based形式配置的,也就是在Spring的ApplicationContext.xml中加入了: <bean id="...

2011-11-08 14:32:05

阅读数:5246

评论数:0

使用logback轻松管理日志

最近才开始在项目中使用logback,有一种相见恨晚的感觉,因为它很轻易的满足了我的几个需求:        1. 配置简单,易于上手        2. 一个日志文件中只能某一个级别的日志        3. 一个类中可以指定多个不同的日志,并且生成的每个日志文件中只包含其本身

2011-08-25 01:34:42

阅读数:57946

评论数:2

使用Lucene-Spatial实现集成地理位置的全文检索

Lucene通过Spatial包提供了对基于地理位置的全文检索的支持,最典型的应用场景就是:“搜索中关村附近1公里内的火锅店,并按远近排序”。使用Lucene-Spatial添加对地理位置的支持,和之前普通文本搜索主要有两点区别:        1. 将坐标信息转化为笛卡尔层,建

2011-08-21 22:52:39

阅读数:10005

评论数:2

Java实现对MongoDB的AND、OR和IN操作

在MongoDB的官方文档中关于Java操作的介绍,只给出了很简单的几个例子。这些例子虽然可以满足一定的需求,但是还并不是太完全。下面是我根据网页中的提示写的几个例子。        1.背景。用JUnit4.8.2实现的单元测试的形式。测试数据: {uid:10,use

2011-08-02 01:16:25

阅读数:37344

评论数:3

Java无法连接MongoDB问题

背景介绍:        由于开发用的Linux服务器在一个相对封闭的环境中,只有通过SSH访问22端口。于是就用putty做了一个SSH forwarding,将本机的27018端口映射到远程的27017端口。在cmd中通过mongo localhost:27018成功连接,

2011-07-31 00:34:45

阅读数:7369

评论数:3

Velocity的中文问题

今天做了一个小工具,通过Velocity生成Latext的tex文件,可是当使用Miktex生成PDF时,里面的中文都变成了乱码。而之前在Eclipse直接运行时,并没有发现问题。毫无疑问是文件编码引起的问题。        用Notepad++打开生成的tex文件,发现文件的编

2011-07-25 22:44:30

阅读数:4105

评论数:1

CentOS 上Tomcat7.0.8的tldScanJar错误

同一版本的程序运行在不同OS下相同版本的Tomcat下,只有CentOS出现了tdlScanJar错误。

2011-03-15 11:24:00

阅读数:3088

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭