@@ -1,6 +1,6 @@
|
||||
# jigsaw-payment
|
||||
# 关于Jigsaw Payment
|
||||
|
||||
jigsaw payment 支付系统,面向互联网商户提供的支付系统。 支付系统几乎是互联网应用必不可少的模块,也是各个互联网应用中少数可以标准化的系统。
|
||||
Jigsaw Payment 是一个面向互联网商户的开源支付系统。 支付系统几乎是互联网应用必不可少的基础设施,也是各个互联网应用中少数可以标准化的系统。
|
||||
本系统是基于[凤凰牌老熊的系列文章](http://blog.lixf.cn) 而设计的,采用微服务架构。
|
||||
|
||||
## 项目起源
|
||||
@@ -18,15 +18,13 @@ jigsaw payment 支付系统,面向互联网商户提供的支付系统。 支
|
||||
命名为Jigsaw(七巧板)的目的是让使用者可以像搭积木一样,易于定制、容易扩展。我们希望建立一个开源系统, 使用新的、成熟的微服务架构,合理引入新技术,
|
||||
以产品需求为主导,实现一个架构合理、代码优雅、易于使用的支付系统。
|
||||
|
||||
项目文档参见 http://jigsaw.lixf.cn。 这里仅是一个简单的入门介绍。
|
||||
项目文档参见 http://doc.jigsaw.lixf.cn。 这里仅是一个简单的入门介绍。
|
||||
|
||||
## 入门
|
||||
|
||||
- 关于支付的领域知识,请阅读[凤凰牌老熊的系列文章](http://blog.lixf.cn)
|
||||
- 关于微服务架构,请参考[Martin叔叔说微服务](https://martinfowler.com/articles/microservices.html)
|
||||
|
||||
|
||||
|
||||
## 构建
|
||||
|
||||
**系统默认输出日志到/var/log/jigsaw目录,请将这个目录设置owner为当前用户。 **
|
||||
@@ -36,30 +34,6 @@ jigsaw payment 支付系统,面向互联网商户提供的支付系统。 支
|
||||
mvn clean install
|
||||
```
|
||||
|
||||
## 模块列表
|
||||
|
||||
### jigsaw-thrift-protobuf
|
||||
|
||||
这是RPC引擎,使用Apache Thrift 作为容器, Google Protocol Buffer 作为输入输出。相对于dubbo、 纯Apache Thrift等RPC容器,优势在于:
|
||||
|
||||
1. 高性能,Apache Thrift是已知RPC容器中性能最好的。
|
||||
2. 传输效率高, Google Protocol Buffer 的压缩率相对Apache Thrift 的strut 结构 可以节省20% 空间。
|
||||
3. 可扩展性好,得益于Protobuf优越的兼容性设计,对接口参数进行调整时,对老接口仍然可以保持很好的兼容。
|
||||
|
||||
这个引擎是对Apache Thrift 的极简轻量级封装,可靠,易于使用。 和Spring 良好集成,易于开发。
|
||||
|
||||
### jigsaw-rpc-example-server
|
||||
|
||||
RPC引擎服务器端示例。 展示如何通过springframework的@Component标签来实现一个新的
|
||||
|
||||
### jigsaw-rpc-example-client
|
||||
|
||||
RPC引擎客户端示例,和jigsaw-rpc-example-server配合使用。
|
||||
|
||||
### jigsaw-rpc-schema
|
||||
|
||||
支付数据规范,使用Google Protocol Buffer格式来定义。
|
||||
|
||||
## 支持jigsaw payment 项目开发
|
||||
|
||||
### 如果您是开发人员
|
||||
@@ -69,7 +43,6 @@ RPC引擎客户端示例,和jigsaw-rpc-example-server配合使用。
|
||||
2. 有Java软件开发经验,熟悉Linux;
|
||||
3. (或)熟悉微服务系统的基础设施建设;
|
||||
我们特别期待您的加入。 请微信关注“凤凰牌老熊”的公众号并留言,在留言中说明现在所在的公司、从事的工作、每天可以投入的时间,以及期待从事的开发模块。
|
||||
从[这里了解现有模块列表](http://jigsaw.lixf.cn/dev/2017/10/07/github-2/)。
|
||||
|
||||
### 期待您的资金支持
|
||||
|
||||
|
||||
+112
@@ -0,0 +1,112 @@
|
||||
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<parent>
|
||||
<groupId>org.jigsaw.payment</groupId>
|
||||
<artifactId>jigsaw-framework</artifactId>
|
||||
<version>0.0.1-SNAPSHOT</version>
|
||||
<relativePath>..</relativePath>
|
||||
</parent>
|
||||
<artifactId>jigsaw-mysql-protobuf</artifactId>
|
||||
<packaging>jar</packaging>
|
||||
<properties>
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
<java.version>1.7</java.version>
|
||||
<protoc.path>protoc</protoc.path>
|
||||
<protobuf.version>3.3.1</protobuf.version>
|
||||
<protobuf-java-format.version>1.2</protobuf-java-format.version>
|
||||
<jackson.version>2.7.9</jackson.version>
|
||||
<idl.folder>${basedir}/src/main/resources</idl.folder>
|
||||
</properties>
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>mysql</groupId>
|
||||
<artifactId>mysql-connector-java</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.springframework</groupId>
|
||||
<artifactId>spring-context</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.springframework</groupId>
|
||||
<artifactId>spring-core</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.springframework</groupId>
|
||||
<artifactId>spring-jdbc</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.springframework</groupId>
|
||||
<artifactId>spring-tx</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.commons</groupId>
|
||||
<artifactId>commons-lang3</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>commons-beanutils</groupId>
|
||||
<artifactId>commons-beanutils</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.google.protobuf</groupId>
|
||||
<artifactId>protobuf-java</artifactId>
|
||||
<version>${protobuf.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.google.guava</groupId>
|
||||
<artifactId>guava</artifactId>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
<build>
|
||||
<finalName>${project.artifactId}</finalName>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-antrun-plugin</artifactId>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>generate-sources</id>
|
||||
<goals>
|
||||
<goal>run</goal>
|
||||
</goals>
|
||||
<phase>generate-sources</phase>
|
||||
<configuration>
|
||||
<tasks>
|
||||
<echo>Delete folder : ${basedir}/src/main/gen</echo>
|
||||
<delete dir="${basedir}/src/main/gen" quiet="true" />
|
||||
<echo>Create folder : ${basedir}/src/main/gen</echo>
|
||||
<mkdir dir="${basedir}/src/main/gen" />
|
||||
<echo>Compiling **/*.proto files...</echo>
|
||||
<apply executable="${protoc.path}">
|
||||
<arg value="--proto_path=${idl.folder}" />
|
||||
<arg value="--java_out=${basedir}/src/main/gen" />
|
||||
<fileset dir="${idl.folder}" includes="**/*.proto"
|
||||
excludes="google/protobuf/descriptor.proto" />
|
||||
</apply>
|
||||
</tasks>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.codehaus.mojo</groupId>
|
||||
<artifactId>build-helper-maven-plugin</artifactId>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>add-source</id>
|
||||
<phase>generate-sources</phase>
|
||||
<goals>
|
||||
<goal>add-source</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<sources>
|
||||
<source>src/main/gen</source>
|
||||
</sources>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
|
||||
</project>
|
||||
Regular → Executable
+1
-1
@@ -3,7 +3,7 @@
|
||||
xmlns="http://maven.apache.org/POM/4.0.0"
|
||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<parent>
|
||||
<artifactId>jigsaw-payment-parent</artifactId>
|
||||
<artifactId>jigsaw-framework</artifactId>
|
||||
<groupId>org.jigsaw.payment</groupId>
|
||||
<version>0.0.1-SNAPSHOT</version>
|
||||
<relativePath>..</relativePath>
|
||||
|
||||
+1
-1
@@ -3,7 +3,7 @@
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<parent>
|
||||
<groupId>org.jigsaw.payment</groupId>
|
||||
<artifactId>jigsaw-rpc</artifactId>
|
||||
<artifactId>jigsaw-framework</artifactId>
|
||||
<version>0.0.1-SNAPSHOT</version>
|
||||
<relativePath>..</relativePath>
|
||||
</parent>
|
||||
+1
-1
@@ -4,7 +4,7 @@
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<parent>
|
||||
<groupId>org.jigsaw.payment</groupId>
|
||||
<artifactId>jigsaw-rpc</artifactId>
|
||||
<artifactId>jigsaw-framework</artifactId>
|
||||
<version>0.0.1-SNAPSHOT</version>
|
||||
</parent>
|
||||
<artifactId>jigsaw-rpc-example-client</artifactId>
|
||||
+1
-1
@@ -4,7 +4,7 @@
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<parent>
|
||||
<groupId>org.jigsaw.payment</groupId>
|
||||
<artifactId>jigsaw-rpc</artifactId>
|
||||
<artifactId>jigsaw-framework</artifactId>
|
||||
<version>0.0.1-SNAPSHOT</version>
|
||||
</parent>
|
||||
<artifactId>jigsaw-rpc-example-server</artifactId>
|
||||
@@ -2,7 +2,7 @@
|
||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<parent>
|
||||
<groupId>org.jigsaw.payment</groupId>
|
||||
<artifactId>jigsaw-payment-parent</artifactId>
|
||||
<artifactId>jigsaw-framework</artifactId>
|
||||
<version>0.0.1-SNAPSHOT</version>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
||||
+1
-1
@@ -4,7 +4,7 @@
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<parent>
|
||||
<groupId>org.jigsaw.payment</groupId>
|
||||
<artifactId>jigsaw-rpc</artifactId>
|
||||
<artifactId>jigsaw-framework</artifactId>
|
||||
<version>0.0.1-SNAPSHOT</version>
|
||||
</parent>
|
||||
<artifactId>jigsaw-thrift-protobuf</artifactId>
|
||||
@@ -13,6 +13,11 @@
|
||||
<modules>
|
||||
<module>jigsaw-runtime-metrics</module>
|
||||
<module>jigsaw-payment-algorithm</module>
|
||||
<module>jigsaw-thrift-protobuf</module>
|
||||
<module>jigsaw-rpc-example-client</module>
|
||||
<module>jigsaw-rpc-example-server</module>
|
||||
<module>jigsaw-protobuf-format</module>
|
||||
<module>jigsaw-mysql-protobuf</module>
|
||||
</modules>
|
||||
|
||||
</project>
|
||||
|
||||
@@ -1,64 +0,0 @@
|
||||
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<parent>
|
||||
<groupId>org.jigsaw.payment</groupId>
|
||||
<artifactId>jigsaw-rpc</artifactId>
|
||||
<version>0.0.1-SNAPSHOT</version>
|
||||
<relativePath>..</relativePath>
|
||||
</parent>
|
||||
<artifactId>jigsaw-mysql-protobuf</artifactId>
|
||||
<packaging>jar</packaging>
|
||||
<properties>
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
<java.version>1.7</java.version>
|
||||
<protobuf.version>3.3.1</protobuf.version>
|
||||
<protobuf-java-format.version>1.2</protobuf-java-format.version>
|
||||
<jackson.version>2.7.9</jackson.version>
|
||||
</properties>
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>mysql</groupId>
|
||||
<artifactId>mysql-connector-java</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.springframework</groupId>
|
||||
<artifactId>spring-context</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.springframework</groupId>
|
||||
<artifactId>spring-core</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.springframework</groupId>
|
||||
<artifactId>spring-jdbc</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.springframework</groupId>
|
||||
<artifactId>spring-tx</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.commons</groupId>
|
||||
<artifactId>commons-lang3</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>commons-beanutils</groupId>
|
||||
<artifactId>commons-beanutils</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.google.protobuf</groupId>
|
||||
<artifactId>protobuf-java</artifactId>
|
||||
<version>${protobuf.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.google.guava</groupId>
|
||||
<artifactId>guava</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.jigsaw.payment</groupId>
|
||||
<artifactId>jigsaw-payment-schema</artifactId>
|
||||
<version>0.0.1-SNAPSHOT</version>
|
||||
</dependency>
|
||||
|
||||
</dependencies>
|
||||
</project>
|
||||
@@ -1,21 +0,0 @@
|
||||
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<parent>
|
||||
<groupId>org.jigsaw.payment</groupId>
|
||||
<artifactId>jigsaw-payment-parent</artifactId>
|
||||
<version>0.0.1-SNAPSHOT</version>
|
||||
<relativePath></relativePath>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<artifactId>jigsaw-rpc</artifactId>
|
||||
<packaging>pom</packaging>
|
||||
<name>Jigsaw RPC Server/Client </name>
|
||||
<modules>
|
||||
<module>jigsaw-thrift-protobuf</module>
|
||||
<module>jigsaw-rpc-example-server</module>
|
||||
<module>jigsaw-rpc-example-client</module>
|
||||
<module>jigsaw-protobuf-format</module>
|
||||
<module>jigsaw-mysql-protobuf</module>
|
||||
</modules>
|
||||
|
||||
</project>
|
||||
+2
-2
@@ -3,11 +3,11 @@
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<parent>
|
||||
<groupId>org.jigsaw.payment</groupId>
|
||||
<artifactId>jigsaw-payment</artifactId>
|
||||
<artifactId>jigsaw-service</artifactId>
|
||||
<version>0.0.1-SNAPSHOT</version>
|
||||
<relativePath>..</relativePath>
|
||||
</parent>
|
||||
<artifactId>jigsaw-payment-facade</artifactId>
|
||||
<artifactId>jigsaw-service-facade</artifactId>
|
||||
<packaging>jar</packaging>
|
||||
<url>https://github.com/jigsaw-projects/jigsaw-payment/jigsaw-payment-schema/</url>
|
||||
<properties>
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user