Conductor Server
安装
要求
- 数据库:Dynomite https://github.com/Netflix/dynomite
- 索引后端: Elasticsearch 2.x https://www.elastic.co/cn/
- Servlet容器:Tomcat,Jetty或类似的运行JDK 1.8或更高版本
有3种方式可以安装Conductor:
源代码build
从源代码构建,从github检查代码,并使用gradle build命令构建服务器模块。如果没有安装Gradle,可以./gradlew build从项目根目录运行命令。这会在文件夹./server/build/libs/中生成导体-server-all- VERSION.jar
该jar可以执行:
java -jar conductor-server-VERSION-all.jar
从jcenter或maven中央下载预制的二进制文件
使用以下坐标:
| 组 | 神器 | 版 |
|---|---|---|
| com.netflix.conductor | 导体服务器所有 | 1.6。+ |
3.使用预先配置的Docker镜像
要为conductor server构建Docker映像,并运行以下命令:
cd docker
docker-compose build
在构建Docker image后,运行以下命令启动容器:
docker-compose up
这将创建一个由以下image组成的docker container网络:conductor:server,conductor:ui,elasticsearch:2.4和dynomite。
要查看UI,请导航到localhost:5000,以查看Swagger文档,导航到localhost:8080。
配置
conductor server使用基于属性文件的配置。属性文件作为命令行参数传递给Main类。
java -jar conductor-server-all-VERSION.jar [PATH TO PROPERTY FILE] [log4j.properties file path]
log4j.properties文件路径是可选的,可以更好地控制日志记录(默认为控制台中的INFO级别日志记录)。
配置参数
# Database persistence model. Possible values are memory, redis, and dynomite.
# If omitted, the persistence used is memory
#
# memory : The data is stored in memory and lost when the server dies. Useful for testing or demo
# redis : non-Dynomite based redis instance
# dynomite : Dynomite cluster. Use this for HA configuration.
db=dynomite
# Dynomite Cluster details.
# format is host:port:rack separated by semicolon
workflow.dynomite.cluster.hosts=host1:8102:us-east-1c;host2:8102:us-east-1d;host3:8102:us-east-1e
# Dynomite cluster name
workflow.dynomite.cluster.name=dyno_cluster_name
# Namespace for the keys stored in Dynomite/Redis
workflow.namespace.prefix=conductor
# Namespace prefix for the dyno queues
workflow.namespace.queue.prefix=conductor_queues
# No. of threads allocated to dyno-queues (optional)
queues.dynomite.threads=10
# Non-quorum port used to connect to local redis. Used by dyno-queues.
# When using redis directly, set this to the same port as redis server
# For Dynomite, this is 22122 by default or the local redis-server port used by Dynomite.
queues.dynomite.nonQuorum.port=22122
# Transport address to elasticsearch
workflow.elasticsearch.url=localhost:9300
# Name of the elasticsearch cluster
workflow.elasticsearch.index.name=conductor
# Additional modules (optional)
conductor.additional.modules=class_extending_com.google.inject.AbstractModule
高可用性配置
导体服务器是无状态的,可以部署在多个服务器上以处理规模和可用性需求。服务器的可扩展性是通过将Dynomite集群与用于队列的dyno-queue进行缩放来实现的。
客户端通过HTTP负载平衡器或使用Discovery(在NetflixOSS堆栈上)连接到服务器。
Conductor Server的更多相关文章
- conductor介绍
https://netflix.github.io/conductor/ https://github.com/Netflix/conductor 编译版: https://jcenter.bintr ...
- netflix conductor 学习(一)docker-compose 运行
为了方便学习以及使用netflix conductor 基于官方的dockerfile,构建了server 以及ui 的容器镜像并push dockerhub 环境准备 官方docker-compos ...
- CentOS7安装OpenStack(Rocky版)-04.安装Nova计算服务(控制节点)
上一篇文章分享了glance镜像服务的安装配置,本文主要分享openstack的计算服务Nova的安装和配制方法 ------------------ 完美的分割线 ----------------- ...
- conductor编译镜像
# git clone https://github.com/Netflix/conductor.git # git checkout -b 2.0 remotes/origin/2.0 # cd s ...
- conductor Workflow Metrics
Server Metrics conductor使用spectator收集指标.https://github.com/Netflix/spectator 名称 目的 标签 workflow_serve ...
- conductor 系统任务
动态任务: 参数: dynamicTaskNameParam:来自任务输入的参数的名称,其值用于调度任务. 例如 如果参数的值为ABC,则调度的下一个任务类型为“ABC”. Example { &qu ...
- 最近帮客户实施的基于SQL Server AlwaysOn跨机房切换项目
最近帮客户实施的基于SQL Server AlwaysOn跨机房切换项目 最近一个来自重庆的客户找到走起君,客户的业务是做移动互联网支付,是微信支付收单渠道合作伙伴,数据库里存储的是支付流水和交易流水 ...
- SQL Server 大数据搬迁之文件组备份还原实战
一.本文所涉及的内容(Contents) 本文所涉及的内容(Contents) 背景(Contexts) 解决方案(Solution) 搬迁步骤(Procedure) 搬迁脚本(SQL Codes) ...
- Sql Server系列:分区表操作
1. 分区表简介 分区表在逻辑上是一个表,而物理上是多个表.从用户角度来看,分区表和普通表是一样的.使用分区表的主要目的是为改善大型表以及具有多个访问模式的表的可伸缩性和可管理性. 分区表是把数据按设 ...
随机推荐
- .NET : Func委托和Action委托
其实他们两个都是委托[代理]的简写形式. 一.[action<>]指定那些只有输入参数,没有返回值的委托 Delegate的代码: public delegate void myDeleg ...
- tomcat和servlet的关系
一.什么是servlet? 处理请求和发送响应的过程是由一种叫做Servlet的程序来完成的,并且Servlet是为了解决实现动态页面而衍生的东西.理解这个的前提是了解一些http协议的东西,并且知道 ...
- debian的pdf阅读器
www.foxitsoftware.cn下载deb包 或者 sudo apt-get install evince
- ios之gcd
看这里吧 http://www.jianshu.com/p/3a5a55e50e84
- 关于android setTextSize() 以及 px dip/dp sp的说明。。。。
Paint.setTextSize()单位为px,Android系统中,默认的单位是像素(px).也就是说,在没有明确说明的情况下,所有的大小设置都是以像素为单位.Paint.setTextSize传 ...
- bzoj1830 Y形项链
Description 小可可得到了一个可爱的Y型项链.小可可现在的项链是这个样子的:项链的最中间有一颗大珍珠作为结合点,从大珍珠上连出来3条由各种宝石串起来的链子.小可可希望让这3个链子完全一样,她 ...
- vs2017 编译JRTPLIB
一. JRTPLIB简介 RTP 是目前解决流媒体实时传输问题的最好办法,而JRTPLIB是一个用C++语言实现的RTP库,它完全遵循RFC 1889设计,目前已经可以运行在Windows.Linux ...
- 利用x-requested-with判断请求是否是Ajax请求
在服务器端判断request来自Ajax请求(异步)还是传统请求(同步): 两种请求在请求的Header不同,Ajax 异步请求比传统的同步请求多了一个头参数 1.传统同步请求参数 a ...
- 开发框架:IOE 架构
ylbtech-开发框架:IOE 架构 传统的IOE架构(IBM小型机.EMC存储设备.Oracle数据库). 1.返回顶部 2.返回顶部 3.返回顶部 4.返回顶部 5.返回顶部 ...
- 1019 General Palindromic Number (20 分)
1019 General Palindromic Number (20 分) A number that will be the same when it is written forwards or ...