百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 编程字典 > 正文

activiti用dubbo分布服务

toyiye 2024-06-21 12:17 9 浏览 0 评论

实现非常简单,难点在于dubbo调优。简单就是接口都是现成的,实现类还是现成的,所以你只需要配置就行了。

项目用的是SSM,如果不需要或者不一样 注意下面的pom配置文件。

dubbo.xml

<?xml version="1.0" encoding="UTF-8"?>

<!-- Copyright 1999-2011 Alibaba Group. -->

<beans xmlns="http://www.springframework.org/schema/beans"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context"

xmlns:dubbo="http://code.alibabatech.com/schema/dubbo"

xsi:schemaLocation="http://www.springframework.org/schema/beans

http://www.springframework.org/schema/beans/spring-beans.xsd

http://www.springframework.org/schema/context

http://www.springframework.org/schema/context/spring-context-2.5.xsd

http://code.alibabatech.com/schema/dubbo

http://code.alibabatech.com/schema/dubbo/dubbo.xsd

">

<!-- 提供方应用信息,用于计算依赖关系 -->

<dubbo:application name="activiti-provider" owner="nihoutao所有人"

organization="mayun你的组织名称" />

<!-- 注册中心暴露服务地址 -->

<dubbo:registry group="dubbo"

address="zookeeper://127.0.0.1:2181?client=zkclient" check="false" />

<!-- 用dubbo协议在20880端口暴露服务 -->

<dubbo:protocol name="dubbo" port="20880" />

<dubbo:provider dispatcher="all" timeout="50000"

threadpool="fixed" threads="500" accepts="1000" />

<!-- activiti对外开放的七大服务 -->

<dubbo:service interface="org.activiti.engine.RepositoryService" ref="repositoryService"/>

<dubbo:service interface="org.activiti.engine.RuntimeService" ref="runtimeService"/>

<dubbo:service interface="org.activiti.engine.FormService" ref="formService"/>

<dubbo:service interface="org.activiti.engine.IdentityService" ref="identityService"/>

<dubbo:service interface="org.activiti.engine.TaskService" ref="taskService"/>

<dubbo:service interface="org.activiti.engine.HistoryService" ref="historyService"/>

<dubbo:service interface="org.activiti.engine.ManagementService" ref="managementService"/>

<!-- ./activiti对外开放的七大服务 -->

<!-- 扫描注解包路径,多个包用逗号分隔,不填pacakge表示扫描当前ApplicationContext中所有的类 -->

<dubbo:annotation package="com.alibaba" />

我不建议扫包这种方式,因为后期还得配置好多,要么都得在类上声明,不方便啊。

</beans>

在类上注释的样子。

配置dubbo你可能遇到两个问题,一个就是小红叉问题:http://blog.csdn.net/jiao_zg/article/details/64439525

还有一个就是消费方找不到你的类,报出让你重新注册这个那个滴,这不是你配置的问题,是你的提供方和消费方的这个要用的类路径不一致。当然,你要是不用扫包,用引用的方式还有这个问题,那就可能是这个解决方式,也可能不是,多搜搜吧。

pom.xml

<properties>

<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>

<srping.version>4.3.10.RELEASE</srping.version>

<mybatis.version>3.2.8</mybatis.version>

<slf4j.version>1.7.25</slf4j.version>

<log4j.version>1.2.17</log4j.version>

<dubbo.version>2.5.5</dubbo.version>

<redis.version>2.5.5</redis.version>

<commons-dbcp.version>1.4</commons-dbcp.version>

<jackson.version>2.0.4</jackson.version>

<spymemcached.version>2.8.1</spymemcached.version>

<guava.version>17.0</guava.version>

<commons-lang3.version>3.3.2</commons-lang3.version>

<commons-io.version>2.4</commons-io.version>

<joda-time.version>2.1</joda-time.version>

<jetty.version>8.1.15.v20140411</jetty.version>

<mockito.version>1.9.0</mockito.version>

<powermock.version>1.4.12</powermock.version>

<activiti.version>5.22.0</activiti.version>

</properties>

<!-- 用到的jar包 -->

<dependencies>

<!-- https://mvnrepository.com/artifact/org.apache.shiro/shiro-spring -->

<!-- https://mvnrepository.com/artifact/org.apache.shiro/shiro-ehcache -->

<!-- dubbo -->

<dependency>

<groupId>com.alibaba</groupId>

<artifactId>dubbo</artifactId>

<version>${dubbo.version}</version>

</dependency>

<!-- https://mvnrepository.com/artifact/org.apache.zookeeper/zookeeper -->

<dependency>

<groupId>org.apache.zookeeper</groupId>

<artifactId>zookeeper</artifactId>

<version>3.4.9</version>

</dependency>

<!-- https://mvnrepository.com/artifact/com.101tec/zkclient -->

<dependency>

<groupId>com.101tec</groupId>

<artifactId>zkclient</artifactId>

<version>0.10</version>

</dependency>

<!-- redis -->

<dependency>

<groupId>redis.clients</groupId>

<artifactId>jedis</artifactId>

<version>2.9.0</version>

</dependency>

<!-- https://mvnrepository.com/artifact/org.springframework.data/spring-data-redis -->

<dependency>

<groupId>org.springframework.data</groupId>

<artifactId>spring-data-redis</artifactId>

<version>1.8.7.RELEASE</version>

</dependency>

<!-- https://mvnrepository.com/artifact/com.alibaba/druid -->

<dependency>

<groupId>com.alibaba</groupId>

<artifactId>druid</artifactId>

<version>1.1.3</version>

</dependency>

<!-- quartz -->

<dependency>

<groupId>org.quartz-scheduler</groupId>

<artifactId>quartz</artifactId>

<version>2.3.0</version>

</dependency>

<!-- https://mvnrepository.com/artifact/org.hibernate/hibernate-validator -->

<dependency>

<groupId>org.hibernate</groupId>

<artifactId>hibernate-validator</artifactId>

<version>5.2.0.Final</version>

</dependency>

<!-- activit demo 复制得到 -->

<!-- actvititi -->

<dependency>

<groupId>com.fasterxml.jackson.core</groupId>

<artifactId>jackson-databind</artifactId>

<version>2.5.4</version>

</dependency>

<dependency>

<groupId>org.activiti</groupId>

<artifactId>activiti-engine</artifactId>

<version>${activiti.version}</version>

</dependency>

<dependency>

<groupId>org.activiti</groupId>

<artifactId>activiti-spring</artifactId>

<version>${activiti.version}</version>

</dependency>

<dependency>

<groupId>org.activiti</groupId>

<artifactId>activiti-json-converter</artifactId>

<version>${activiti.version}</version>

</dependency>

<dependency>

<groupId>org.activiti</groupId>

<artifactId>activiti-explorer</artifactId>

<version>${activiti.version}</version>

<exclusions>

<exclusion>

<artifactId>vaadin</artifactId>

<groupId>com.vaadin</groupId>

</exclusion>

<exclusion>

<artifactId>dcharts-widget</artifactId>

<groupId>org.vaadin.addons</groupId>

</exclusion>

<exclusion>

<artifactId>activiti-simple-workflow</artifactId>

<groupId>org.activiti</groupId>

</exclusion>

</exclusions>

</dependency>

<dependency>

<groupId>org.activiti</groupId>

<artifactId>activiti-modeler</artifactId>

<version>${activiti.version}</version>

</dependency>

<dependency>

<groupId>org.activiti</groupId>

<artifactId>activiti-rest</artifactId>

<version>${activiti.version}</version>

</dependency>

<dependency>

<groupId>org.activiti</groupId>

<artifactId>activiti-diagram-rest</artifactId>

<version>${activiti.version}</version>

</dependency>

<dependency>

<groupId>org.activiti</groupId>

<artifactId>activiti-cxf</artifactId>

<version>${activiti.version}</version>

</dependency>

<!-- cxf的http支持 -->

<dependency>

<groupId>org.apache.cxf</groupId>

<artifactId>cxf-api</artifactId>

<version>2.7.6</version>

</dependency>

<dependency>

<groupId>org.apache.cxf</groupId>

<artifactId>cxf-rt-frontend-jaxws</artifactId>

<version>2.7.6</version>

</dependency>

<dependency>

<groupId>org.apache.cxf</groupId>

<artifactId>cxf-rt-transports-http-jetty</artifactId>

<version>2.7.6</version>

<scope>test</scope>

</dependency>

<dependency>

<groupId>org.apache.cxf</groupId>

<artifactId>cxf-rt-transports-http</artifactId>

<version>2.7.6</version>

</dependency>

<dependency>

<groupId>com.sun.xml.bind</groupId>

<artifactId>jaxb-impl</artifactId>

<version>2.2.11</version>

</dependency>

<!-- 支持activiti缓存 -->

<dependency>

<groupId>org.infinispan</groupId>

<artifactId>infinispan-core</artifactId>

<version>5.1.7.Final</version>

</dependency>

<dependency>

<groupId>org.aspectj</groupId>

<artifactId>aspectjrt</artifactId>

<version>1.6.9</version>

</dependency>

<dependency>

<groupId>org.aspectj</groupId>

<artifactId>aspectjweaver</artifactId>

<version>1.6.9</version>

</dependency>

<dependency>

<groupId>cglib</groupId>

<artifactId>cglib</artifactId>

<version>2.2.2</version>

</dependency>

<dependency>

<groupId>asm</groupId>

<artifactId>asm</artifactId>

<version>3.3.1</version>

</dependency>

<!-- SPRING end -->

<!-- PERSISTENCE begin -->

<dependency>

<groupId>org.springframework</groupId>

<artifactId>spring-orm</artifactId>

<version>${spring.version}</version>

</dependency>

<dependency>

<groupId>org.springframework</groupId>

<artifactId>spring-jdbc</artifactId>

<version>${spring.version}</version>

</dependency>

<!-- dbcp connection pool -->

<dependency>

<groupId>org.apache.commons</groupId>

<artifactId>commons-dbcp2</artifactId>

<version>2.0.1</version>

</dependency>

<!-- PERSISTENCE end -->

<!-- WEB begin -->

<dependency>

<groupId>org.springframework</groupId>

<artifactId>spring-web</artifactId>

<version>${spring.version}</version>

</dependency>

<dependency>

<groupId>org.springframework</groupId>

<artifactId>spring-webmvc</artifactId>

<version>${spring.version}</version>

</dependency>

<dependency>

<groupId>javax.servlet</groupId>

<artifactId>jstl</artifactId>

<version>1.2</version>

</dependency>

<dependency>

<groupId>javax.servlet</groupId>

<artifactId>javax.servlet-api</artifactId>

<version>3.1.0</version>

<scope>provided</scope>

</dependency>

<!-- WEB end -->

<!-- LOGGING begin -->

<dependency>

<groupId>org.slf4j</groupId>

<artifactId>slf4j-api</artifactId>

<version>${slf4j.version}</version>

</dependency>

<!-- activiti 日志调整到项目日志中 -->

<dependency>

<groupId>org.slf4j</groupId>

<artifactId>slf4j-log4j12</artifactId>

<version>${slf4j.version}</version>

</dependency>

<dependency>

<groupId>org.slf4j</groupId>

<artifactId>jcl-over-slf4j</artifactId>

<version>${slf4j.version}</version>

</dependency>

<dependency>

<groupId>log4j</groupId>

<artifactId>log4j</artifactId>

<version>${log4j.version}</version>

</dependency>

<!-- LOGGING end -->

<!-- GENERAL UTILS begin -->

<dependency>

<groupId>org.apache.commons</groupId>

<artifactId>commons-lang3</artifactId>

<version>${commons-lang3.version}</version>

</dependency>

<dependency>

<groupId>commons-beanutils</groupId>

<artifactId>commons-beanutils</artifactId>

<version>1.8.3</version>

<exclusions>

<exclusion>

<groupId>commons-logging</groupId>

<artifactId>commons-logging</artifactId>

</exclusion>

</exclusions>

</dependency>

<dependency>

<groupId>com.google.guava</groupId>

<artifactId>guava</artifactId>

<version>${guava.version}</version>

</dependency>

<dependency>

<groupId>org.jodd</groupId>

<artifactId>jodd</artifactId>

<version>3.3.2</version>

</dependency>

<dependency>

<groupId>joda-time</groupId>

<artifactId>joda-time</artifactId>

<version>${joda-time.version}</version>

</dependency>

<!-- UUID -->

<dependency>

<groupId>com.fasterxml.uuid</groupId>

<artifactId>java-uuid-generator</artifactId>

<version>3.1.3</version>

</dependency>

<!-- GENERAL UTILS end -->

<!-- activit demo 复制得到 -->

<!-- 单元测试 -->

<dependency>

<groupId>junit</groupId>

<artifactId>junit</artifactId>

<version>4.11</version>

<!-- 表示开发的时候引入,发布的时候不会加载此包 -->

<scope>test</scope>

</dependency>

<!-- java ee包 -->

<dependency>

<groupId>javax</groupId>

<artifactId>javaee-api</artifactId>

<version>7.0</version>

</dependency>

<!-- spring框架包 start -->

<dependency>

<groupId>org.springframework</groupId>

<artifactId>spring-test</artifactId>

<version>${srping.version}</version>

</dependency>

<dependency>

<groupId>org.springframework</groupId>

<artifactId>spring-core</artifactId>

<version>${srping.version}</version>

</dependency>

<dependency>

<groupId>org.springframework</groupId>

<artifactId>spring-oxm</artifactId>

<version>${srping.version}</version>

</dependency>

<dependency>

<groupId>org.springframework</groupId>

<artifactId>spring-tx</artifactId>

<version>${srping.version}</version>

</dependency>

<dependency>

<groupId>org.springframework</groupId>

<artifactId>spring-jdbc</artifactId>

<version>${srping.version}</version>

</dependency>

<dependency>

<groupId>org.springframework</groupId>

<artifactId>spring-aop</artifactId>

<version>${srping.version}</version>

</dependency>

<dependency>

<groupId>org.springframework</groupId>

<artifactId>spring-context</artifactId>

<version>${srping.version}</version>

</dependency>

<dependency>

<groupId>org.springframework</groupId>

<artifactId>spring-context-support</artifactId>

<version>${srping.version}</version>

</dependency>

<dependency>

<groupId>org.springframework</groupId>

<artifactId>spring-expression</artifactId>

<version>${srping.version}</version>

</dependency>

<dependency>

<groupId>org.springframework</groupId>

<artifactId>spring-orm</artifactId>

<version>${srping.version}</version>

</dependency>

<dependency>

<groupId>org.springframework</groupId>

<artifactId>spring-web</artifactId>

<version>${srping.version}</version>

</dependency>

<dependency>

<groupId>org.springframework</groupId>

<artifactId>spring-webmvc</artifactId>

<version>${srping.version}</version>

</dependency>

<!-- spring框架包 end -->

<!-- mybatis框架包 start -->

<dependency>

<groupId>org.mybatis</groupId>

<artifactId>mybatis</artifactId>

<version>${mybatis.version}</version>

</dependency>

<dependency>

<groupId>org.mybatis</groupId>

<artifactId>mybatis-spring</artifactId>

<version>1.2.2</version>

</dependency>

<!-- mybatis框架包 end -->

<!-- 数据库驱动 -->

<dependency>

<groupId>mysql</groupId>

<artifactId>mysql-connector-java</artifactId>

<version>5.1.35</version>

</dependency>

<!-- 导入dbcp的jar包,用来在applicationContext.xml中配置数据库 -->

<dependency>

<groupId>commons-dbcp</groupId>

<artifactId>commons-dbcp</artifactId>

<version>1.4</version>

</dependency>

<!-- jstl标签类 -->

<dependency>

<groupId>jstl</groupId>

<artifactId>jstl</artifactId>

<version>1.2</version>

</dependency>

<!-- log start -->

<dependency>

<groupId>log4j</groupId>

<artifactId>log4j</artifactId>

<version>${log4j.version}</version>

</dependency>

<dependency>

<groupId>org.slf4j</groupId>

<artifactId>slf4j-api</artifactId>

<version>${slf4j.version}</version>

</dependency>

<dependency>

<groupId>org.slf4j</groupId>

<artifactId>slf4j-log4j12</artifactId>

<version>${slf4j.version}</version>

</dependency>

<!-- log END -->

<!-- Json -->

<!-- 格式化对象,方便输出日志 -->

<dependency>

<groupId>com.alibaba</groupId>

<artifactId>fastjson</artifactId>

<version>1.2.6</version>

</dependency>

<dependency>

<groupId>org.codehaus.jackson</groupId>

<artifactId>jackson-mapper-asl</artifactId>

<version>1.9.13</version>

</dependency>

<!-- 上传组件包 start -->

<dependency>

<groupId>commons-fileupload</groupId>

<artifactId>commons-fileupload</artifactId>

<version>1.3.1</version>

</dependency>

<dependency>

<groupId>commons-io</groupId>

<artifactId>commons-io</artifactId>

<version>2.4</version>

</dependency>

<dependency>

<groupId>commons-codec</groupId>

<artifactId>commons-codec</artifactId>

<version>1.10</version>

</dependency>

<!-- 上传组件包 end -->

</dependencies>

部署的可视化监控 在jar包中的dubbo-admin文件中 直接部署就行

相关推荐

为何越来越多的编程语言使用JSON(为什么编程)

JSON是JavascriptObjectNotation的缩写,意思是Javascript对象表示法,是一种易于人类阅读和对编程友好的文本数据传递方法,是JavaScript语言规范定义的一个子...

何时在数据库中使用 JSON(数据库用json格式存储)

在本文中,您将了解何时应考虑将JSON数据类型添加到表中以及何时应避免使用它们。每天?分享?最新?软件?开发?,Devops,敏捷?,测试?以及?项目?管理?最新?,最热门?的?文章?,每天?花?...

MySQL 从零开始:05 数据类型(mysql数据类型有哪些,并举例)

前面的讲解中已经接触到了表的创建,表的创建是对字段的声明,比如:上述语句声明了字段的名称、类型、所占空间、默认值和是否可以为空等信息。其中的int、varchar、char和decimal都...

JSON对象花样进阶(json格式对象)

一、引言在现代Web开发中,JSON(JavaScriptObjectNotation)已经成为数据交换的标准格式。无论是从前端向后端发送数据,还是从后端接收数据,JSON都是不可或缺的一部分。...

深入理解 JSON 和 Form-data(json和formdata提交区别)

在讨论现代网络开发与API设计的语境下,理解客户端和服务器间如何有效且可靠地交换数据变得尤为关键。这里,特别值得关注的是两种主流数据格式:...

JSON 语法(json 语法 priority)

JSON语法是JavaScript语法的子集。JSON语法规则JSON语法是JavaScript对象表示法语法的子集。数据在名称/值对中数据由逗号分隔花括号保存对象方括号保存数组JS...

JSON语法详解(json的语法规则)

JSON语法规则JSON语法是JavaScript对象表示法语法的子集。数据在名称/值对中数据由逗号分隔大括号保存对象中括号保存数组注意:json的key是字符串,且必须是双引号,不能是单引号...

MySQL JSON数据类型操作(mysql的json)

概述mysql自5.7.8版本开始,就支持了json结构的数据存储和查询,这表明了mysql也在不断的学习和增加nosql数据库的有点。但mysql毕竟是关系型数据库,在处理json这种非结构化的数据...

JSON的数据模式(json数据格式示例)

像XML模式一样,JSON数据格式也有Schema,这是一个基于JSON格式的规范。JSON模式也以JSON格式编写。它用于验证JSON数据。JSON模式示例以下代码显示了基本的JSON模式。{"...

前端学习——JSON格式详解(后端json格式)

JSON(JavaScriptObjectNotation)是一种轻量级的数据交换格式。易于人阅读和编写。同时也易于机器解析和生成。它基于JavaScriptProgrammingLa...

什么是 JSON:详解 JSON 及其优势(什么叫json)

现在程序员还有谁不知道JSON吗?无论对于前端还是后端,JSON都是一种常见的数据格式。那么JSON到底是什么呢?JSON的定义...

PostgreSQL JSON 类型:处理结构化数据

PostgreSQL提供JSON类型,以存储结构化数据。JSON是一种开放的数据格式,可用于存储各种类型的值。什么是JSON类型?JSON类型表示JSON(JavaScriptO...

JavaScript:JSON、三种包装类(javascript 包)

JOSN:我们希望可以将一个对象在不同的语言中进行传递,以达到通信的目的,最佳方式就是将一个对象转换为字符串的形式JSON(JavaScriptObjectNotation)-JS的对象表示法...

Python数据分析 只要1分钟 教你玩转JSON 全程干货

Json简介:Json,全名JavaScriptObjectNotation,JSON(JavaScriptObjectNotation(记号、标记))是一种轻量级的数据交换格式。它基于J...

比较一下JSON与XML两种数据格式?(json和xml哪个好)

JSON(JavaScriptObjectNotation)和XML(eXtensibleMarkupLanguage)是在日常开发中比较常用的两种数据格式,它们主要的作用就是用来进行数据的传...

取消回复欢迎 发表评论:

请填写验证码