
后台
文章平均质量分 95
余冰涛
北邮网络空间安全专业17级硕士,在实验室的主要研究方向是调度平台的应用与开发,涉及部分分布式内容以及后台开发内容。
展开
-
spring session
一、spring session的使用利用spring boot可以很容易地实现spring session,传送门:SpringBoot之使用Spring Session集群-redis二、原创 2020-02-05 11:56:51 · 755 阅读 · 0 评论 -
rocketmq 源码阅读笔记
nameserv路由管理:RouteInfoManagerpickupTopicRouteData():根据topic取得对应的所有队列list < QueueData>将每个队列QueueData的brokerName存到Set<String> brokerNameSet中遍历 brokerNameSet,从brokerAddrTable中取出brokerNa......原创 2019-12-04 20:08:48 · 1854 阅读 · 1 评论 -
调度平台YYSchedule-介绍-总体模块
YYSchedule是一个轻量级的分布式调度平台。主要用于用户与引擎的分布式交互。用户可以将自己的引擎打包成命令行可调用的形式,然后将其放入多个虚拟机中,再使用YYSchedule来进行管理。具体架构图如下所示:...原创 2018-12-19 15:34:45 · 328 阅读 · 0 评论 -
新任务管理系统YYSchedule-细节-spring整合线程池
一、需求在新调度平台中,我们使用了许多的队列,在任务量较大的情况下,我们必须保证从队列中取出任务并执行的效率。对于一些处理比较慢的任务,如果采用单线程,则会造成队列拥堵,我们需要使用多线程技术。二、实现1、config.properties中配置:### THREAD POOL SETTINGS ###cool_pool_size = 5keep_alive_seconds ...原创 2018-08-29 17:22:35 · 345 阅读 · 1 评论 -
新任务管理系统YYSchedule-介绍-任务下发机制
一、介绍任务下发机制是调度平台YYSchedule的主干部分,本篇博客将分为四个部分进行描述,分别是:1、介绍“任务”这一概念2、介绍用户如何向控制节点下发任务3、介绍任务下发机制4、介绍任务下发机制的具体队列图二、任务 调度平台的任务结构如下图所示: 用户下发一个mission为单位的任务,每个mission含有多个job,每个job分别对应一种执...原创 2018-08-29 10:10:27 · 2351 阅读 · 0 评论 -
新任务管理系统YYSchedule-细节-队列优先级实现
一、介绍 在本调度平台中,将以job为单位进行优先级设定,为什么要进行优先级设定呢? 举个例子: 一小时前用户A下发了100个病毒检测应用程序的任务,而现在突然想尽快检测新拥有的50个应用,但之前的100个检测任务并未完全执行完,如果不设置优先级,则新下发的50个任务进行排队,等待上一次100个应用程序检测完成后再进行检测。 如果设置了优先级,则每个节点会获取优先级高...原创 2018-08-31 09:20:56 · 714 阅读 · 1 评论 -
新任务管理系统YYSchedule-细节-引擎执行机制
一、介绍本篇博客将介绍node节点调用命令行执行引擎的具体方法。我们需要提前了解的是,在YYSchedule中,一个node节点对应着一个引擎。所有引擎的调用方式都是通过命令行进行调用,比方说,有人写了一个计算的程序,想把它整合到YYSchedule中,那么他就必须让该程序可以通过命令行进行调用,例如java程序就得打成jar包,而他所写的程序便成为了YYSchedule所定义的引擎。...原创 2018-08-07 12:23:10 · 300 阅读 · 0 评论 -
新任务管理系统YYSchedule-介绍-引擎执行机制及结果回收机制
注:结果回收机制是在下发任务机制之后。一、引擎的执行当用户下发了一批任务,这批任务会通过下发任务机制,下发到每个引擎(engine)中并进行执行。引擎执行任务时,可能会出现如下几种情况:1、程序顺顺利利地执行成功2、程序在执行过程中,出现了一些致命的错误,导致程序被强制中断。3、程序在执行过程中,通过程序自身发现一些错误,错误会导致没有最终结果出现,但不会中断程序的执行。...原创 2018-08-14 14:55:44 · 431 阅读 · 0 评论 -
新任务管理系统YYSchedule-细节-spring整合quartz2.x
一、quartz简介 Quartz是一个开源的任务调度框架。基于定时、定期的策略来执行任务是它的核心功能,比如x年x月的每个星期五上午8点到9点,每隔10分钟执行1次。Quartz有3个核心要素:调度器(Scheduler)、任务(Job)、触发器(Trigger)。Quartz完全使用Java开发,可以集成到各种规模的应用程序中。它能够承载成千上万的任务调度,并且支持集群。它支持将数据存储...原创 2018-07-19 13:54:31 · 218 阅读 · 0 评论 -
新任务管理系统YYSchedule-细节-心跳机制实现node节点管理
本文关键技术:1、Sigar获取系统信息2、node通过心跳机制向task发送信息3、activemq获取队列信息 一、介绍当taskmanager收到一个总的任务mission时,会按照任务类型以mission --> job --> task 的 方式进行切分(详见博客“新调度平台-taskmanager之任务下发”),接下来taskmanager会对ta...原创 2018-07-23 20:42:44 · 561 阅读 · 0 评论 -
新任务管理系统YYSchedule-细节-taskmanager之生成id并保证唯一性
一、介绍 在调度平台中,下发任务的单位有三种,分别是mission,job,task,因此我们在代码中也必须生成相应格式的missionId,jobId以及taskId。 对于代码生成id,我们使用的是+1的方式来进行生成,也就是说,假如现在的jobId为xxxx111,那么我们在生成下一个job时,赋予其的jobId应该为xxxx112,这部分应该很好理解,我们第一反应应该...原创 2018-06-18 17:09:10 · 624 阅读 · 0 评论 -
新任务管理系统YYSchedule-细节-spring生成applicationContext唯一容器
我们需要生成唯一的applicationContext对象,从而保证整个项目都在一个spring容器中进行管理。这样做的优点有很多,其中一个是实现有些java类的单例模式实现:学过spring都知道,spring是可以通过配置便实现单例模式的,但对于每一个IOC容器,它只会生成唯一的实例。如果我们不确保applicationContext对象只有一个,那么我们便无法实现真正的单例模式。...原创 2018-06-18 17:07:57 · 289 阅读 · 0 评论 -
新任务管理系统YYSchedule-细节-Ftp工具
注:ftp相关的绝大多数代码都是直接引用师兄师姐老平台所写的代码,修改部分只有将程序结构进行修改,使其更契合spring,并增加了spring特性。在applicationContext-component.xml中添加如下信息: <context:component-scan base-package="com.YYSchedule.store.ftp"/> <...原创 2018-06-24 20:38:34 · 309 阅读 · 0 评论 -
Maven项目总结(进阶篇)
2018-01-25这个笔记是在实验室工作了8个月,经历了 初学maven---安卓项目中有maven----pc应用检测自己写打包------看了一遍网课----最新的安卓项目搭框架 之后的经验总结maven相对而言还是比较简单的,但如果对这一套流程不熟悉的话,很容易造成很多不必要的麻烦,甚至会造成一种“我不用maven反而更简单”的误解(都是我之前懵懵懂懂自学而产生的血与泪),因此对里面的步骤...原创 2018-02-28 10:04:07 · 620 阅读 · 0 评论