小明的魔法调度框架之旅

据说每个程序员上辈子都是法力高深的魔法师

crontab

话说小明11年从新手村毕业,拿着一把等级为灰色的木剑就开始了打怪升级之路。小明发现怪并不好打,怪物都是在凌晨4点才出现的,好在小明在新手村的时候学会了一个叫crontab的静态魔法,该魔法虽然等级低但是不需要吟唱时间,小明将crontab附魔在自己的木剑上,木剑就可以每天凌晨4点定时去打怪了。

quartz

虽然crontab这个静态魔法很NB,无奈小明的装备换的太频繁,每次更新装备都需要重新将crontab附魔到武器上才行;这个时候小明已经学会了一个叫quartz的中级魔法,相对不需要吟唱的crontab,quartz需要按照Job,JobDetail,Tigger,Scheduler的顺序进行吟唱才行,虽然过程是
复杂了一些,但是好处是显而易见的,魔法再也不需要和装备进行绑定,Scheduler是一个完全独立结界,Scheduler可以容纳多个JobDetail和Tigger,内部的固有魔法线程池可以并行调度多个任务。

quartz集群

在使用了quartz这个中级魔法之后,小明轻松了很长一段时间,再也不必为换装备导致魔法失效而苦恼。在成为了一个合格的中级魔法师之后,学会了无限剑制这种BT魔法之后,小明决定向着中级副本进发,为了应付副本危险的环境,小明利用无限剑制将每个装备都附上了quartz这个魔法,现在问题来了,如果所有的quartz都发动,会产生魔法混乱现象,导致反噬;小明打开了《哈利波特》上面说需要使用魔法石进行魔法加持,例如红魔石mysql,绿魔石redis,蓝魔石zookeeper,只要魔石具有原子性锁操作机制就可以了,在红魔石mysql和quartz配合下,顺序的杀掉了怪物。

ttd/tbschedule

在中级副本打怪升级一段时间后,小明购买了高级魔法ttd和tbschedule,相对于静态魔法crontab和中级魔法quartz,高级魔法的功能真是-碉堡了。

  • 支持剑系武器java,弓系武器shell等多种武器;
  • 支持对吟唱依赖,上一个魔法吟唱成功后才会出现下一个魔法;
  • 支持大规模魔法分拆,合并
  • 有着路由规则指定这种高级魔法;
  • 由蓝宝石zookeeper进行加持和魔法心跳检测,保证不会出现魔法阵的混乱;
  • 通过魔物netty进行大规模魔法阵的触发;
  • 通过魔法镜面可以看到魔法执行的效果,当遇到大boss导致魔法失效时还有魔法消息监控功能;

future

在小明使用了购买的高级魔法TTD后,小明再也没有见过洛杉鸡凌晨4点的天空(其实是从来好么)。小明听说在山的那边海的那边有一群蓝精灵,他们快速又瞬移,他们筑墙又监禁,他们喽啰无敌生活在那绿色的大森林,他们亵渎溶火漩涡又结群……
不过小明并不惧怕,因为芝士就是力量。

posted @ 2017-02-23 11:14  minotaursu  阅读(202)  评论(0编辑  收藏  举报