Flink Spring案例代码
懒松鼠Flink-Boot 脚手架让Flink全面拥抱Spring生态体系,使得开发者可以以Java WEB开发模式开发出分布式运行的流处理程序,懒松鼠让跨界变得更加简单。懒松鼠旨在让开发者以更底上手成本(不需要理解分布式计算的理论知识和Flink框架的细节)便可以快速编写业务代码实现。为了进一步提升开发者使用懒松鼠脚手架开发大型项目的敏捷的度,该脚手架默认集成Spring框架进行Bean管理,同时将微服务以及WEB开发领域中经常用到的框架集成进来,进一步提升开发速度。比如集成Mybatis ORM框架,Hibernate Validator校验框架,Spring Retry重试框架等,具体见下面的脚手架特性。该脚手架屏蔽掉组装Flink API细节,让Flink全面拥抱Spring生态体系,使得开发者能以传统Java WEB模式的开发方式开发出具备分布式计算能力的流处理程序,懒松鼠让跨界变得更加简单。
懒松鼠旨在让开发者以更底上手成本(不需要理解分布式计算的理论知识和Flink框架的细节)便可以快速编写业务代码实现。
为了进一步提升开发者使用该脚手架开发大型项目的敏捷的程度,该脚手架工程默认集成Spring框架进行Bean管理,同时将微服务以及WEB开发领域中经常用到的框架集成进来,进一步提升开发速度。比如集成:
[*]集成Jbcp-template对Mysql,Oracle,SQLServer等关系型数据库的快速访问。
[*]集成Hibernate Validator框架进行参数校验。
[*]集成Spring Retry框架进行重试标志。
[*]集成Mybatis框架,提高对关系型数据库增,删,改,查的开发速度。
[*]集成Spring Cache框架,实现注解式定义方法缓存。
[*]集成Dubbo 框架,实现Dubbo Consumer调用Spring Cloud中的服务接口。
诞生由来
[*]本人一直认为,Flink框架,在某些场景完全可以替代Spring微服务框架,但是很多人仍认为它只能用在OLAP场景,对批处理场景的扩展(批流一体不做讨论)。
[*]作为一个深耕流计算领域,同时具备java分布式开发能力的开发者,我一直认为一个Flink也好,Spark Streaming也好,Storm也好,流计算开发工程师必须具备深厚的Java功底,不然无法解决高并发的经验,毕竟和离线计算相比,它的失败重跑的代价太大,同时要和很多第三方系统进行交互,比如作为服务的消费组调用Eurake中的服务提供者,存储数据到关系型数据库,这又涉及到事务等理论等等。
[*]目前市场的普遍情况就是统计一些PU,VU指标等,更或者仅仅是实时ETL,面向SQL编程。很多流计算开发者对Flink框架的特性头头是道,但是基本的Java功底却很薄弱。
[*]本框架未来将会开发DRPC组件,该组件将基于Dubbo服务注册者来注册服务供服务消费组进行消费,做到真正的同步响应。
地址:
https://github.com/intsmaze/flink-boot
代码下载:
感谢分享
页:
[1]