diff --git a/examples/quick_start/httpserver-gateway/httpservergateway.go b/examples/quick_start/httpserver-gateway/httpservergateway.go
deleted file mode 100644
index 0792c7a..0000000
--- a/examples/quick_start/httpserver-gateway/httpservergateway.go
+++ /dev/null
@@ -1,96 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package main
-
-import (
-	"fmt"
-	"io/ioutil"
-	"net/http"
-	"net/url"
-)
-
-func handlerGateway(w http.ResponseWriter, r *http.Request) {
-
-	queryInfo, err := url.ParseQuery(r.URL.RawQuery)
-	if err != nil {
-		fmt.Println("parse queryInfo wrong: ", queryInfo)
-		fmt.Fprintln(w, "parse queryInfo wrong")
-		return
-	}
-	fmt.Println("height:%s,weight:%s", queryInfo.Get("height"), queryInfo.Get("weight"))
-	strReqURL := "http://mersher-provider:4540/bmi?height=" + queryInfo.Get("height") + "&weight=" + queryInfo.Get("weight")
-	resp, err := http.Get(strReqURL)
-	if err != nil {
-		// handle error
-	}
-	defer resp.Body.Close()
-	body, err := ioutil.ReadAll(resp.Body)
-	if err != nil {
-		// handle error
-		fmt.Println("body err: ", body, err)
-		return
-	}
-	fmt.Println("body: " + string(body))
-	w.Header().Set("Content-Type", "application/json")
-	w.Header().Set("Access-Control-Allow-Origin", "*")
-	w.Write(body)
-
-}
-
-func handlerGateway2(w http.ResponseWriter, r *http.Request) {
-	queryInfo, err := url.ParseQuery(r.URL.RawQuery)
-	if err != nil {
-		fmt.Println("parse queryInfo wrong: ", queryInfo)
-		fmt.Fprintln(w, "parse queryInfo wrong")
-		return
-	}
-	fmt.Println("height:%s,weight:%s", queryInfo.Get("height"), queryInfo.Get("weight"))
-	strReqURL := "http://mersher-provider/bmi?height=" + queryInfo.Get("height") + "&weight=" + queryInfo.Get("weight")
-	//strReqURL := "http://mersher-ht-provider/bmi?height=" + queryInfo.Get("height") + "&weight=" + queryInfo.Get("weight")
-	//strReqURL := "http://mersher-ht-provider:4555/bmi?height=" + queryInfo.Get("height") + "&weight=" + queryInfo.Get("weight")
-	proxy, _ := url.Parse("http://127.0.0.1:30101") //将mesher设置为http代理
-	httpClient := http.Client{
-		Transport: &http.Transport{
-			Proxy: http.ProxyURL(proxy),
-		},
-	}
-	req, err := http.NewRequest(http.MethodGet, strReqURL, nil)
-	if err != nil {
-		fmt.Println("make req err: ", err)
-	}
-	resp, err := httpClient.Do(req)
-	if err != nil {
-		fmt.Println("Do err: ", resp, err)
-	}
-	defer resp.Body.Close()
-	body, err := ioutil.ReadAll(resp.Body)
-	if err != nil {
-		// handle error
-		fmt.Println("body err: ", body, err)
-		return
-	}
-	fmt.Println("body: " + string(body))
-	w.Header().Set("Content-Type", "application/json")
-	w.Header().Set("Access-Control-Allow-Origin", "*")
-	w.Write(body)
-}
-
-func main() {
-	http.HandleFunc("/bmi", handlerGateway2)
-	http.ListenAndServe("192.168.88.64:4538", nil)
-}
diff --git a/examples/quick_start/httpserver/httpserver.go b/examples/quick_start/httpserver/httpserver.go
deleted file mode 100644
index e8a0b45..0000000
--- a/examples/quick_start/httpserver/httpserver.go
+++ /dev/null
@@ -1,87 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package main
-
-import (
-	"encoding/json"
-	"fmt"
-	"net/http"
-	"net/url"
-	"strconv"
-	"strings"
-	"time"
-)
-
-type resultInfo struct {
-	Result     float64 `json:"result"`
-	InstanceId string  `json:"instanceId"`
-	CallTime   string  `json:"callTime"`
-}
-
-func handlerCalculator(w http.ResponseWriter, r *http.Request) {
-	fmt.Println("HandlerCalculator1 begin")
-	queryInfo, err := url.ParseQuery(r.URL.RawQuery)
-	if err != nil {
-		fmt.Println("parse queryInfo wrong: ", queryInfo)
-		fmt.Fprintln(w, "parse queryInfo wrong")
-		return
-	}
-	fmt.Println("height:%s,weight:%s", queryInfo.Get("height"), queryInfo.Get("weight"))
-	ddwHeight, err := strconv.ParseFloat(queryInfo.Get("height"), 64)
-	if err != nil {
-		fmt.Println("para height wrong: %s", queryInfo.Get("height"))
-		fmt.Fprintln(w, "para height wrong")
-	}
-	if ddwHeight <= 0 {
-		time.Sleep(10 * time.Second)
-		panic("err input height: ")
-	}
-	ddwHeight /= 100
-	ddwWeight, err := strconv.ParseFloat(queryInfo.Get("weight"), 64)
-	if err != nil {
-		fmt.Println("para height wrong: %s", queryInfo.Get("weight"))
-		fmt.Fprintln(w, "para height wrong")
-	}
-	if ddwWeight <= 0 {
-		time.Sleep(10 * time.Second)
-		panic("err input weight: ")
-	}
-	ddwBmi := ddwWeight / (ddwHeight * ddwHeight)
-	fmt.Println("bmi:", ddwBmi)
-	var result resultInfo
-	result.Result, _ = strconv.ParseFloat(fmt.Sprintf("%.1f", ddwBmi), 64)
-	strTime := time.Now().Format("2006-01-02 15:04:05")
-	arrTime := strings.Split(strTime, " ")
-	result = resultInfo{result.Result, "goHttpServer", arrTime[1]}
-	bResult, err := json.Marshal(result)
-	if err != nil {
-		fmt.Println("result err ", result, string(bResult), err)
-		http.Error(w, err.Error(), http.StatusInternalServerError)
-		return
-	}
-	fmt.Println("result ", result, string(bResult))
-	w.Header().Set("Content-Type", "application/json")
-	w.Header().Set("Access-Control-Allow-Origin", "*")
-	w.Write(bResult)
-
-}
-
-func main() {
-	http.HandleFunc("/bmi", handlerCalculator)
-	http.ListenAndServe("127.0.0.1:4537", nil)
-}
diff --git a/examples/quick_start/httpserver_py/http_server.py b/examples/quick_start/httpserver_calculator/httpserver_calculator.py
similarity index 94%
rename from examples/quick_start/httpserver_py/http_server.py
rename to examples/quick_start/httpserver_calculator/httpserver_calculator.py
index 8038a61..ceb936c 100644
--- a/examples/quick_start/httpserver_py/http_server.py
+++ b/examples/quick_start/httpserver_calculator/httpserver_calculator.py
@@ -47,6 +47,10 @@
             return
         dwHeight = float(arrHeight[1])
         dwWeight = float(arrWeight[1])
+        if dwHeight < 0 or dwWeight < 0 :
+            time.sleep(6)
+            raise RuntimeError('para Error')
+            return 
         ddwBmi = Calculator(dwHeight, dwWeight)
         print "calculator result:" + str(ddwBmi)
         self.send_response(200)
diff --git a/examples/quick_start/httpserver_webapp/httpserver_webapp.js b/examples/quick_start/httpserver_webapp/httpserver_webapp.js
new file mode 100644
index 0000000..0d61cd3
--- /dev/null
+++ b/examples/quick_start/httpserver_webapp/httpserver_webapp.js
@@ -0,0 +1,61 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+ 
+const http = require("http");
+const fs = require("fs");
+const server = http.createServer();
+
+server.on("request", function(req, res) {
+  var arrPara = req.url.split("?")
+  console.log("arrPara : " + arrPara);
+  if (req.url == '/') {
+    res.setHeader('Content-Type', 'text/html; charset=utf-8')
+
+    fs.readFile("static/index.html", "utf-8", function(error, data) {
+      //  用error来判断文件是否读取成功
+      if (error) return console.log("err index.html : " + error.message);
+      console.log("index.html : " + data);
+      res.end(data)
+    });
+  } else if (arrPara[0] == '/calculator/bmi') {
+    var arrPara = req.url.split("?")
+    console.log("arrPara : " + arrPara);
+    if (arrPara.length != 2) {
+      res.end("para err : " + req.url);
+    }
+    var arrInfo = arrPara[1].split("&");
+    if (arrInfo.length != 2) {
+      res.end("para err : " + req.url)
+    }
+    var request = require("request");
+    request('http://calculator/bmi?' + arrPara[1], function(error, response, body) {
+      console.log(body);
+      if (!error && response.statusCode == 200) {
+        res.setHeader("Content-Type", "application/json")
+        res.setHeader("Access-Control-Allow-Origin", "*")
+        res.end(body);
+      };
+      if (error || response.statusCode != 200) {
+        res.end(body);
+      };
+    });
+  } else {
+    res.end("err url : " + req.url)
+  }
+});
+
+server.listen(4597);
diff --git a/examples/quick_start/webapp/index.html b/examples/quick_start/httpserver_webapp/static/index.html
similarity index 97%
rename from examples/quick_start/webapp/index.html
rename to examples/quick_start/httpserver_webapp/static/index.html
index c7681e8..faabdf7 100644
--- a/examples/quick_start/webapp/index.html
+++ b/examples/quick_start/httpserver_webapp/static/index.html
@@ -65,7 +65,7 @@
           return;
         }
         $.ajax({
-          url: "http://192.168.88.64:4538/bmi?height=" + $("#height").val() + "&weight=" + $("#weight").val(),
+          url: "/calculator/bmi?height=" + $("#height").val() + "&weight=" + $("#weight").val(),
           type: "GET",
           success: function (data) {
             $("#error").hide();
diff --git a/examples/quick_start/mersher-b/conf/auth.yaml b/examples/quick_start/mersher-b/conf/auth.yaml
deleted file mode 100644
index 56d7e02..0000000
--- a/examples/quick_start/mersher-b/conf/auth.yaml
+++ /dev/null
@@ -1,7 +0,0 @@
-## Huawei Public Cloud ak/sk
-cse:
-  credentials:
-    accessKey:
-    secretKey:
-    project:
-    akskCustomCipher: default #used to decrypt sk when it is encrypted
diff --git a/examples/quick_start/mersher-b/conf/egress.yaml b/examples/quick_start/mersher-b/conf/egress.yaml
deleted file mode 100644
index de36a85..0000000
--- a/examples/quick_start/mersher-b/conf/egress.yaml
+++ /dev/null
@@ -1,17 +0,0 @@
-#egress:
-#  infra: cse  # pilot or cse
-#  address: http://istio-pilot.istio-system:15010
-#egressRule:
-#  google-ext:
-#    - hosts:
-#        - "google.com"
-#        - "*.yahoo.com"
-#      ports:
-#        - port: 80
-#          protocol: HTTP
-#  facebook-ext:
-#    - hosts:
-#        - "www.facebook.com"
-#      ports:
-#        - port: 80
-#          protocol: HTTP
diff --git a/examples/quick_start/mersher-b/conf/fault.yaml b/examples/quick_start/mersher-b/conf/fault.yaml
deleted file mode 100644
index d55c9e7..0000000
--- a/examples/quick_start/mersher-b/conf/fault.yaml
+++ /dev/null
@@ -1,51 +0,0 @@
-#cse:
-#  governance:
-#    Consumer:
-#      _global: #最低优先级配置
-#        policy: #治理策略 包括fault，loadbalance，circuit breaker等等，目前只是新的fault加入，旧的治理可考虑慢慢增加支持
-#          fault: #
-#            protocols: # 向协议模块注入错误，考虑未来扩展多任意组件注入错误，所以这么设计
-#              rest:
-#                delay:
-#                  fixedDelay: 5
-#                  percent: 10
-#                abort:
-#                  httpStatus: 421
-#                  percent: 100
-#              highway:
-#                delay:
-#                  fixedDelay: 2
-#                  percent: 100
-#                abort:
-#                  percent: 30
-#      ms1:
-#        route: |
-#            - precedence: 2
-#              match:
-#                source: source.service
-#              traffic:
-#                - tags:
-#                    version: 1.0
-#                  weight: 90
-#                - tags:
-#                    version: 1.1
-#                  weight: 10
-#                  policy:
-#                    fault:
-#                    schemas:
-#                      sid1:
-#                        policy:
-#                          fault:
-#                        operations:
-#                          policy:
-#                            fault:
-#        policy: # 微服务名级别治理策略
-#          fault:
-#        schemas: #schema级别治理策略
-#          sid1:
-#            policy:
-#              fault:
-#            operations: #operation级别治理策略
-#              policy:
-#                fault:
-#    Provider: # format same as Consumer
\ No newline at end of file
diff --git a/examples/quick_start/mersher-b/conf/lager.yaml b/examples/quick_start/mersher-b/conf/lager.yaml
deleted file mode 100644
index 3788335..0000000
--- a/examples/quick_start/mersher-b/conf/lager.yaml
+++ /dev/null
@@ -1,23 +0,0 @@
----
-writers: file,stdout
-# LoggerLevel: |DEBUG|INFO|WARN|ERROR|FATAL
-logger_level: DEBUG
-
-# LoggerFile: used to output the name of log
-logger_file: log/mesher.log
-
-# LogFormatText: json/plaintext (such as log4j)，default to false
-# if set logger_file and log_format_text to true, turns out log4j format log
-log_format_text: false
-
-#rollingPolicy daily/size; defines rotate according to daily or size
-rollingPolicy: size
-
-# MaxDaily of a log file before rotate. By D Days.
-log_rotate_date: 1
-
-# MaxSize of a log file before rotate. By M Bytes.
-log_rotate_size: 10
-
-# Max counts to keep of a log's backup files.
-log_backup_count: 7
\ No newline at end of file
diff --git a/examples/quick_start/mersher-b/conf/mesher.yaml b/examples/quick_start/mersher-b/conf/mesher.yaml
deleted file mode 100644
index 024810c..0000000
--- a/examples/quick_start/mersher-b/conf/mesher.yaml
+++ /dev/null
@@ -1,23 +0,0 @@
-## Router rules and fault injection rules are moved to router.yaml
-#plugin:
-#  destinationResolver:
-#    http: host # how to turn host to destination name. default to service name，
-
-admin: #admin API
-  goRuntimeMetrics : true # enable metrics
-  enable: true
-
-## enable pprof to profile mesher runtime
-#pprof:
-#  enable: false
-
-
-# this health check will ping local service port to check if service is still alive, if service can not reachable, mesher
-# will update status to OUT_OF_SERVICE in service center
-#localHealthCheck:
-#  - port: 8080
-#    uri: /health
-#    interval: 30s
-#    match:
-#      status: 200
-#      body: ok
diff --git a/examples/quick_start/mersher-b/conf/microservice.yaml b/examples/quick_start/mersher-b/conf/microservice.yaml
deleted file mode 100644
index dc70a0a..0000000
--- a/examples/quick_start/mersher-b/conf/microservice.yaml
+++ /dev/null
@@ -1,7 +0,0 @@
-## microservice property
-service_description:
-  name: mersher-provider
-  version: 1.1.1
-  environment:  #microservice environment
-  properties:
-    allowCrossApp: true #whether to allow calls across applications
diff --git a/examples/quick_start/mersher-b/conf/router.yaml b/examples/quick_start/mersher-b/conf/router.yaml
deleted file mode 100644
index 1146860..0000000
--- a/examples/quick_start/mersher-b/conf/router.yaml
+++ /dev/null
@@ -1,12 +0,0 @@
-#routeRule:
-#  ShoppingCart:        #service name
-#    - precedence: 2    #precedence of route rule
-#      route:           #route rule list
-#      - tags:
-#          version: 0.2 
-#          app: HelloWorld 
-#        weight: 80     #weight of 80%
-#      - tags:
-#          version: 1.2
-#          app: HelloWorld
-#        weight: 20     #weight of 20%
\ No newline at end of file
diff --git a/examples/quick_start/mersher-g/conf/auth.yaml b/examples/quick_start/mersher-g/conf/auth.yaml
deleted file mode 100644
index 56d7e02..0000000
--- a/examples/quick_start/mersher-g/conf/auth.yaml
+++ /dev/null
@@ -1,7 +0,0 @@
-## Huawei Public Cloud ak/sk
-cse:
-  credentials:
-    accessKey:
-    secretKey:
-    project:
-    akskCustomCipher: default #used to decrypt sk when it is encrypted
diff --git a/examples/quick_start/mersher-g/conf/egress.yaml b/examples/quick_start/mersher-g/conf/egress.yaml
deleted file mode 100644
index de36a85..0000000
--- a/examples/quick_start/mersher-g/conf/egress.yaml
+++ /dev/null
@@ -1,17 +0,0 @@
-#egress:
-#  infra: cse  # pilot or cse
-#  address: http://istio-pilot.istio-system:15010
-#egressRule:
-#  google-ext:
-#    - hosts:
-#        - "google.com"
-#        - "*.yahoo.com"
-#      ports:
-#        - port: 80
-#          protocol: HTTP
-#  facebook-ext:
-#    - hosts:
-#        - "www.facebook.com"
-#      ports:
-#        - port: 80
-#          protocol: HTTP
diff --git a/examples/quick_start/mersher-g/conf/fault.yaml b/examples/quick_start/mersher-g/conf/fault.yaml
deleted file mode 100644
index d55c9e7..0000000
--- a/examples/quick_start/mersher-g/conf/fault.yaml
+++ /dev/null
@@ -1,51 +0,0 @@
-#cse:
-#  governance:
-#    Consumer:
-#      _global: #最低优先级配置
-#        policy: #治理策略 包括fault，loadbalance，circuit breaker等等，目前只是新的fault加入，旧的治理可考虑慢慢增加支持
-#          fault: #
-#            protocols: # 向协议模块注入错误，考虑未来扩展多任意组件注入错误，所以这么设计
-#              rest:
-#                delay:
-#                  fixedDelay: 5
-#                  percent: 10
-#                abort:
-#                  httpStatus: 421
-#                  percent: 100
-#              highway:
-#                delay:
-#                  fixedDelay: 2
-#                  percent: 100
-#                abort:
-#                  percent: 30
-#      ms1:
-#        route: |
-#            - precedence: 2
-#              match:
-#                source: source.service
-#              traffic:
-#                - tags:
-#                    version: 1.0
-#                  weight: 90
-#                - tags:
-#                    version: 1.1
-#                  weight: 10
-#                  policy:
-#                    fault:
-#                    schemas:
-#                      sid1:
-#                        policy:
-#                          fault:
-#                        operations:
-#                          policy:
-#                            fault:
-#        policy: # 微服务名级别治理策略
-#          fault:
-#        schemas: #schema级别治理策略
-#          sid1:
-#            policy:
-#              fault:
-#            operations: #operation级别治理策略
-#              policy:
-#                fault:
-#    Provider: # format same as Consumer
\ No newline at end of file
diff --git a/examples/quick_start/mersher-g/conf/lager.yaml b/examples/quick_start/mersher-g/conf/lager.yaml
deleted file mode 100644
index 3788335..0000000
--- a/examples/quick_start/mersher-g/conf/lager.yaml
+++ /dev/null
@@ -1,23 +0,0 @@
----
-writers: file,stdout
-# LoggerLevel: |DEBUG|INFO|WARN|ERROR|FATAL
-logger_level: DEBUG
-
-# LoggerFile: used to output the name of log
-logger_file: log/mesher.log
-
-# LogFormatText: json/plaintext (such as log4j)，default to false
-# if set logger_file and log_format_text to true, turns out log4j format log
-log_format_text: false
-
-#rollingPolicy daily/size; defines rotate according to daily or size
-rollingPolicy: size
-
-# MaxDaily of a log file before rotate. By D Days.
-log_rotate_date: 1
-
-# MaxSize of a log file before rotate. By M Bytes.
-log_rotate_size: 10
-
-# Max counts to keep of a log's backup files.
-log_backup_count: 7
\ No newline at end of file
diff --git a/examples/quick_start/mersher-g/conf/mesher.yaml b/examples/quick_start/mersher-g/conf/mesher.yaml
deleted file mode 100644
index 024810c..0000000
--- a/examples/quick_start/mersher-g/conf/mesher.yaml
+++ /dev/null
@@ -1,23 +0,0 @@
-## Router rules and fault injection rules are moved to router.yaml
-#plugin:
-#  destinationResolver:
-#    http: host # how to turn host to destination name. default to service name，
-
-admin: #admin API
-  goRuntimeMetrics : true # enable metrics
-  enable: true
-
-## enable pprof to profile mesher runtime
-#pprof:
-#  enable: false
-
-
-# this health check will ping local service port to check if service is still alive, if service can not reachable, mesher
-# will update status to OUT_OF_SERVICE in service center
-#localHealthCheck:
-#  - port: 8080
-#    uri: /health
-#    interval: 30s
-#    match:
-#      status: 200
-#      body: ok
diff --git a/examples/quick_start/mersher-a/conf/auth.yaml b/examples/quick_start/mersher_calculator/conf/auth.yaml
similarity index 100%
copy from examples/quick_start/mersher-a/conf/auth.yaml
copy to examples/quick_start/mersher_calculator/conf/auth.yaml
diff --git a/examples/quick_start/mersher-a/conf/chassis.yaml b/examples/quick_start/mersher_calculator/conf/chassis.yaml
similarity index 97%
rename from examples/quick_start/mersher-a/conf/chassis.yaml
rename to examples/quick_start/mersher_calculator/conf/chassis.yaml
index 2361c2b..21deed6 100644
--- a/examples/quick_start/mersher-a/conf/chassis.yaml
+++ b/examples/quick_start/mersher_calculator/conf/chassis.yaml
@@ -91,9 +91,9 @@
 #      qps:
 #        enabled: true  # enable rate limiting or not
 #        global:
-#          limit: 100   # default limit of provider
+#          limit: 0   # default limit of provider
 #        limit:
-#          Server: 100  # rate limit for request from a provider, it represents 100 request per second
+#          Server: 0  # rate limit for request from a provider, it represents 100 request per second
 
 #ssl:
 ## Set those config to make mesher as https service
diff --git a/examples/quick_start/mersher-a/conf/egress.yaml b/examples/quick_start/mersher_calculator/conf/egress.yaml
similarity index 100%
copy from examples/quick_start/mersher-a/conf/egress.yaml
copy to examples/quick_start/mersher_calculator/conf/egress.yaml
diff --git a/examples/quick_start/mersher-a/conf/fault.yaml b/examples/quick_start/mersher_calculator/conf/fault.yaml
similarity index 100%
copy from examples/quick_start/mersher-a/conf/fault.yaml
copy to examples/quick_start/mersher_calculator/conf/fault.yaml
diff --git a/examples/quick_start/mersher-a/conf/lager.yaml b/examples/quick_start/mersher_calculator/conf/lager.yaml
similarity index 100%
copy from examples/quick_start/mersher-a/conf/lager.yaml
copy to examples/quick_start/mersher_calculator/conf/lager.yaml
diff --git a/examples/quick_start/mersher-a/conf/mesher.yaml b/examples/quick_start/mersher_calculator/conf/mesher.yaml
similarity index 100%
copy from examples/quick_start/mersher-a/conf/mesher.yaml
copy to examples/quick_start/mersher_calculator/conf/mesher.yaml
diff --git a/examples/quick_start/mersher-a/conf/microservice.yaml b/examples/quick_start/mersher_calculator/conf/microservice.yaml
similarity index 87%
rename from examples/quick_start/mersher-a/conf/microservice.yaml
rename to examples/quick_start/mersher_calculator/conf/microservice.yaml
index dc70a0a..e119ec9 100644
--- a/examples/quick_start/mersher-a/conf/microservice.yaml
+++ b/examples/quick_start/mersher_calculator/conf/microservice.yaml
@@ -1,6 +1,6 @@
 ## microservice property
 service_description:
-  name: mersher-provider
+  name: calculator
   version: 1.1.1
   environment:  #microservice environment
   properties:
diff --git a/examples/quick_start/mersher-a/conf/router.yaml b/examples/quick_start/mersher_calculator/conf/router.yaml
similarity index 100%
rename from examples/quick_start/mersher-a/conf/router.yaml
rename to examples/quick_start/mersher_calculator/conf/router.yaml
diff --git a/examples/quick_start/mersher-a/conf/auth.yaml b/examples/quick_start/mersher_webapp/conf/auth.yaml
similarity index 100%
rename from examples/quick_start/mersher-a/conf/auth.yaml
rename to examples/quick_start/mersher_webapp/conf/auth.yaml
diff --git a/examples/quick_start/mersher-g/conf/chassis.yaml b/examples/quick_start/mersher_webapp/conf/chassis.yaml
similarity index 98%
rename from examples/quick_start/mersher-g/conf/chassis.yaml
rename to examples/quick_start/mersher_webapp/conf/chassis.yaml
index 1129aac..4c02d2c 100644
--- a/examples/quick_start/mersher-g/conf/chassis.yaml
+++ b/examples/quick_start/mersher_webapp/conf/chassis.yaml
@@ -32,7 +32,7 @@
         incoming:   #provider handlers
 #  loadbalance:
 #    strategy:
-#      name: RoundRobin  # Random|RoundRobin|SessionStickiness
+#      name: Random  # Random|RoundRobin|SessionStickiness
 #    retryEnabled: false # if there is error, retry request or not
 #    retryOnNext: 2      # times to switch to another instance based on strategy
 #    retryOnSame: 3      # times to retry on the same instance
diff --git a/examples/quick_start/mersher-a/conf/egress.yaml b/examples/quick_start/mersher_webapp/conf/egress.yaml
similarity index 100%
rename from examples/quick_start/mersher-a/conf/egress.yaml
rename to examples/quick_start/mersher_webapp/conf/egress.yaml
diff --git a/examples/quick_start/mersher-a/conf/fault.yaml b/examples/quick_start/mersher_webapp/conf/fault.yaml
similarity index 100%
rename from examples/quick_start/mersher-a/conf/fault.yaml
rename to examples/quick_start/mersher_webapp/conf/fault.yaml
diff --git a/examples/quick_start/mersher-a/conf/lager.yaml b/examples/quick_start/mersher_webapp/conf/lager.yaml
similarity index 100%
rename from examples/quick_start/mersher-a/conf/lager.yaml
rename to examples/quick_start/mersher_webapp/conf/lager.yaml
diff --git a/examples/quick_start/mersher-a/conf/mesher.yaml b/examples/quick_start/mersher_webapp/conf/mesher.yaml
similarity index 100%
rename from examples/quick_start/mersher-a/conf/mesher.yaml
rename to examples/quick_start/mersher_webapp/conf/mesher.yaml
diff --git a/examples/quick_start/mersher-g/conf/microservice.yaml b/examples/quick_start/mersher_webapp/conf/microservice.yaml
similarity index 88%
rename from examples/quick_start/mersher-g/conf/microservice.yaml
rename to examples/quick_start/mersher_webapp/conf/microservice.yaml
index 83e53c2..a5640d6 100644
--- a/examples/quick_start/mersher-g/conf/microservice.yaml
+++ b/examples/quick_start/mersher_webapp/conf/microservice.yaml
@@ -1,6 +1,6 @@
 ## microservice property
 service_description:
-  name: mersher-consumer
+  name: webapp
   version: 0.0.1
   environment:  #microservice environment
   properties:
diff --git a/examples/quick_start/mersher-g/conf/router.yaml b/examples/quick_start/mersher_webapp/conf/router.yaml
similarity index 60%
rename from examples/quick_start/mersher-g/conf/router.yaml
rename to examples/quick_start/mersher_webapp/conf/router.yaml
index d2bc227..07d6029 100644
--- a/examples/quick_start/mersher-g/conf/router.yaml
+++ b/examples/quick_start/mersher_webapp/conf/router.yaml
@@ -1,10 +1,10 @@
 #routeRule:
-#  mersher-provider:        #service name
+#  calculator:        #service name
 #    - precedence: 2    #precedence of route rule
 #      route:           #route rule list
 #      - tags:
 #          version: 1.1.1
-#        weight: 50     #weight of 20%
+#        weight: 70     #weight of 20%
 #      - tags:
 #          version: 1.1.2
-#        weight: 50     #weight of 20%
\ No newline at end of file
+#        weight: 30     #weight of 20%
\ No newline at end of file
diff --git a/examples/quick_start/httpserver_py/http_server.py b/examples/quick_start/test_balance/httpserver_calculator/httpserver_calculator.py
similarity index 88%
copy from examples/quick_start/httpserver_py/http_server.py
copy to examples/quick_start/test_balance/httpserver_calculator/httpserver_calculator.py
index 8038a61..427f97a 100644
--- a/examples/quick_start/httpserver_py/http_server.py
+++ b/examples/quick_start/test_balance/httpserver_calculator/httpserver_calculator.py
@@ -47,6 +47,10 @@
             return
         dwHeight = float(arrHeight[1])
         dwWeight = float(arrWeight[1])
+        if dwHeight < 0 or dwWeight < 0 :
+            time.sleep(6)
+            raise RuntimeError('para Error')
+            return 
         ddwBmi = Calculator(dwHeight, dwWeight)
         print "calculator result:" + str(ddwBmi)
         self.send_response(200)
@@ -56,14 +60,14 @@
         # Send the html message
         date = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
         arrDate = str.split(date, " ")
-        result = {"result": ddwBmi, "instanceId": "pythonServer", "callTime": str(arrDate[1])}
+        result = {"result": ddwBmi, "instanceId": "pythonServer2", "callTime": str(arrDate[1])}
         strResult = json.dumps(result)
         print "json result:" + strResult
         self.wfile.write(strResult)
         return
 
 try:
-    server = HTTPServer(('127.0.0.1', 4540), CalculatorHandler)
+    server = HTTPServer(('127.0.0.1', 4537), CalculatorHandler)
     print 'http server begin:\n'
     server.serve_forever()
 
diff --git a/examples/quick_start/mersher-a/conf/auth.yaml b/examples/quick_start/test_balance/mersher_calculator/conf/auth.yaml
similarity index 100%
copy from examples/quick_start/mersher-a/conf/auth.yaml
copy to examples/quick_start/test_balance/mersher_calculator/conf/auth.yaml
diff --git a/examples/quick_start/mersher-b/conf/chassis.yaml b/examples/quick_start/test_balance/mersher_calculator/conf/chassis.yaml
similarity index 100%
rename from examples/quick_start/mersher-b/conf/chassis.yaml
rename to examples/quick_start/test_balance/mersher_calculator/conf/chassis.yaml
diff --git a/examples/quick_start/mersher-a/conf/egress.yaml b/examples/quick_start/test_balance/mersher_calculator/conf/egress.yaml
similarity index 100%
copy from examples/quick_start/mersher-a/conf/egress.yaml
copy to examples/quick_start/test_balance/mersher_calculator/conf/egress.yaml
diff --git a/examples/quick_start/mersher-a/conf/fault.yaml b/examples/quick_start/test_balance/mersher_calculator/conf/fault.yaml
similarity index 100%
copy from examples/quick_start/mersher-a/conf/fault.yaml
copy to examples/quick_start/test_balance/mersher_calculator/conf/fault.yaml
diff --git a/examples/quick_start/mersher-a/conf/lager.yaml b/examples/quick_start/test_balance/mersher_calculator/conf/lager.yaml
similarity index 100%
copy from examples/quick_start/mersher-a/conf/lager.yaml
copy to examples/quick_start/test_balance/mersher_calculator/conf/lager.yaml
diff --git a/examples/quick_start/mersher-a/conf/mesher.yaml b/examples/quick_start/test_balance/mersher_calculator/conf/mesher.yaml
similarity index 100%
copy from examples/quick_start/mersher-a/conf/mesher.yaml
copy to examples/quick_start/test_balance/mersher_calculator/conf/mesher.yaml
diff --git a/examples/quick_start/mersher-a/conf/microservice.yaml b/examples/quick_start/test_balance/mersher_calculator/conf/microservice.yaml
similarity index 87%
copy from examples/quick_start/mersher-a/conf/microservice.yaml
copy to examples/quick_start/test_balance/mersher_calculator/conf/microservice.yaml
index dc70a0a..e119ec9 100644
--- a/examples/quick_start/mersher-a/conf/microservice.yaml
+++ b/examples/quick_start/test_balance/mersher_calculator/conf/microservice.yaml
@@ -1,6 +1,6 @@
 ## microservice property
 service_description:
-  name: mersher-provider
+  name: calculator
   version: 1.1.1
   environment:  #microservice environment
   properties:
diff --git a/examples/quick_start/mersher-a/conf/router.yaml b/examples/quick_start/test_balance/mersher_calculator/conf/router.yaml
similarity index 100%
copy from examples/quick_start/mersher-a/conf/router.yaml
copy to examples/quick_start/test_balance/mersher_calculator/conf/router.yaml
diff --git a/examples/quick_start/webapp/application.yaml b/examples/quick_start/webapp/application.yaml
deleted file mode 100644
index e4bad11..0000000
--- a/examples/quick_start/webapp/application.yaml
+++ /dev/null
@@ -1,33 +0,0 @@
-## ---------------------------------------------------------------------------
-## Licensed to the Apache Software Foundation (ASF) under one or more
-## contributor license agreements.  See the NOTICE file distributed with
-## this work for additional information regarding copyright ownership.
-## The ASF licenses this file to You under the Apache License, Version 2.0
-## (the "License"); you may not use this file except in compliance with
-## the License.  You may obtain a copy of the License at
-##
-##      http://www.apache.org/licenses/LICENSE-2.0
-##
-## Unless required by applicable law or agreed to in writing, software
-## distributed under the License is distributed on an "AS IS" BASIS,
-## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-## See the License for the specific language governing permissions and
-## limitations under the License.
-## ---------------------------------------------------------------------------
-
-zuul:
-  routes:
-    calculator: /calculator/**
-
-# disable netflix eurkea since it's not used for service discovery
-ribbon:
-  eureka:
-    enabled: false
-
-server:
-  address: 192.168.88.64
-  port: 8889
-
-servicecomb:
-  tracing:
-    enabled: false
