功能分析

DolphinScheduler源码分析

六月ゝ 毕业季﹏ 提交于 2020-01-07 17:13:16
DolphinScheduler源码分析 技术框架 所有模块均采用比较流行的SprintBoot框架 架构图 重要概念 流程定义 在DolphinScheduler中,作业的DAG被命名为“流程定义”。 挺不可思议的。 流程实例 流程实例是流程定义的实例化,可以通过手动启动或定时调度生成,流程定义每运行一次,产生一个流程实例。流程实例由Master解析流程定义生成。 任务实例 任务实例是流程定义中任务节点的实例化,标识着具体的任务执行状态。 居然没有作业的概念,直接上来任务实例的概念,真是匪夷所思。 定时 DAG的触发频率。与DAG概念隔离,单独创建、单独管理,一个DAG可以没有与之对应的定时。 架构说明 Quartz 内部对Quartz进行了一个封装,org.apache.dolphinscheduler.server.quartz.QuartzExecutors仅仅提供增加、删除作业的基础功能。其作业的状态等信息保存在数据库中以QRTZ_开头的表。 为了将实际作业的定义与Quartz隔离,抽象了一个ProcessScheduleJob类,用它来创建JobDetail。 该类仅仅是根据流程定义的定时等信息创建了一个CommandType.SCHEDULER类型的Command对象,然后插入了数据库,并没有的执行任务的具体逻辑。 MasterSchedulerThread

微服务全流程分析

余生颓废 提交于 2020-01-07 11:09:25
转眼已经2020,距离微服务这个词落地已经过去好多年!(我记得2017年就听过这个词)。然而今天我想想什么是微服务,其实并没有一个很好的定义。为什么这样说,按照微服务的定义: 微服务架构就是将一个庞大的业务系统按照业务模块拆分成若干个独立的子系统,每个子系统都是一个独立的应用,它是一种将应用构建成一系列按业务领域划分模块的,小的自治服务的软件架构方式,倡导将复杂的单体应用拆分成若干个功能单一、松偶合的服务,这样可以降低开发难度、增强扩展性、便于敏捷开发,及持续集成与交付活动。 根据这个定义,不难看出其实就是对复杂的业务系统统一做逻辑拆分,保持逻辑上的独立。那么逻辑上独立就是一个服务这样做真的是好吗,如何界定:小、独,还有要做一个事情,完成单一的业务,单一的功能要拆分出来,为了独立而独立会不会导致拆的过细?不同人有不同的见解,我们今天一起探讨微服务的过去和未来。 微服务缘起 在没有微服务之前,我们最早的架构模式就是 MVC 模式,把业务逻辑分为:表示层,业务逻辑层,数据访问层。MVC模式随着大前端的发展,从一开始的前后端不分离,到现在的前后端分离逐渐演进。这种演进好的一点是剥离了不同开发语言的开发环境和部署环境,使得开发较为便利,部署更直接。然而问题是:这种模式仍然是单体应用模式,如果有一个改动需要上线,你不得不因为这个改动去考虑更多

第二次作业 APP分析

别说谁变了你拦得住时间么 提交于 2020-01-05 02:21:54
第一部分 调研, 评测 1.下载软件并使用。 今天我要分析的软件app是UC浏览器这个软件,UC浏览器的用户群体还是挺多的,作为一款主流之一的浏览器APP,整体的用户体验还是很好的。简洁的界面还有中间的常用应用的标签,用户可以吧自己经常浏览使用的网页放在那里。每天的头条新闻可以让用户更好的了解每天的重要新闻。而且对新闻进行了分类。底下的设置选项也是简洁易懂。 上图: 2. 存在的bug。 在使用这个软件的过程中,整体的体验还是好的,但是当点击网页上的下载标志时,虽然在缓存列表中有这个视屏的缓存,但是实际上这个视屏并不能缓存下来,会一直处于正在缓存的提示下。我在百度上查到的结果是,客服说有些视屏因为版权问题而不能下载,但是用户在使用时并没有提示用户哪些视屏因为版权问题而不能下载,这让用户体验极差。 3.bug的描述。 这个缺陷我觉得可能是因为UC在缓存这个功能上,没有对缓存时的链接地址进行验证,导致在遇到未授权的链接地址时,该视频会一直卡在正在执行的状态 4.选择一个朋友(用户)进行采访,并加以记载。 4.1. 介绍采访对象的背景和需求。 小黄是一个经常浏览网站的网络达人,也很喜欢看一些搞笑的小视屏,但是由于还是一个学生,学校会在晚上11点之后断网,手机流量又不多。所以经常要把要看的视频进行缓存。 4.2. 让采访对象使用该产品的功能。 小黄下载了该应用

【beta】阶段 第六次 Scrum Meeting

妖精的绣舞 提交于 2020-01-03 07:22:49
每日任务 1.本次会议为第六次 Meeting会议; 2.本次会议在周六上午大课间,在陆大楼召开,召开本次会议为15分钟。 一、今日站立式会议照片 二、每个人的工作 (有work item 的ID) 队员 昨天已经完成的工作 今天计划完成的工作 ·何琴琴 制定接下来两天的计划和博客的编写 督促小组成员完成任务,召开会分析各工作的进展情况 · 吴世荣 配合研究人员对界面进行优化 分析昨天情况,提出改善意见 ·翁彬妹 整体项目的简单测试 对各功能进行分类测试 · 陈建章 继续完成新功能的研发,开始界面的优化 对web界面进一步优化 · 黄良静 开始对组卷系统功能进行完善 组卷系统的代码迁入 · 祝攀锋 配合研发人员对数据库功能进行优化 数据库的修改与添加 三、工作中遇到的困难 项目进行到现在,算是疲惫期了,主要的困难是没有很多继续下去的动力,that's a joke !说正题,测试方面出现一点问题,不过在测试人员的努力下,差不多搞定了! 四、燃尽图 五、每人的代码/文档签入记录 https://git.coding.net/poisonous-ant/Beta.git 来源: https://www.cnblogs.com/vviane1/p/6914692.html

Fiddler,简介

孤街浪徒 提交于 2020-01-02 00:55:07
Fiddler:骗子~ windows抓包首选。mac可以用charles 功能非常强大,是web调试的利器 监控浏览器所有的HTTP/HTTPS流量 查看、分析请求内容细节 伪造客户端请求和服务器响应 测试网站的性能 解密HTTPS的web会话 全局、局部断点功能 第三方插件 场景使用场景: 接口调试、接口测试、线上环境调试、web性能分析 判断前后端bug、开发环境hosts配置、mock、 弱网断网 来源: https://www.cnblogs.com/focusta/p/12131111.html

ArcGIS--(2)基本组成、模块

我只是一个虾纸丫 提交于 2019-12-30 02:46:06
ArcGIS Desktop ArcMap 桌面系统的核心应用。包括空间数据编辑、查询、显示、分析、报表和制图等GIS功能 ArcCatalog ArcCatalog 提供一个完整且统一的视图,其中显示可提供给用户的所有数据文件、数据库和ArcGIS归档。ArcCatalog使用两个主要面板来导航和处理地理信息项目 管理数据库的"数据窗口" 宏观浏览数据 方便管理数据 定义数据库结构、定义拓扑、创建数据、建立元数据 标准工具条 ArcToolBox GIS处理的核心功能和工具模块。 是ArcGIS的精华所在 ArcScene 三维数据的创建、编辑、管理和分析 适合展示三维透视场景平台 在三维情景中漫游、交互 基于OpenGL,支持 tin 数据 试用于数据比较小的场景 City Engine shyline DEM ArcGlobe 高性能 实施,多分辨率数据访问 直接使用 Geodatabase&GIS 数据 地表、栅格和矢量 包括全球基础数据 适合大范围数据的展示 ArcGIS Administrator 和 License Server Manager 中英文切换 许可管理 来源: CSDN 作者: Mikowoo007 链接: https://blog.csdn.net/Mikowoo007/article/details/103748595

简单的超市库存管理系统

风流意气都作罢 提交于 2019-12-28 13:47:02
案例需求分析 根据案例介绍,我们进行分析,首先需要一个功能菜单,然后输入功能序号后,调用序号对应的功能方法,实现想要的操作。分析步骤如下 1.完成超市商品初始化。创建商品,将商品添加到集合 2.显示来到超市能做的操作,也就是显示主菜单 3.根据接收到的功能选项,执行对应的功能 3.1.库存货物查询 3.2.添加新货物 3.3.删除货物 3.4.修改货物 3.5.退出系统,结束main方法的运行 4.循环,回到 2.显示主菜单 package com.oracle.store; import java.util.ArrayList; import java.util.Scanner; public class shop { public static void main(String[] args) { ArrayList<Goods> list=new ArrayList<Goods>(); Scanner sc=new Scanner(System.in); while(true){ MainMenu(); int num=sc.nextInt(); switch(num){ case 1:QueryGoods(list); break; case 2:AddGoods(list); break; case 3:DeleteGoods(list); break; case 4

开发流程

好久不见. 提交于 2019-12-28 07:07:21
  一个完整的开发流程应该有这四步:分析->设计->编码->测试。很多开发团队往往只有编码这边,弱化了其他步骤,他们拿到需求就开始写代码, 写着写着发现有问题,要么是遇到一个难点解决不了,要么是发现要返回修改以前写过的代码, 要么是发现有大量的重复代码,又不知道怎么封装,只能将错就错。做好了分析和设计编码时就不会有这么多问题, 做好了测试产品bug就少,产品质量才高。 下面我分别详细讲解一下这四步。 分析   分析的时候,我们要分析需求和难点。   分析需求的方法是做需求陈述处理,前面我提到过, 要区分做什么和怎么做,把这两部分独立出来,做什么是固定不变的, 而怎么做可能会经常变。我们再熟悉一下举的那个例子:我们要做一个成员列表(如图1-44),产品经理告诉我们要按姓名拼音排序。 图1-44 成员列表的例子   我们有时候不能直接听产品经理的,如果真写死成按姓名拼音排序就没有可扩展性了,比如某一天产品经理又告诉你需要把VIP会员提前,那么你只能再去修改排序的程序。这个需求始终不变的是排序,按姓名拼音只是排序的一种方法,我们在设计数据库时应该把排序字段设置为数字而不是拼音,再写一个拼音转换为数字的算法即可,这样在后面排序规则变化,比如VIP会员要提前,只是修改对应用户数据库的排序字段数值即可,不用大改程序。   我们可以用xmind做需求分析,

ArcGIS Server(详细介绍)转

冷暖自知 提交于 2019-12-28 03:19:43
ArcGIS Server 是功能强大的基于服务器的 GIS 产品,用于构建集中管理的、支持多用户的、具备高级GIS功能的企业级GIS应用与服务,如:空间数据管理、二维三维地图可视化、数据编辑、空间分析等即 拿即用的应用和类型丰富的服务。ArcGIS Server 是用户创建工作组、部门和企业级 GIS 应用的平台,通过 ArcGIS Server创建集中管理的、支持多用户的、提供丰富的GIS功能、并且满足工业标准的GIS应用。ArcGIS Server 提供广泛的基于 Web 的 GIS 服务,以支持在分布式环境下实现地理数据管理、制图、地理处理、空间分析、编辑和其它的GIS功能。 1. ArcGIS Server 的主要功能 ArcGIS Server 主要功能包括: 提供通用的框架在企业内部建立和分发GIS应用; 提供操作简单、易于配置的Web应用; 提供广泛的基于Web的空间数据获取功能; 提供通用的GIS数据管理框架; 支持在线的空间数据编辑和专业分析; 支持二维三维地图可视化; 除标准浏览器外,还支持ArcGISDesktop和ArcGISExplorer等桌面客户端; 可以集成多种GIS服务; 支持标准的WMS、WFS; 提供配置、发布和优化GIS服务器的管理工具; 提供.NET和Java软件开发工具包; 为移动客户提供应用开发框架; 1)ArcGIS Server

ArcGIS Server 介绍

爱⌒轻易说出口 提交于 2019-12-28 03:19:16
ArcGIS Server 是功能强大的基于服务器的 GIS 产品,用于构建集中管理的、支持多用户的、具备高级GIS功能的企业级GIS应用与服务,如:空间数据管理、二维三维地图可视化、数据编辑、空间分析等即 拿即用的应用和类型丰富的服务。ArcGIS Server 是用户创建工作组、部门和企业级 GIS 应用的平台,通过 ArcGIS Server创建集中管理的、支持多用户的、提供丰富的GIS功能、并且满足工业标准的GIS应用。ArcGIS Server 提供广泛的基于 Web 的 GIS 服务,以支持在分布式环境下实现地理数据管理、制图、地理处理、空间分析、编辑和其它的GIS功能。 1. ArcGIS Server 的主要功能 ArcGIS Server 主要功能包括: 提供通用的框架在企业内部建立和分发GIS应用; 提供操作简单、易于配置的Web应用; 提供广泛的基于Web的空间数据获取功能; 提供通用的GIS数据管理框架; 支持在线的空间数据编辑和专业分析; 支持二维三维地图可视化; 除标准浏览器外,还支持ArcGISDesktop和ArcGISExplorer等桌面客户端; 可以集成多种GIS服务; 支持标准的WMS、WFS; 提供配置、发布和优化GIS服务器的管理工具; 提供.NET和Java软件开发工具包; 为移动客户提供应用开发框架; 1)ArcGIS Server