You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@servicecomb.apache.org by GitBox <gi...@apache.org> on 2018/03/09 12:17:39 UTC

[GitHub] WillemJiang closed pull request #147: SCB-330 add guides to run executable alpha server

WillemJiang closed pull request #147: SCB-330 add guides to run executable alpha server
URL: https://github.com/apache/incubator-servicecomb-saga/pull/147
 
 
   

This is a PR merged from a forked repository.
As GitHub hides the original diff on merge, it is displayed below for
the sake of provenance:

As this is a foreign pull request (from a fork), the diff is supplied
below (as it won't show otherwise due to GitHub magic):

diff --git a/alpha/alpha-server/src/main/java/org/apache/servicecomb/saga/alpha/server/SpringTxTimeoutRepository.java b/alpha/alpha-server/src/main/java/org/apache/servicecomb/saga/alpha/server/SpringTxTimeoutRepository.java
index ee754969..71951393 100644
--- a/alpha/alpha-server/src/main/java/org/apache/servicecomb/saga/alpha/server/SpringTxTimeoutRepository.java
+++ b/alpha/alpha-server/src/main/java/org/apache/servicecomb/saga/alpha/server/SpringTxTimeoutRepository.java
@@ -19,15 +19,19 @@
 
 import static org.apache.servicecomb.saga.alpha.core.TaskStatus.PENDING;
 
+import java.lang.invoke.MethodHandles;
 import java.util.List;
 
 import javax.transaction.Transactional;
 
 import org.apache.servicecomb.saga.alpha.core.TxTimeout;
 import org.apache.servicecomb.saga.alpha.core.TxTimeoutRepository;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.data.domain.PageRequest;
 
 public class SpringTxTimeoutRepository implements TxTimeoutRepository {
+  private static final Logger log = LoggerFactory.getLogger(MethodHandles.lookup().lookupClass());
   private final TxTimeoutEntityRepository timeoutRepo;
 
   SpringTxTimeoutRepository(TxTimeoutEntityRepository timeoutRepo) {
@@ -36,7 +40,11 @@
 
   @Override
   public void save(TxTimeout timeout) {
-    timeoutRepo.save(timeout);
+    try {
+      timeoutRepo.save(timeout);
+    } catch (Exception ignored) {
+      log.warn("Failed to save some timeout {}", timeout);
+    }
   }
 
   @Override
diff --git a/docs/faq/cn/how_to_use_mysql_as_alpha_backend_database.md b/docs/faq/cn/how_to_use_mysql_as_alpha_backend_database.md
index 891a1244..f241b36f 100644
--- a/docs/faq/cn/how_to_use_mysql_as_alpha_backend_database.md
+++ b/docs/faq/cn/how_to_use_mysql_as_alpha_backend_database.md
@@ -8,5 +8,27 @@
          <artifactId>mysql-connector-java</artifactId>
        </dependency>
    ```
+
+2. ??Saga
+   ```bash
+   mvn clean install -Pdocker -DskipTests
+   ```
+   ??????????????alpha-server?????????`alpha/alpha-server/target/saga/alpha-server-${version}-exec.jar`?
+   **??**: ???????docker????????`mvn clean install -DskipTests`???
+   **??**: ?????????alpha-server?docker?????????????????
    
-2. ?alpha???????`-Dspring.profiles.active=mysql`???????mysql??????
+3. ??MySQL
+   ```bash
+   docker run -d -e "MYSQL_ROOT_PASSWORD=password" "-e "MYSQL_DATABASE=saga" -e "MYSQL_USER=saga" -e "MYSQL_PASSWORD=password" -p 3306:3306 mysql/mysql-server:5.7
+   ```
+
+4. ??alpha????MySQL?????????alpha??????docker??????????
+   * ??docker
+      ```bash
+      docker run -d -p 8090:8090 -e "JAVA_OPTS=-Dspring.profiles.active=mysql -Dspring.datasource.url=jdbc:mysql://${host_address}:3306/saga?useSSL=false" alpha-server:${saga_version}
+      ```
+   * ???????
+      ```bash
+      java -Dspring.profiles.active=mysql -D"spring.datasource.url=jdbc:mysql://${host_address}:3306/saga?useSSL=false" -jar alpha-server-${saga_version}-exec.jar
+      ```
+   **??**: ????????`${saga_version}`?`${host_address}`???????
diff --git a/docs/faq/en/how_to_use_mysql_as_alpha_backend_database.md b/docs/faq/en/how_to_use_mysql_as_alpha_backend_database.md
index adb44e27..2bb2954d 100644
--- a/docs/faq/en/how_to_use_mysql_as_alpha_backend_database.md
+++ b/docs/faq/en/how_to_use_mysql_as_alpha_backend_database.md
@@ -8,5 +8,27 @@
          <artifactId>mysql-connector-java</artifactId>
        </dependency>
    ```
-   
-2. activate mysql profile by specifying option `-Dspring.profiles.active=mysql` when booting alpha.
\ No newline at end of file
+
+2. install Saga
+   ```bash
+   mvn clean install -Pdocker -DskipTests
+   ```
+   After that, you will find the generated docker image `alpha-server` and executable file `alpha/alpha-server/target/saga/alpha-server-${version}-exec.jar`.
+   **Notice**: If you do not want to build the docker image, run `mvn clean install -DskipTests` is enough.
+   **Notice**: If you have installed saga with docker before, you need to remove the alpha-server's docker image first.
+
+3. run MySQL
+   ```bash
+   docker run -d -e "MYSQL_ROOT_PASSWORD=password" "-e "MYSQL_DATABASE=saga" -e "MYSQL_USER=saga" -e "MYSQL_PASSWORD=password" -p 3306:3306 mysql/mysql-server:5.7
+   ```
+
+4. Run alpha. Please make sure MySQL is up before this step. You can run alpha through docker or executable file.
+   * via docker
+      ```bash
+      docker run -d -p 8090:8090 -e "JAVA_OPTS=-Dspring.profiles.active=mysql -Dspring.datasource.url=jdbc:mysql://${host_address}:3306/saga?useSSL=false" alpha-server:${saga_version}
+      ```
+   * via executable file
+      ```bash
+      java -Dspring.profiles.active=mysql -D"spring.datasource.url=jdbc:mysql://${host_address}:3306/saga?useSSL=false" -jar alpha-server-${saga_version}-exec.jar
+      ```
+   **Notice**: Please change `${saga_version}` and `${host_address}` to the actual value before you execute the command.
\ No newline at end of file
diff --git a/docs/user_guide.md b/docs/user_guide.md
index a0d9db5d..62eadc7b 100644
--- a/docs/user_guide.md
+++ b/docs/user_guide.md
@@ -25,14 +25,15 @@ $ mvn clean install -DskipTests -Pdocker
     <dependency>
       <groupId>org.apache.servicecomb.saga</groupId>
       <artifactId>omega-spring-starter</artifactId>
-      <version>0.0.3-SNAPSHOT</version>
+      <version>${saga.version}</version>
     </dependency>
     <dependency>
       <groupId>org.apache.servicecomb.saga</groupId>
       <artifactId>omega-transport-resttemplate</artifactId>
-      <version>0.0.3-SNAPSHOT</version>
+      <version>${saga.version}</version>
     </dependency>
 ```
+**Note**: Please change the `${saga.version}` to the actual version.
 
 ### Add saga annotations and corresponding compensation methods
 Take a transfer money application as an example:
@@ -80,13 +81,16 @@ Take a transfer money application as an example:
    docker run -d -e "POSTGRES_DB=saga" -e "POSTGRES_USER=saga" -e "POSTGRES_PASSWORD=password" -p 5432:5432 postgres
    ```
 
-2. run alpha. Before running alpha, please make sure postgreSQL is already up.
-   ```bash
-   docker run -d -p 8090:8090 \
-     -e "JAVA_OPTS=-Dspring.profiles.active=prd" \
-     -e "spring.datasource.url=jdbc:postgresql://{docker.host.address}:5432/saga?useSSL=false" \
-     alpha-server:0.0.3-SNAPSHOT
-   ```
+2. run alpha. Before running alpha, please make sure postgreSQL is already up. You can run alpha through docker or executable file.
+   * Run alpha through docker.
+      ```bash
+      docker run -d -p 8090:8090 -e "JAVA_OPTS=-Dspring.profiles.active=prd -Dspring.datasource.url=jdbc:postgresql://${host_address}:5432/saga?useSSL=false" alpha-server:${saga_version}
+      ```
+   * Run alpha through executable file.
+      ```bash
+      java -Dspring.profiles.active=prd -D"spring.datasource.url=jdbc:postgresql://${host_address}:5432/saga?useSSL=false" -jar alpha-server-${saga_version}-exec.jar
+      ```
+   **Note**: Please change `${saga_version}` and `${host_address}` to the actual value before you execute the command.
 
 3. setup omega. Configure the following values in `application.yaml`.
    ```yaml
@@ -98,4 +102,4 @@ Take a transfer money application as an example:
        address: {alpha.cluster.addresses}
    ```
 
-Then you can start your micro-services.
+Then you can start your micro-services and access all saga events via http://${alpha-server:port}/events.
diff --git a/docs/user_guide_zh.md b/docs/user_guide_zh.md
index 6b8ce473..befc97c7 100644
--- a/docs/user_guide_zh.md
+++ b/docs/user_guide_zh.md
@@ -24,14 +24,15 @@ $ mvn clean install -DskipTests -Pdocker
     <dependency>
       <groupId>org.apache.servicecomb.saga</groupId>
       <artifactId>omega-spring-starter</artifactId>
-      <version>0.0.3-SNAPSHOT</version>
+      <version>${saga.version}</version>
     </dependency>
     <dependency>
       <groupId>org.apache.servicecomb.saga</groupId>
       <artifactId>omega-transport-resttemplate</artifactId>
-      <version>0.0.3-SNAPSHOT</version>
+      <version>${saga.version}</version>
     </dependency>
 ```
+**??**: ??`${saga.version}`??????????
 
 ### ??Saga???????????
 ??????????
@@ -79,13 +80,16 @@ $ mvn clean install -DskipTests -Pdocker
    docker run -d -e "POSTGRES_DB=saga" -e "POSTGRES_USER=saga" -e "POSTGRES_PASSWORD=password" -p 5432:5432 postgres
    ```
 
-2. ??alpha????alpha?????postgreSQL??????
-   ```bash
-   docker run -d -p 8090:8090 \
-     -e "JAVA_OPTS=-Dspring.profiles.active=prd" \
-     -e "spring.datasource.url=jdbc:postgresql://{docker.host.address}:5432/saga?useSSL=false" \
-     alpha-server:0.0.3-SNAPSHOT
-   ```
+2. ??alpha????alpha?????postgreSQL?????????docker????????????alpha?
+   * ??docker???
+      ```bash
+      docker run -d -p 8090:8090 -e "JAVA_OPTS=-Dspring.profiles.active=prd -Dspring.datasource.url=jdbc:postgresql://${host_address}:5432/saga?useSSL=false" alpha-server:${saga_version}
+      ```
+   * ??????????
+      ```bash
+      java -Dspring.profiles.active=prd -D"spring.datasource.url=jdbc:postgresql://${host_address}:5432/saga?useSSL=false" -jar alpha-server-${saga_version}-exec.jar
+      ```
+   **??**: ????????`${saga_version}`?`${host_address}`???????
 
 3. ??omega?? `application.yaml` ?????????
    ```yaml
@@ -97,4 +101,4 @@ $ mvn clean install -DskipTests -Pdocker
        address: {alpha.cluster.addresses}
    ```
 
-???????????????
+????????????????????http://${alpha-server:port}/events ??????saga?????


 

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services