Elastic-Job-Cloud 微信h5牛牛房卡网站开发源码下载分析
2018-03-31 15:14
597 查看
环境要求
1、微信h5牛牛房卡网站开发(Q1687054422) 下载2、Eclipse IDE for Java EE Mars 2 (4.5.2) 下载3、Apache Maven 3.3+ 下载4、MySql 5.7+ 下载云作业App配置类
CloudAppConfiguration,云作业App配置。实现代码如下:public final class CloudAppConfiguration { /** * 应用名 */ private final String appName; /** * 应用包地址 */ private final String appURL; /** * 应用启动脚本 */ private final String bootstrapScript; /** * cpu 数量 */ private double cpuCount = 1; /** * 内存 大小 */ private double memoryMB = 128; /** * 每次执行作业时是否从缓存中读取应用。禁用则每次执行任务均从应用仓库下载应用至本地 */ private boolean appCacheEnable = true; /** * 常驻作业事件采样率统计条数,默认不采样全部记录。 * 为避免数据量过大,可对频繁调度的常驻作业配置采样率,即作业每执行N次,才会记录作业执行及追踪相关数据 */ private int eventTraceSamplingCount;} |
appURL下载应用包,
操作云作业App配置
云作业App配置有多种操作:添加 / 更新 / 删除开启 / 禁用
有两种方式进行操作,以添加举例子:调用 HTTP 接口:
curl -l -H "Content-type: application/json" -X POST -d '{"appName":"foo_app","appURL":"http://app_host:8080/yourJobs.gz","cpuCount":0.1,"memoryMB":64.0,"bootstrapScript":"bin/start.sh","appCacheEnable":true,"eventTraceSamplingCount":0}' http://elastic_job_cloud_host:8899/api/app |
运维平台是对调用 HTTP 接口的UI封装,实现代码如下:
// CloudAppRestfulApi@Path("/app")public final class CloudAppRestfulApi { /** * 注册应用配置. * * @param appConfig 应用配置 */ @POST @Consumes(MediaType.APPLICATION_JSON) public void register(final CloudAppConfiguration appConfig) { Optional<CloudAppConfiguration> appConfigFromZk = appConfigService.load(appConfig.getAppName()); if (appConfigFromZk.isPresent()) { throw new AppConfigurationException("app '%s' already existed.", appConfig.getAppName()); } appConfigService.add(appConfig); }}// CloudAppConfigurationService.java/*** 添加云作业APP配置.** @param appConfig 云作业App配置对象*/public void add(final CloudAppConfiguration appConfig) { regCenter.persist(CloudAppConfigurationNode.getRootNodePath(appConfig.getAppName()), CloudAppConfigurationGsonFactory.toJson(appConfig));}// CloudAppConfigurationNode.JAVApublic final class CloudAppConfigurationNode { public static final String ROOT = "/config/app"; private static final String APP_CONFIG = ROOT + "/%s"; // %s = ${APP_NAME}} |
CloudAppConfigurationService,云作业App配置服务,实现了云作业应用的存储功能。
调用
AppConfigService#add(...)方法,存储 CloudAppConfiguration 到注册中心( Zookeeper )的持久数据节点
${NAMESPACE}/config/app/${APP_NAME},JSON 格式化对象。使用 zkClient 查看如下:
相关文章推荐
- 【高可用】分布式作业系统 Elastic-Job-Cloud 源码分析
- 开发---推荐16个国外的源码下载网站
- 用c#开发微信 (4) 基于Senparc.Weixin框架的接收事件推送处理 (源码下载)
- 【源码分析】Elastic-Job源码分析之AbstractElasticJobExecutor分析
- 微信小程序swiper组件用法实例分析【附源码下载】
- 用c#开发微信(1)服务号的服务器配置和企业号的回调模式 - url接入 (源码下载)
- Elastic-Job项目源码分析3-- 浅谈源码分析
- 微信小程序开发资料、工具、教程、源码(全套免费下载)
- 【备忘】安卓之微信项目开发实战教程+源码 下载
- 微信公众账号(平台)java开发源码下载
- 微信实验七、微信PHP开发调试技巧及源码下载
- 微信开发H5十二人牛牛源码下载搭建
- 用c#开发微信 (4) 基于Senparc.Weixin框架的接收事件推送处理 (源码下载)
- Elastic-Job项目源码分析2--console执行一窥
- 【源码分析】Elastic-Job源码分析之JobScheduler类分析
- 微信小程序开发之文件上传下载应用场景(附Demo源码)
- 用c#开发微信(3)基于Senparc.Weixin框架的接收普通消息处理 (源码下载)
- Elastic-Job项目源码分析5 -- 事件追踪
- Elastic-Job项目源码分析1--核心骨架JobScheduler
- Elastic-Job项目源码分析2--console执行一窥