Authored by mali

初始化

Showing 57 changed files with 4166 additions and 0 deletions

Too many changes to show.

To preserve performance only 57 of 57+ files are displayed.

users/.settings/
order/.settings/
product/.settings/
product/.gitignore
*.project
*.classpath
payment/.settings/
common/.settings/
order/.gitignore
deploy/.gitignore
deploy/.settings/
.settings/
... ...
############################################################
# Dockerfile to build tomcat service
# Based on centos tomcat:8.5.32-jre8-alpine
# path: /gateway/common/ok.jsp
############################################################
FROM ccr.ccs.tencentyun.com/yoho-base/tomcat:8.5.4
MAINTAINER jimi <jimi.ji@yoho.cn>
ENV TZ Asia/Shanghai
COPY deploy/target/gateway.war /usr/local/tomcat/webapps/gateway.war
RUN sed -i 's/<Connector port="8080" protocol/<Connector port="8080" protocol/g' /usr/local/tomcat/conf/server.xml
WORKDIR /usr/local/tomcat/
#expose port
EXPOSE 8080
\ No newline at end of file
... ...
maven相关命令,创建工程、打包、清理
\ No newline at end of file
... ...
@echo off
cd ..
echo %~dp0
echo Start to execute command
mvn clean&mvn eclipse:clean&pause
\ No newline at end of file
... ...
@echo off
cd ..
mvn -Dwtpversion=2.0 eclipse:eclipse&pause
\ No newline at end of file
... ...
@echo off
cd ..
mvn package -e -Dmaven.test.skip=true&pause
\ No newline at end of file
... ...
#!/bin/bash
################################################################
#@Authro Lijian
#@Date 2011-06-08
################################################################
cd ..
/usr/local/maven/bin/mvn clean
/usr/local/maven/bin/mvn eclipse:clean
/usr/local/maven/bin/mvn package -Dmaven.test.skip=true -Dautoconfig.userProperties=$1 -Dautoconfig.sharedProperties=$2
... ...
/target/
... ...
<?xml version="1.0" encoding="UTF-8"?>
<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>
<artifactId>yohoufo-fore-parent</artifactId>
<groupId>com.yohoufo.fore</groupId>
<version>1.0.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>yohoufo-fore-common</artifactId>
<name>yohoufo-fore-common</name>
<dependencies>
<dependency>
<groupId>com.yoho.core</groupId>
<artifactId>yoho-core-trace</artifactId>
</dependency>
<dependency>
<groupId>com.yoho.common</groupId>
<artifactId>error-code</artifactId>
</dependency>
<dependency>
<groupId>com.yoho.core</groupId>
<artifactId>yoho-core-common</artifactId>
</dependency>
<!--<dependency>-->
<!--<groupId>com.yoho.core</groupId>-->
<!--<artifactId>yoho-core-message</artifactId>-->
<!--</dependency>-->
<dependency>
<groupId>com.yoho.core</groupId>
<artifactId>yoho-core-redis-cluster</artifactId>
</dependency>
<dependency>
<groupId>com.yoho.core</groupId>
<artifactId>yoho-core-rest-client-simple</artifactId>
</dependency>
<dependency>
<groupId>com.yoho.core</groupId>
<artifactId>yoho-core-cache</artifactId>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aop</artifactId>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>jcl-over-slf4j</artifactId>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
</dependency>
<!-- 去除版本 -->
<dependency>
<groupId>com.github.jknack</groupId>
<artifactId>handlebars</artifactId>
</dependency>
<dependency>
<groupId>com.github.jknack</groupId>
<artifactId>handlebars-springmvc</artifactId>
</dependency>
<dependency>
<groupId>com.netflix.hystrix</groupId>
<artifactId>hystrix-metrics-event-stream</artifactId>
</dependency>
<dependency>
<groupId>com.belerweb</groupId>
<artifactId>pinyin4j</artifactId>
</dependency>
<dependency>
<groupId>com.qiniu</groupId>
<artifactId>qiniu-java-sdk</artifactId>
</dependency>
<dependency>
<groupId>com.aliyun.oss</groupId>
<artifactId>aliyun-sdk-oss</artifactId>
</dependency>
<dependency>
<groupId>com.sina</groupId>
<artifactId>weibo4j</artifactId>
</dependency>
<dependency>
<groupId>commons-codec</groupId>
<artifactId>commons-codec</artifactId>
</dependency>
<dependency>
<groupId>commons-net</groupId>
<artifactId>commons-net</artifactId>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-pool2</artifactId>
<version>2.2</version>
</dependency>
<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
</dependency>
<dependency>
<groupId>commons-lang</groupId>
<artifactId>commons-lang</artifactId>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
</dependency>
<dependency>
<groupId>commons-httpclient</groupId>
<artifactId>commons-httpclient</artifactId>
<version>3.1</version>
</dependency>
<dependency>
<groupId>commons-collections</groupId>
<artifactId>commons-collections</artifactId>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
</dependency>
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
</dependency>
<dependency>
<groupId>com.netflix.archaius</groupId>
<artifactId>archaius-core</artifactId>
</dependency>
<dependency>
<groupId>com.yoho.tools</groupId>
<artifactId>yohobuy-tools-docs</artifactId>
<version>0.0.2-SNAPSHOT</version>
<exclusions>
<exclusion>
<groupId>com.yoho.core</groupId>
<artifactId>yoho-core-redis</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
</dependency>
<dependency>
<groupId>org.jdom</groupId>
<artifactId>jdom</artifactId>
<version>1.1</version>
</dependency>
<dependency>
<groupId>dom4j</groupId>
<artifactId>dom4j</artifactId>
<version>1.6.1</version>
</dependency>
<dependency>
<groupId>org.bouncycastle</groupId>
<artifactId>bcprov-jdk16</artifactId>
<version>1.46</version>
</dependency>
<dependency>
<groupId>com.squareup.retrofit</groupId>
<artifactId>retrofit</artifactId>
<version>1.9.0</version>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</dependency>
<dependency>
<groupId>com.yoho.service.model</groupId>
<artifactId>resource-service-model</artifactId>
</dependency>
<dependency>
<groupId>com.yoho.service.model</groupId>
<artifactId>users-service-model</artifactId>
</dependency>
<dependency>
<groupId>com.yoho.service.model</groupId>
<artifactId>shops-service-model</artifactId>
</dependency>
</dependencies>
</project>
\ No newline at end of file
... ...
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://www.springframework.org/schema/beans"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
<!-- secutity configs -->
<bean id="securityConfigMap" class="org.springframework.beans.factory.config.YamlMapFactoryBean">
<property name="resources">
<list>
<value>classpath:security-key.yml</value>
</list>
</property>
</bean>
<!-- validate session and signature methods-->
<bean id="validateMethodMap" class="org.springframework.beans.factory.config.YamlMapFactoryBean">
<property name="resources">
<list>
<value>classpath:validate-method.yml</value>
</list>
</property>
</bean>
<!-- ******************** interceptors ******************** -->
<bean id="securityInterceptor" class="com.yoho.gateway.common.interceptor.SecurityInterceptor">
<property name="isDebugEnable" value="${is_debug_enable:false}" />
<property name="excludeUrls">
<list>
<value>/jsp</value>
<value>/erp</value>
<value>/payment</value>
<value>/purchase</value>
<value>/guang</value>
</list>
</property>
<property name="local">
<value>/service_control</value>
</property>
<property name="checkSessionShopsMethods">
<list>
<value>app.shopInbox.getList</value>
<value>app.sellerShop.sellType</value>
<value>app.shops.shopbrandrank</value>
<value>app.shops.shopbusinessoverview</value>
<value>app.shopInbox.getShopInboxTotal</value>
<value>app.shops.sales</value>
<value>app.shops.refund</value>
<value>app.shops.storagestatistics</value>
<value>app.shops.storagein</value>
<value>app.shops.storageout</value>
<value>app.purchase.delivery</value>
<value>app.express.getExpressList</value>
<value>app.purchase.queryBySupplierId</value>
<value>app.shops.accountbalance</value>
<value>app.shopInbox.batchSetIsRead</value>
<value>app.purchase.stockOut</value>
<value>app.purchase.list</value>
<value>app.shops.checkAppVersion</value>
<value>app.followPrice.list</value>
<value>app.followPrice.getFrontPageStatisticsData</value>
<value>app.followPrice.changeVipStatus</value>
<value>app.followPrice.follow</value>
</list>
</property>
<property name="checkSessionMethods" ref="validateMethodMap" />
</bean>
<bean id="signatureVerifyInterceptor" class="com.yoho.gateway.common.interceptor.SignatureVerifyInterceptor">
<property name="isDebugEnable" value="${is_debug_enable:false}" />
<property name="checkMethods" ref="validateMethodMap"/>
</bean>
<bean id="httpRequestInterceptor" class="com.yoho.gateway.common.interceptor.HttpRequestInterceptor" />
<bean id="localIpInterceptor" class="com.yoho.gateway.common.interceptor.RemoteIPInterceptor" />
<bean id="accessStatistics" class="com.yoho.gateway.common.interceptor.AccessStatistics" />
<bean id="productBrowserStatistic" class="com.yoho.gateway.user.controller.browse.ProductBrowserStatistic" />
<bean id="accessLogInterceptor" class="com.yoho.gateway.common.interceptor.AccessLogInterceptor" />
<bean id="innerApiInterceptor" class="com.yoho.gateway.common.interceptor.InnerApiInterceptor">
<property name="enableDebug" value="${is_debug_enable:false}" />
</bean>
<!-- end -->
<bean id="redisGwCacheClient" class="com.yoho.gateway.common.cache.RedisGwCacheClient">
</bean>
<bean id="consultConfigMap" class="org.springframework.beans.factory.config.YamlMapFactoryBean">
<property name="resources">
<list>
<value>classpath:consult-common.yml</value>
</list>
</property>
</bean>
</beans>
... ...
consult-1:
answer: 有货www.yohobuy.com所售的商品均经品牌授权,正品保障,支持专柜验货,与您亲临商场选购的商品一样享受相同的质量保证,请您放心购买。
question: 商品都是正品吗?
consult-2:
answer: 有货所售商品尺寸均为人工实物测量,可能会存在1-2cm的正常误差范围。
question: 尺码表上的尺码标准吗?
consult-3:
answer: 有货所有商品均采用实物专业拍摄,但由于个人显示器不同,可能导致实物与图片存在色差,最终颜色以实物为准。
question: 图片颜色和实物颜色相同吗?
consult-4:
answer: 当天15点前付款(货到付款15点前审核)的订单,当天安排发货;超过15点确认的订单的次日发货。合作的配送公司有宅急送、圆通、顺丰、EMS、申通、韵达;顺丰、EMS、宅急送支持货到付款。
question: 发货及配送
consult-5:
answer: 签收商品未经穿着不影响二次销售的情况下,7日内退货、15日内换货;退回商品保证吊牌、标签、包装完整(内衣、内裤、袜子、泳衣泳裤、贴身塑身衣类商品、香水、香薰、化妆品、电子产品等特殊商品,无质量问题不支持七天无理由退换货,敬请谅解)。
question: 退货 or 换货
... ...
client_keys:
- type: iphone
key: a85bb0674e08986c6b115d5e3a4884fa
- type: ipad
key: ad9fcda2e679cf9229e37feae2cdcf80
- type: android
key: fd4ad5fcfa0de589ef238c0e7331b585
- type: yoho
key: fd4ad5fcsa0de589af23234ks1923ks
- type: h5
key: fd4ad5fcfa0de589ef238c0e7331b585
- type: web
key: 0ed29744ed318fd28d2c07985d3ba633
- type: wechat
key: fd4ad5fcfa0de589ef238c0e7331b585
- type: test
key: fd4ad5fcfa0de589ef238c0e7331b585
- type: miniapp
key: b43890b0a296ff3c7b8c260ca763980b
\ No newline at end of file
... ...
methods:
- app.SpaceOrders.get
- app.SpaceOrders.list
- app.SpaceOrders.getShareOrder
- app.SpaceOrders.delOrderByCode
- app.SpaceOrders.confirm
- app.SpaceOrders.close
- app.SpaceOrders.refundApply
- app.SpaceOrders.info
- app.SpaceOrders.detail
- app.SpaceOrders.updateDeliveryAddress
- app.SpaceOrders.getInstallment
- app.SpaceOrders.installDetail
- app.SpaceOrders.getQrByOrderCode
- app.SpaceOrders.getQrByUid
- app.order.queryAmtList
- app.order.queryAmtInfo
- app.order.queryRePayList
- app.express.get
- app.express.li
- app.refund.getList
- app.refund.goodsList
- app.refund.submit
- app.refund.detail
- app.refund.setexpress
- app.refund.cancel
- app.change.goodsList
- app.change.submit
- app.change.detail
- app.change.cancel
- app.change.setexpress
- app.Shopping.payment
- app.Shopping.compute
- app.Shopping.countUsableCoupon
- app.Shopping.listCoupon
- app.Shopping.submit
- app.Shopping.easyPayment
- app.Shopping.easyCompute
- app.Shopping.easySubmit
- app.shopping.depositPayment
- app.shopping.depositCompute
- app.shopping.depositSubmit
- app.shopping.ticket
- app.shopping.submitTicket
- app.Seckill.payment
- app.Seckill.compute
- app.Seckill.submit
- app.Buynow.payment
- app.Buynow.compute
- app.Buynow.submit
- web.complaints.add
- app.passport.passport
- app.passport.modifyBase
- app.address.gethidden
- app.address.get
- app.address.add
- app.address.update
- app.address.del
- web.personCen.giftExchange
- web.passport.modifyUserContacts
- user.instalment.activate
- user.instalment.getBankCards
- user.instalment.getBankCardDetail
- app.inbox.getlist
- app.inbox.getlistnew
- app.twoDimen.phoneScan
- app.activity.getActivityCouponCode
- app.coupons.bindPCoupon
- app.Shopping.useCoupon
- app.Shopping.countUsableGiftCard
- app.Shopping.listGiftCard
- app.coupons.sendCouponByConfig
- app.promotion.getACoupon
- app.coupons.li
- app.coupons.couponsSend
- show.ownerShareList
- show.allToShareOrderList
- app.trendword.update
- app.limitcode.query
- app.inbox.getAllInboxCatInfo
\ No newline at end of file
... ...
<?xml version="1.0" ?>
<project name="Lengyu" xmlns:jacoco="antlib:org.jacoco.ant" default="jacoco">
<!--Jacoco的安装路径-->
<property name="jacocoantPath" value="/Data/local/jacoco/lib/jacocoant.jar"/>
<!--工程名称,需要跟自己工程在代码发布机上的目录一致-->
<property name="project_name" value="yoho-ufo" />
<!--远程tomcat服务的ip地址-->
<property name="server_ip" value="10.66.101.7"/>
<!--前面配置的远程tomcat服务打开的端口,要跟env.sh中CATALINA_OPTS配置的Agent端口一样-->
<property name="server_port" value="8891"/>
<!--最终生成.exec文件的路径,Jacoco就是根据这个文件生成最终的报告的-->
<property name="jacocoexecFile" value="/Data/local/jacoco/jacoco-dumps/${project_name}"/>
<!--生成覆盖率报告的路径-->
<property name="reportfolderPath" value="/Data/local/jacoco/jacoco-report/${project_name}"/>
<!--代码发布机上工程的默认路径-->
<property name="code_base" value="/home/master/auto_deploy/apps/${project_name}/qcloud_gray/gray" />
<!--让ant知道去哪儿找Jacoco-->
<taskdef uri="antlib:org.jacoco.ant" resource="org/jacoco/ant/antlib.xml">
<classpath path="${jacocoantPath}" />
</taskdef>
<!--dump任务:
根据前面配置的ip地址,和端口号,
访问目标tomcat服务,并生成.exec文件。-->
<target name="dump">
<jacoco:dump address="${server_ip}" reset="false" destfile="${jacocoexecFile}" port="${server_port}" append="true"/>
</target>
<!--jacoco任务:
根据前面配置的源代码路径和.class文件路径,
根据dump后,生成的.exec文件,生成最终的html覆盖率报告。-->
<target name="report">
<delete dir="${reportfolderPath}" />
<mkdir dir="${reportfolderPath}" />
<jacoco:report>
<executiondata>
<file file="${jacocoexecFile}" />
</executiondata>
<structure name="JaCoCo Report">
<group name="backend">
<classfiles>
<fileset dir="${code_base}/backend/target/classes" />
</classfiles>
<sourcefiles encoding="gbk">
<fileset dir="${code_base}/backend/src/main/java" />
</sourcefiles>
</group>
<group name="cms">
<classfiles>
<fileset dir="${code_base}/cms/target/classes" />
</classfiles>
<sourcefiles encoding="gbk">
<fileset dir="${code_base}/cms/src/main/java" />
</sourcefiles>
</group>
<group name="common">
<classfiles>
<fileset dir="${code_base}/common/target/classes" />
</classfiles>
<sourcefiles encoding="gbk">
<fileset dir="${code_base}/common/src/main/java" />
</sourcefiles>
</group>
<group name="guide">
<classfiles>
<fileset dir="${code_base}/guide/target/classes" />
</classfiles>
<sourcefiles encoding="gbk">
<fileset dir="${code_base}/guide/src/main/java" />
</sourcefiles>
</group>
<group name="message">
<classfiles>
<fileset dir="${code_base}/message/target/classes" />
</classfiles>
<sourcefiles encoding="gbk">
<fileset dir="${code_base}/message/src/main/java" />
</sourcefiles>
</group>
<group name="offlineshop">
<classfiles>
<fileset dir="${code_base}/offlineshop/target/classes" />
</classfiles>
<sourcefiles encoding="gbk">
<fileset dir="${code_base}/offlineshop/src/main/java" />
</sourcefiles>
</group>
<group name="order">
<classfiles>
<fileset dir="${code_base}/order/target/classes" />
</classfiles>
<sourcefiles encoding="gbk">
<fileset dir="${code_base}/order/src/main/java" />
</sourcefiles>
</group>
<group name="payment">
<classfiles>
<fileset dir="${code_base}/payment/target/classes" />
</classfiles>
<sourcefiles encoding="gbk">
<fileset dir="${code_base}/payment/src/main/java" />
</sourcefiles>
</group>
<group name="product">
<classfiles>
<fileset dir="${code_base}/product/target/classes" />
</classfiles>
<sourcefiles encoding="gbk">
<fileset dir="${code_base}/product/src/main/java" />
</sourcefiles>
</group>
<group name="promotion">
<classfiles>
<fileset dir="${code_base}/promotion/target/classes" />
</classfiles>
<sourcefiles encoding="gbk">
<fileset dir="${code_base}/promotion/src/main/java" />
</sourcefiles>
</group>
<group name="seller">
<classfiles>
<fileset dir="${code_base}/seller/target/classes" />
</classfiles>
<sourcefiles encoding="gbk">
<fileset dir="${code_base}/seller/src/main/java" />
</sourcefiles>
</group>
<group name="service">
<classfiles>
<fileset dir="${code_base}/service/target/classes" />
</classfiles>
<sourcefiles encoding="gbk">
<fileset dir="${code_base}/service/src/main/java" />
</sourcefiles>
</group>
<group name="sns">
<classfiles>
<fileset dir="${code_base}/sns/target/classes" />
</classfiles>
<sourcefiles encoding="gbk">
<fileset dir="${code_base}/sns/src/main/java" />
</sourcefiles>
</group>
<group name="users">
<classfiles>
<fileset dir="${code_base}/users/target/classes" />
</classfiles>
<sourcefiles encoding="gbk">
<fileset dir="${code_base}/users/src/main/java" />
</sourcefiles>
</group>
</structure>
<html destdir="${reportfolderPath}" encoding="utf-8" />
</jacoco:report>
</target>
</project>
\ No newline at end of file
... ...
<?xml version="1.0" encoding="UTF-8"?>
<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/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<artifactId>yohoufo-fore-parent</artifactId>
<groupId>com.yohoufo.fore</groupId>
<version>1.0.0-SNAPSHOT</version>
</parent>
<artifactId>yohoufo-fore-deploy</artifactId>
<name>yohoufo-fore-deploy</name>
<build>
<finalName>yoho-ufo</finalName>
<plugins>
<plugin>
<groupId>com.yoho.tools</groupId>
<artifactId>maven-autoconfig-plugin</artifactId>
<version>1.0.0-SNAPSHOT</version>
<configuration>
<exploding>false</exploding>
<dest>${basedir}/src/main</dest>
<type>Directory</type>
</configuration>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>autoconfig</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<descriptors>
<descriptor>src/main/assembly/assembly.xml</descriptor>
</descriptors>
</configuration>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-antrun-plugin</artifactId>
<executions>
<execution>
<phase>package</phase>
<configuration>
<tasks>
<unzip src="target/yoho-ufo.zip" dest="target"/>
</tasks>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
... ...
<?xml version="1.0" encoding="UTF-8"?>
<config>
<group>
<!--yoho-gateway-autoconfig-->
<property name="yoho.gateway.env.webapphome" defaultValue="/home/master/yoho-gateway/deploy" description="应用根目录"/>
<property name="yoho.gateway.env.serverport" defaultValue="0" description="应用端口"/>
</group>
<script>
<generate template="META-INF/autoconf/bin/env.sh" destfile="bin/env.sh"/>
<generate template="META-INF/autoconf/bin/env.bat" destfile="bin/env.bat"/>
<generate template="META-INF/autoconf/conf/tomcat/server.xml" destfile="conf/tomcat/server.xml"/>
</script>
</config>
... ...
set JAVA_MEM_OPT= -Xms1024m -Xmx1024m -XX:MaxPermSize=128m -Djava.net.preferIPv4Stack=true
set JAVA_HOME=${yoho.env.javahome}
set WEB_APP_HOME=${yoho.gateway.env.webapphome}
#if("${yoho.env.servertype}"=="jboss")
set JBOSS_HOME=${yoho.env.serverhome}
set JBOSS_BASE_DIR=${yoho.gateway.env.webapphome}/jboss_server
set JBOSS_SERVER_BASE_DIR= -Djboss.server.base.dir=%JBOSS_BASE_DIR%
#end
#if("${yoho.env.servertype}"=="tomcat")
set CATALINA_HOME=${yoho.env.serverhome}
set CATALINA_BASE=${yoho.gateway.env.webapphome}/tomcat_server
#end
rem set JAVA_DEBUG_OPT= -server -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,address=8082,server=y,suspend=n
rem SET JMX_FILE_ACL="%WEB_APP_HOME%\conf\jmx\*.properties"
rem CACLS %JMX_FILE_ACL% /t /c /p %USERNAME%:f
rem SET TIGER_JMX_OPT= -Dcom.sun.management.config.file=%WEB_APP_HOME%\conf\jmx\jmx_monitor_management.properties
rem SET JAVA_OPTS=%JAVA_OPTS% %TIGER_JMX_OPT%
... ...
#!/bin/bash
################################################################
#@Authro Lijian
#@Date 2007-05-24
################################################################
BASE_BIN_DIR=`dirname $0`
. $BASE_BIN_DIR/functions.sh
export JAVA_HOME=${yoho.env.javahome}
export WEB_APP_HOME=${yoho.gateway.env.webapphome}
export SERVER_PORT=${yoho.gateway.env.serverport}
export PRODUCTION_MODE="${yoho.env.productmode}"
export SERVER_HOME=${yoho.env.serverhome}
export SERVER_TYPE=${yoho.env.servertype}
export SERVER_NAMESPACE=${yoho.gateway.env.namespace}
export JACOCO_HOME=/Data/local/jacoco
#if("${yoho.env.servertype}"=="jboss")
export SERVER_BASE_DIR=" -Djboss.server.base.dir=${yoho.gateway.env.webapphome}/.jboss/default "
#end
#if("${yoho.env.servertype}"=="tomcat")
export SERVER_BASE_DIR=" -Dcatalina.base=${yoho.gateway.env.webapphome}/.tomcat "
#end
export NAMING_PORT=`expr 9000 + $SERVER_PORT`
export HTTP_SERVER_PORT=`expr 8080 + $SERVER_PORT`
export DEBUG_PORT=`expr 8800 + $SERVER_PORT`
export CHECK_SERVER_STARTUP_URL="http://127.0.0.1:$HTTP_SERVER_PORT/$SERVER_NAMESPACE/common/ok.jsp"
export STARTUP_SUCCESS_MSG="Server Online Resources ok"
export JAVA_OPTS=" -XX:-OmitStackTraceInFastThrow -Djava.awt.headless=true -Djava.net.preferIPv4Stack=true "
export JAVA_DEBUG_OPT=" -server -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,address=$DEBUG_PORT,server=y,suspend=n "
#jmx
export JMX_PORT=`expr 9600 + $SERVER_PORT`
export LOCAL_IP=`/sbin/ifconfig -a|grep inet|grep -v 127.0.0.1|grep -v inet6|awk '{print $2}'|tr -d "addr:"|awk 'NR==1 {print}'`
export CATALINA_OPTS="$CATALINA_OPTS -Djava.rmi.server.hostname=$LOCAL_IP -Dcom.sun.management.jmxremote.port=$JMX_PORT -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false"
if [ -d $JACOCO_HOME ]; then
export CATALINA_OPTS="-javaagent:$JACOCO_HOME/lib/jacocoagent.jar=includes=com.yoho.*:com.yohobuy.*,output=tcpserver,port=8891,address=* $CATALINA_OPTS"
fi
if [ ! -e $JAVA_HOME ]; then
failed "********************************************************************"
failed "**Error: JAVA_HOME $JAVA_HOME not exist"
failed "********************************************************************"
exit 1
fi
if [ ! -e $SERVER_HOME ]; then
failed "********************************************************************"
failed "**Error: SERVER_HOME $SERVER_HOME not exist."
failed "********************************************************************"
exit 1
fi
#========end enviroment var define
################################################################
if [ $PRODUCTION_MODE = "PRODUCT" ]; then
#after the environment of online is all 64-bit,the below if and else judgement can be delete
str=`file $JAVA_HOME/bin/java | grep 64-bit`
if [ -n "$str" ]; then
let memTotal=`cat /proc/meminfo |grep MemTotal|awk '{printf "%d", $2/1024 }'`
if [ $memTotal -gt 10000 ];then
#JAVA_MEM_OPTS=" -server -XX:+UseG1GC -Xmx3G -XX:MaxGCPauseMillis=50 -Xloggc:/Data/logs/gateway/gc.log -XX:+PrintGCDetails -XX:+PrintGCDateStamps "
JAVA_MEM_OPTS=" -server -XX:+UseG1GC -Xmx2G -XX:MaxGCPauseMillis=10 -XX:+UnlockExperimentalVMOptions -XX:G1NewSizePercent=15 -XX:G1MaxNewSizePercent=30 -XX:SurvivorRatio=6 -XX:InitiatingHeapOccupancyPercent=30 -XX:G1MixedGCLiveThresholdPercent=50 -XX:G1HeapWastePercent=5 -XX:+PrintGCDetails -Xloggc:$yoho.logs.basedir/gateway/gc.log -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=$yoho.logs.basedir/gateway/heapdump.hprof "
else
#JAVA_MEM_OPTS=" -server -XX:+UseG1GC -Xmx2G -XX:MaxGCPauseMillis=50 -Xloggc:/Data/logs/gateway/gc.log -XX:+PrintGCDetails -XX:+PrintGCDateStamps "
JAVA_MEM_OPTS=" -server -XX:+UseG1GC -Xmx2G -XX:MaxGCPauseMillis=10 -XX:+UnlockExperimentalVMOptions -XX:G1NewSizePercent=15 -XX:G1MaxNewSizePercent=30 -XX:SurvivorRatio=6 -XX:InitiatingHeapOccupancyPercent=30 -XX:G1MixedGCLiveThresholdPercent=50 -XX:G1HeapWastePercent=5 -XX:+PrintGCDetails -Xloggc:$yoho.logs.basedir/gateway/gc.log -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=$yoho.logs.basedir/gateway/heapdump.hprof "
fi
else
JAVA_MEM_OPTS=" -server -XX:+UseG1GC -Xmx3G -XX:MaxGCPauseMillis=50 -Xloggc:/Data/logs/gateway/gc.log -XX:+PrintGCDetails -XX:+PrintGCDateStamps "
fi
JAVA_OPTS=" $JAVA_OPTS $JAVA_MEM_OPTS "
elif [ $PRODUCTION_MODE = "TEST" ]; then
JAVA_MEM_OPTS=" -server -Xmx1024M -Xms1024M -Xmn512M -XX:MetaspaceSize=200M -XX:+PrintTenuringDistribution -XX:MaxMetaspaceSize=200M -Xss256K -XX:+DisableExplicitGC -XX:SurvivorRatio=3 -XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:+CMSParallelRemarkEnabled -XX:+UseCMSCompactAtFullCollection -XX:CMSFullGCsBeforeCompaction=0 -XX:+CMSClassUnloadingEnabled -XX:LargePageSizeInBytes=128M -XX:+UseFastAccessorMethods -XX:+UseCMSInitiatingOccupancyOnly -XX:-OmitStackTraceInFastThrow -XX:CMSInitiatingOccupancyFraction=80 -XX:SoftRefLRUPolicyMSPerMB=0 -XX:+PrintGCDetails -XX:+PrintGCApplicationStoppedTime -Xloggc:$yoho.logs.basedir/gateway/gc.log -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=$WEB_APP_HOME/logs/heapdump.hprof "
JAVA_OPTS=" $JAVA_OPTS $JAVA_MEM_OPTS "
elif [ $PRODUCTION_MODE = "DEV" ]; then
#we shuold reduce resource usage on developing mode
JAVA_MEM_OPTS=" -server -Xms256m -Xmx256m "
JAVA_OPTS=" $JAVA_OPTS $JAVA_MEM_OPTS $JAVA_DEBUG_OPT "
else
failed "********************************************************************"
failed "**Error: \$PRODUCTION_MODE should be only: run, test, dev"
failed "********************************************************************"
exit 1
fi
JAVA_OPTS=" $JAVA_OPTS $SERVER_BASE_DIR "
... ...
# 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.
handlers = 1catalina.org.apache.juli.AsyncFileHandler, 2localhost.org.apache.juli.AsyncFileHandler, 3manager.org.apache.juli.AsyncFileHandler, 4host-manager.org.apache.juli.AsyncFileHandler, java.util.logging.ConsoleHandler
.handlers = 1catalina.org.apache.juli.AsyncFileHandler, java.util.logging.ConsoleHandler
############################################################
# Handler specific properties.
# Describes specific configuration info for Handlers.
############################################################
1catalina.org.apache.juli.AsyncFileHandler.level = FINE
1catalina.org.apache.juli.AsyncFileHandler.directory = ${catalina.base}/logs
1catalina.org.apache.juli.AsyncFileHandler.prefix = catalina.
2localhost.org.apache.juli.AsyncFileHandler.level = FINE
2localhost.org.apache.juli.AsyncFileHandler.directory = ${catalina.base}/logs
2localhost.org.apache.juli.AsyncFileHandler.prefix = localhost.
3manager.org.apache.juli.AsyncFileHandler.level = FINE
3manager.org.apache.juli.AsyncFileHandler.directory = ${catalina.base}/logs
3manager.org.apache.juli.AsyncFileHandler.prefix = manager.
4host-manager.org.apache.juli.AsyncFileHandler.level = FINE
4host-manager.org.apache.juli.AsyncFileHandler.directory = ${catalina.base}/logs
4host-manager.org.apache.juli.AsyncFileHandler.prefix = host-manager.
java.util.logging.ConsoleHandler.level = FINE
java.util.logging.ConsoleHandler.formatter = org.apache.juli.OneLineFormatter
############################################################
# Facility specific properties.
# Provides extra control for each logger.
############################################################
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].level = INFO
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].handlers = 2localhost.org.apache.juli.AsyncFileHandler
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].level = INFO
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].handlers = 3manager.org.apache.juli.AsyncFileHandler
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager].level = INFO
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager].handlers = 4host-manager.org.apache.juli.AsyncFileHandler
# For example, set the org.apache.catalina.util.LifecycleBase logger to log
# each component that extends LifecycleBase changing state:
#org.apache.catalina.util.LifecycleBase.level = FINE
# To see debug messages in TldLocationsCache, uncomment the following line:
#org.apache.jasper.compiler.TldLocationsCache.level = FINE
... ...
<?xml version='1.0' encoding='utf-8'?>
<!--
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.
-->
<!-- Note: A "Server" is not itself a "Container", so you may not
define subcomponents such as "Valves" at this level.
Documentation at /docs/config/server.html
-->
<Server port="810${yoho.gateway.env.serverport}" shutdown="SHUTDOWN">
<Listener className="org.apache.catalina.startup.VersionLoggerListener" />
<!-- Security listener. Documentation at /docs/config/listeners.html
<Listener className="org.apache.catalina.security.SecurityListener" />
-->
<!--APR library loader. Documentation at /docs/apr.html -->
<Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
<!-- Prevent memory leaks due to use of particular java/javax APIs-->
<Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener" />
<Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />
<Listener className="org.apache.catalina.core.ThreadLocalLeakPreventionListener" />
<!-- Global JNDI resources
Documentation at /docs/jndi-resources-howto.html
-->
<GlobalNamingResources>
<!-- Editable user database that can also be used by
UserDatabaseRealm to authenticate users
-->
<Resource name="UserDatabase" auth="Container"
type="org.apache.catalina.UserDatabase"
description="User database that can be updated and saved"
factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
pathname="conf/tomcat-users.xml" />
</GlobalNamingResources>
<!-- A "Service" is a collection of one or more "Connectors" that share
a single "Container" Note: A "Service" is not itself a "Container",
so you may not define subcomponents such as "Valves" at this level.
Documentation at /docs/config/service.html
-->
<Service name="Catalina">
<!--The connectors can use a shared executor, you can define one or more named thread pools-->
<!--
<Executor name="tomcatThreadPool" namePrefix="catalina-exec-"
maxThreads="150" minSpareThreads="4"/>
-->
<!-- A "Connector" represents an endpoint by which requests are received
and responses are returned. Documentation at :
Java HTTP Connector: /docs/config/http.html (blocking & non-blocking)
Java AJP Connector: /docs/config/ajp.html
APR (HTTP/AJP) Connector: /docs/apr.html
Define a non-SSL/TLS HTTP/1.1 Connector on port 8080
-->
<Connector port="808${yoho.gateway.env.serverport}" protocol="HTTP/1.1"
connectionTimeout="20000" maxThreads="800"
redirectPort="8443" />
<!-- A "Connector" using the shared thread pool-->
<!--
<Connector executor="tomcatThreadPool"
port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
-->
<!-- Define a SSL/TLS HTTP/1.1 Connector on port 8443
This connector uses the NIO implementation that requires the JSSE
style configuration. When using the APR/native implementation, the
OpenSSL style configuration is required as described in the APR/native
documentation -->
<!--
<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS" />
-->
<!-- Define an AJP 1.3 Connector on port 8009 -->
<Connector port="800${yoho.gateway.env.serverport}" protocol="AJP/1.3" redirectPort="8443" />
<!-- An Engine represents the entry point (within Catalina) that processes
every request. The Engine implementation for Tomcat stand alone
analyzes the HTTP headers included with the request, and passes them
on to the appropriate Host (virtual host).
Documentation at /docs/config/engine.html -->
<!-- You should set jvmRoute to support load-balancing via AJP ie :
<Engine name="Catalina" defaultHost="localhost" jvmRoute="jvm1">
-->
<Engine name="Catalina" defaultHost="localhost">
<!--For clustering, please take a look at documentation at:
/docs/cluster-howto.html (simple how to)
/docs/config/cluster.html (reference documentation) -->
<!--
<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>
-->
<!-- Use the LockOutRealm to prevent attempts to guess user passwords
via a brute-force attack -->
<Realm className="org.apache.catalina.realm.LockOutRealm">
<!-- This Realm uses the UserDatabase configured in the global JNDI
resources under the key "UserDatabase". Any edits
that are performed against this UserDatabase are immediately
available for use by the Realm. -->
<Realm className="org.apache.catalina.realm.UserDatabaseRealm"
resourceName="UserDatabase"/>
</Realm>
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true">
<!-- SingleSignOn valve, share authentication between web applications
Documentation at: /docs/config/valve.html -->
<!--
<Valve className="org.apache.catalina.authenticator.SingleSignOn" />
-->
<!-- Access log processes all example.
Documentation at: /docs/config/valve.html
Note: The pattern used is equivalent to using pattern="common" -->
<!--
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log" suffix=".txt"
pattern="%h %l %u %t &quot;%r&quot; %s %b" />
-->
<!--
<Context path="/" docBase="${yoho.gateway.env.webapphome}/.tomcat/webapps/${yoho.gateway.env.namespace}"
debug="0" reloadable="true" crossContext="true"/>
-->
</Host>
</Engine>
</Service>
</Server>
... ...
<?xml version="1.0" encoding="GBK"?>
<assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.1">
<id></id>
<baseDirectory></baseDirectory>
<formats>
<format>zip</format>
</formats>
<fileSets>
<fileSet>
<directory>src/main</directory>
<outputDirectory></outputDirectory>
<includes>
<include>bin/**</include>
</includes>
</fileSet>
<fileSet>
<directory>src/main</directory>
<outputDirectory></outputDirectory>
<includes>
<include>conf/**</include>
</includes>
</fileSet>
<fileSet>
<directory>../web/target</directory>
<outputDirectory></outputDirectory>
<includes>
<include>${project-name}-web.war</include>
</includes>
</fileSet>
</fileSets>
</assembly>
\ No newline at end of file
... ...
set JAVA_MEM_OPT= -Xms1024m -Xmx1024m -XX:MaxPermSize=128m -Djava.net.preferIPv4Stack=true
set JAVA_HOME=$yoho.env.javahome
set WEB_APP_HOME=/home/master/yohoufo-fore/deploy
rem set JAVA_DEBUG_OPT= -server -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,address=8082,server=y,suspend=n
rem SET JMX_FILE_ACL="%WEB_APP_HOME%\conf\jmx\*.properties"
rem CACLS %JMX_FILE_ACL% /t /c /p %USERNAME%:f
rem SET TIGER_JMX_OPT= -Dcom.sun.management.config.file=%WEB_APP_HOME%\conf\jmx\jmx_monitor_management.properties
rem SET JAVA_OPTS=%JAVA_OPTS% %TIGER_JMX_OPT%
... ...
#!/bin/bash
#@Authro Lijian
#@Date 2007-05-24
BASE_BIN_DIR=`dirname $0`
. $BASE_BIN_DIR/functions.sh
export JAVA_HOME=$yoho.env.javahome
export WEB_APP_HOME=/home/master/yohoufo-fore/deploy
export SERVER_PORT=0
export PRODUCTION_MODE="$yoho.env.productmode"
export SERVER_HOME=$yoho.env.serverhome
export SERVER_TYPE=$yoho.env.servertype
export SERVER_NAMESPACE=ufo
export NAMING_PORT=`expr 9000 + $SERVER_PORT`
export HTTP_SERVER_PORT=`expr 8080 + $SERVER_PORT`
export DEBUG_PORT=`expr 8800 + $SERVER_PORT`
export CHECK_SERVER_STARTUP_URL="http://127.0.0.1:$HTTP_SERVER_PORT/$SERVER_NAMESPACE/common/ok.jsp"
export STARTUP_SUCCESS_MSG="Server Online Resources ok"
export JAVA_OPTS=" -XX:-OmitStackTraceInFastThrow -Djava.awt.headless=true -Djava.net.preferIPv4Stack=true "
export JAVA_DEBUG_OPT=" -server -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,address=$DEBUG_PORT,server=y,suspend=n "
#jmx
export JMX_PORT=`expr 9600 + $SERVER_PORT`
export LOCAL_IP=`/sbin/ifconfig -a|grep inet|grep -v 127.0.0.1|grep -v inet6|awk '{print $2}'|tr -d "addr:"|awk 'NR==1 {print}'`
export CATALINA_OPTS="$CATALINA_OPTS -Djava.rmi.server.hostname=$LOCAL_IP -Dcom.sun.management.jmxremote.port=$JMX_PORT -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false"
if [ ! -e $JAVA_HOME ]; then
failed "********************************************************************"
failed "**Error: JAVA_HOME $JAVA_HOME not exist"
failed "********************************************************************"
exit 1
fi
if [ ! -e $SERVER_HOME ]; then
failed "********************************************************************"
failed "**Error: SERVER_HOME $SERVER_HOME not exist."
failed "********************************************************************"
exit 1
fi
#========end enviroment var define
if [ $PRODUCTION_MODE = "PRODUCT" ]; then
#after the environment of online is all 64-bit,the below if and else judgement can be delete
str=`file $JAVA_HOME/bin/java | grep 64-bit`
if [ -n "$str" ]; then
let memTotal=`cat /proc/meminfo |grep MemTotal|awk '{printf "%d", $2/1024 }'`
if [ $memTotal -gt 10000 ];then
#JAVA_MEM_OPTS=" -server -Xmx4000M -Xms4000M -Xmn600M -XX:PermSize=200M -XX:MaxPermSize=200M -Xss256K -XX:+DisableExplicitGC -XX:SurvivorRatio=1 -XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:+CMSParallelRemarkEnabled -XX:+UseCMSCompactAtFullCollection -XX:CMSFullGCsBeforeCompaction=0 -XX:+CMSClassUnloadingEnabled -XX:LargePageSizeInBytes=128M -XX:+UseFastAccessorMethods -XX:+UseCMSInitiatingOccupancyOnly -XX:CMSInitiatingOccupancyFraction=80 -XX:SoftRefLRUPolicyMSPerMB=0 -XX:+PrintGCDetails -XX:+PrintGCApplicationStoppedTime -Xloggc:$yoho.logs.basedir/ufo/gc.log -XX:+HeapDumpOnOutOfMemoryError -XX:+PrintTenuringDistribution -XX:HeapDumpPath=$yoho.logs.basedir/ufo/heapdump.hprof "
JAVA_MEM_OPTS=" -server -XX:+UseG1GC -Xmx2G -XX:MaxGCPauseMillis=10 -XX:+UnlockExperimentalVMOptions -XX:G1NewSizePercent=15 -XX:G1MaxNewSizePercent=30 -XX:SurvivorRatio=6 -XX:InitiatingHeapOccupancyPercent=30 -XX:G1MixedGCLiveThresholdPercent=50 -XX:G1HeapWastePercent=5 -XX:+PrintGCDetails -Xloggc:$yoho.logs.basedir/ufo/gc.log -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=$yoho.logs.basedir/fore/heapdump.hprof "
else
JAVA_MEM_OPTS=" -server -Xmx2496M -Xms2496M -Xmn512M -XX:MetaspaceSize=200M -XX:MaxMetaspaceSize=200M -Xss256K -XX:+DisableExplicitGC -XX:SurvivorRatio=3 -XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:+CMSParallelRemarkEnabled -XX:+UseCMSCompactAtFullCollection -XX:CMSFullGCsBeforeCompaction=0 -XX:+CMSClassUnloadingEnabled -XX:LargePageSizeInBytes=128M -XX:+UseFastAccessorMethods -XX:+UseCMSInitiatingOccupancyOnly -XX:CMSInitiatingOccupancyFraction=80 -XX:SoftRefLRUPolicyMSPerMB=0 -XX:+PrintGCDetails -XX:+PrintGCApplicationStoppedTime -Xloggc:$yoho.logs.basedir/ufo/gc.log -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=$WEB_APP_HOME/logs/heapdump.hprof "
fi
else
JAVA_MEM_OPTS=" -server -Xmx2496M -Xms2496M -Xmn512M -XX:MetaspaceSize=200M -XX:MaxMetaspaceSize=200M -Xss256K -XX:+DisableExplicitGC -XX:SurvivorRatio=3 -XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:+CMSParallelRemarkEnabled -XX:+UseCMSCompactAtFullCollection -XX:CMSFullGCsBeforeCompaction=0 -XX:+CMSClassUnloadingEnabled -XX:LargePageSizeInBytes=128M -XX:+UseFastAccessorMethods -XX:+UseCMSInitiatingOccupancyOnly -XX:CMSInitiatingOccupancyFraction=80 -XX:SoftRefLRUPolicyMSPerMB=0 -XX:+PrintGCDetails -XX:+PrintGCApplicationStoppedTime -Xloggc:$yoho.logs.basedir/ufo/gc.log -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=$WEB_APP_HOME/logs/heapdump.hprof "
fi
JAVA_OPTS=" $JAVA_OPTS $JAVA_MEM_OPTS "
elif [ $PRODUCTION_MODE = "TEST" ]; then
JAVA_MEM_OPTS=" -server -Xmx2496M -Xms2496M -Xmn512M -XX:MetaspaceSize=200M -XX:MaxMetaspaceSize=200M -Xss256K -XX:+DisableExplicitGC -XX:SurvivorRatio=3 -XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:+CMSParallelRemarkEnabled -XX:+UseCMSCompactAtFullCollection -XX:CMSFullGCsBeforeCompaction=0 -XX:+CMSClassUnloadingEnabled -XX:LargePageSizeInBytes=128M -XX:+UseFastAccessorMethods -XX:+UseCMSInitiatingOccupancyOnly -XX:CMSInitiatingOccupancyFraction=80 -XX:SoftRefLRUPolicyMSPerMB=0 -XX:+PrintGCDetails -XX:+PrintGCApplicationStoppedTime -Xloggc:$yoho.logs.basedir/ufo/gc.log -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=$WEB_APP_HOME/logs/heapdump.hprof "
JAVA_OPTS=" $JAVA_OPTS $JAVA_MEM_OPTS "
elif [ $PRODUCTION_MODE = "DEV" ]; then
#we shuold reduce resource usage on developing mode
JAVA_MEM_OPTS=" -server -Xms256m -Xmx256m "
JAVA_OPTS=" $JAVA_OPTS $JAVA_MEM_OPTS $JAVA_DEBUG_OPT "
else
failed "********************************************************************"
failed "**Error: \$PRODUCTION_MODE should be only: run, test, dev"
failed "********************************************************************"
exit 1
fi
JAVA_OPTS=" $JAVA_OPTS $SERVER_BASE_DIR "
... ...
#!/bin/bash
################################################################
#@Authro Lijian
#@Date 2007-05-24
#@Description:
# the script is on top level
# check if root run the script
################################################################
#if [ `id -u` = 0 ]
#then
# echo "****************************************************"
# echo "*Error: root (the superuser) can't run this script.*"
# echo "****************************************************"
# exit 1
#fi
cygwin=false
case "`uname`" in
CYGWIN*)
cygwin=true
;;
esac
if [ $cygwin = true ]
then
echo "****************************************************"
echo "*Error: Cygwin shell can't run this script.*********"
echo "****************************************************"
exit 1
fi
if [ -f /etc/sysconfig/init ]; then
. /etc/sysconfig/init
else
SETCOLOR_SUCCESS=
SETCOLOR_FAILURE=
SETCOLOR_WARNING=
SETCOLOR_NORMAL=
fi
success () {
if [ "$BOOTUP" = "color" ]; then
$SETCOLOR_SUCCESS
if [ -z "$*" ]; then
echo "ok"
else
echo -e "$*"
fi
$SETCOLOR_NORMAL
else
if [ -z "$*" ]; then
echo "ok"
else
echo -e "$*"
fi
fi
return
}
failed () {
if [ "$BOOTUP" = "color" ]; then
$SETCOLOR_FAILURE
if [ -z "$*" ]; then
echo "failed"
else
echo -e "$*"
fi
$SETCOLOR_NORMAL
else
if [ -z "$*" ]; then
echo "failed"
else
echo -e "$*"
fi
fi
return
}
warning () {
if [ "$BOOTUP" = "color" ]; then
$SETCOLOR_WARNING
if [ -z "$*" ]; then
echo "warning"
else
echo -e "$*"
fi
$SETCOLOR_NORMAL
else
if [ -z "$*" ]; then
echo "warning"
else
echo -e "$*"
fi
fi
return
}
remove_ipcs () {
pid=$*
who=`whoami`
if [ -z $pid ]; then
warning "Warning: Removed share memory and semaphore--gived pid is NULL"
return
fi
shmids=`ipcs -mp |grep -P "\d+[ ]+$who[ ]+$pid" |awk '{print $1}'`
for id in $shmids ; do
ipcrm -m $id
done
shsemids=`ipcs -sp |grep -P "\d+[ ]+$who[ ]+$pid" |awk '{print $1}'`
for id in $shsemids ; do
ipcrm -s $id
done
}
printProcess() {
times=$*
if [ -z $times ]; then
times=1
fi
for (( i=0; i<$times; i=i+1 ))
do
echo -e ".\c"
sleep 1
done
}
... ...
@echo off
@if not "%ECHO%" == "" echo %ECHO%
@if "%OS%" == "Windows_NT" setlocal
set ENV_PATH=.\
if "%OS%" == "Windows_NT" set ENV_PATH=%~dp0%
call %ENV_PATH%\env.bat
set JAVA_OPTS=%JAVA_MEM_OPT% %JBOSS_SERVER_BASE_DIR% %JAVA_DEBUG_OPT% %TIGER_JMX_OPT%
if not exist %JBOSS_BASE_DIR% (
XCOPY "%JBOSS_HOME%\standalone\." "%JBOSS_BASE_DIR%\." /EIKQ
)
rem COPY "%WEB_APP_HOME%\conf\jboss\deploy\jboss-web.deployer\server.xml" "%JBOSS_SERVER_HOME%\deploy\jboss-web.deployer\server.xml" /Y
rem COPY "%WEB_APP_HOME%\conf\jboss\jboss-service.xml" "%JBOSS_SERVER_HOME%\conf\jboss-service.xml" /Y
COPY "%WEB_APP_HOME%\conf\jboss\standalone.xml" "%JBOSS_BASE_DIR%\configuration\standalone.xml" /Y
XCOPY "%WEB_APP_HOME%\web.ear\." "%JBOSS_BASE_DIR%\deployments\web.ear\." /EIKQ
echo "" > %JBOSS_BASE_DIR%\deployments\web.ear.dodeploy
REM cls screen
REM CLS
call %JBOSS_HOME%\bin\standalone.bat
... ...
#!/bin/bash
################################################################
#@Authro Lijian
#@Date 2007-05-29
################################################################
BASE_BIN_DIR=`dirname $0`
. $BASE_BIN_DIR/env.sh
TIMESTAMP=`date +%Y_%m_%d_%H_%M`
LOG_DIR=$WEB_APP_HOME/logs
LOGS_SAVED=$LOG_DIR/logs_saved
JBOSS_STDOUT_LOG=$LOG_DIR/jboss_stdout.log
JBOSS_BASE_DIR=$WEB_APP_HOME/.jboss/default
#################################################################
#backup logs
if [ ! -d $LOGS_SAVED ]; then
mkdir -p $LOGS_SAVED
fi
if [ -f $JBOSS_STDOUT_LOG ]; then
mv -f $JBOSS_STDOUT_LOG $LOGS_SAVED/jboss_stdout.log.$TIMESTAMP
fi
##check if started before
java_pid=`ps --no-heading -C java -f --width 1000 | grep "$JBOSS_BASE_DIR" |awk '{print $2}'`
if [ ! -z "$java_pid" ]; then
echo "Jboss server already started: pid=$java_pid"
exit;
fi
#########################################copy server home
if [ ! -d "$JBOSS_BASE_DIR" ]; then
rm -f $JBOSS_BASE_DIR
mkdir -p $JBOSS_BASE_DIR
cp -rf $SERVER_HOME/standalone/. $JBOSS_BASE_DIR/.
else
rm -rf $JBOSS_BASE_DIR/tmp
rm -rf $JBOSS_BASE_DIR/data
rm -rf $JBOSS_BASE_DIR/log
fi
deploy
##jmx controle file must be read only else jvm can not startup
chmod 600 $WEB_APP_HOME/conf/jmx/*.properties > /dev/null 2>&1
nohup $SERVER_HOME/bin/standalone.sh
################################################################
copy_jboss_conf(){
cp -rf $WEB_APP_HOME/conf/jboss/standalone.xml $JBOSS_BASE_DIR/configuration/standalone.xml
}
deploy_ear(){
rm -rf $JBOSS_BASE_DIR/deployments/web.ear
rm -rf $JBOSS_BASE_DIR/deployments/web.ear.*
cp -rf $JBOSS_BASE_DIR/web.ear $JBOSS_BASE_DIR/deployments/web.ear
touch $JBOSS_BASE_DIR/deployments/web.ear.dodeploy
}
deploy(){
copy_jboss_conf
deploy_ear
}
\ No newline at end of file
... ...
#!/bin/bash
################################################################
#@Authro Lijian
#@Date 2007-05-22
################################################################
BASE_BIN_DIR=`dirname $0`
#import home var env
. $BASE_BIN_DIR/env.sh
TIMESTAMP=`date +%Y_%m_%d_%H:%M`
HOST_NAME=`hostname`
LOG_DIR=$WEB_APP_HOME/logs
JBOSS_CHECK_LOG="$LOG_DIR/jboss_stdout.log"
JBOSS_BASE_DIR=$WEB_APP_HOME/.jboss/default
TOMCAT_BASE_DIR=$WEB_APP_HOME/.tomcat
stop_jboss()
{
JBOSS_JAVA_PID=`get_jboss_pid`
if [ ! -z "$JBOSS_JAVA_PID" ] ; then
echo -e "[INFO] $HOST_NAME: stopping jboss ...\c"
$JBOSS_HOME/bin/jboss-cli.sh --connect controller=localhost:$NAMING_PORT command=:shutdown > /dev/null 2>&1
LOOPS=0
while [ $LOOPS -lt 30 ]; do
printProcess
kill -s 0 $JBOSS_JAVA_PID > /dev/null 2>&1
if [ $? -eq 1 ]; then
break
fi
let LOOPS=LOOPS+1
done
JBOSS_JAVA_PID=`get_jboss_pid`
if [ ! -z "$JBOSS_JAVA_PID" ] ; then
echo -e "[INFO] kill java process $JBOSS_JAVA_PID .\c"
kill -9 $JBOSS_JAVA_PID > /dev/null 2>&1
fi
success "Oook!"
else
warning "[WARN] $HOST_NAME: jboss not running, who care?"
fi
}
get_jboss_pid(){
STR=`ps -C java -f --width 1000 | grep "$JBOSS_BASE_DIR"|awk '{print $2}'`
echo $STR
}
get_tomcat_pid(){
STR=`ps -C java -f --width 1000 | grep "$TOMCAT_BASE_DIR"|awk '{print $2}'`
echo $STR
}
stop_tomcat(){
TOMCAT_JAVA_PID=`get_tomcat_pid`
if [ ! -z "$TOMCAT_JAVA_PID" ] ; then
#echo -e "$HOST_NAME: stopping tomcat ...\c"
#$SERVER_HOME/bin/catalina.sh stop > /dev/null 2>&1
#LOOPS=0
#while [ $LOOPS -lt 30 ]; do
#printProcess
#kill -s 0 $TOMCAT_JAVA_PID > /dev/null 2>&1
#if [ $? -eq 1 ]; then
#break
#fi
#let LOOPS=LOOPS+1
#done
#TOMCAT_JAVA_PID=`get_tomcat_pid`
#if [ ! -z "$TOMCAT_JAVA_PID" ] ; then
echo -e "[INFO] kill java process $TOMCAT_JAVA_PID .\c"
kill -9 $TOMCAT_JAVA_PID > /dev/null 2>&1
#fi
success "Oook!"
else
warning "[WARN] $HOST_NAME: tomcat not running, who care?"
fi
}
if [ $SERVER_TYPE = "jboss" ]; then
stop_jboss
fi
if [ $SERVER_TYPE = "tomcat" ]; then
stop_tomcat
fi
... ...
#!/bin/bash
################################################################
#@Authro Lijian
#@Date 2007-05-25
################################################################
BASE_BIN_DIR=`dirname $0`
. $BASE_BIN_DIR/env.sh
HOST_NAME=`hostname`
JBOSS_CTL=$BASE_BIN_DIR/jbossctl.sh
TOMCAT_CTL=$BASE_BIN_DIR/tomcatctl.sh
## start jboss
start_jboss(){
echo -e "[INFO] $HOST_NAME: starting jboss ...\c"
chmod +x $BASE_BIN_DIR/jbossctl.sh
$JBOSS_CTL > $JBOSS_STDOUT_LOG 2>&1 &
COUNT=0
printProcess 5
while [ $COUNT -lt 1 ]; do
COUNT=`curl -s $CHECK_SERVER_STARTUP_URL |grep -c "$STARTUP_SUCCESS_MSG"`
printProcess 3
done
success "Oook!"
}
## start tomcat
start_tomcat(){
echo -e "[INFO] $HOST_NAME: starting tomcat ...\c"
chmod +x $BASE_BIN_DIR/tomcatctl.sh
$TOMCAT_CTL &
COUNT=0
printProcess 5
while [ $COUNT -lt 1 ]; do
COUNT=`curl -s $CHECK_SERVER_STARTUP_URL |grep -c "$STARTUP_SUCCESS_MSG"`
printProcess 3
done
success "Oook!"
}
if [ $SERVER_TYPE = "jboss" ]; then
start_jboss
fi
if [ $SERVER_TYPE = "tomcat" ]; then
start_tomcat
fi
success "[INFO] $HOSTNAME: startup web server done!"
\ No newline at end of file
... ...
@echo off
@if not "%ECHO%" == "" echo %ECHO%
@if "%OS%" == "Windows_NT" setlocal
set ENV_PATH=.\
if "%OS%" == "Windows_NT" set ENV_PATH=%~dp0%
call %ENV_PATH%\env.bat
set JAVA_OPTS=%JAVA_MEM_OPT% -Dcatalina.base=%CATALINA_BASE% %JAVA_DEBUG_OPT% %TIGER_JMX_OPT%
set PATH=%JAVA_HOME%\bin;%PATH%
if not exist %CATALINA_BASE% (
md "%CATALINA_BASE%"
md "%CATALINA_BASE%\conf"
md "%CATALINA_BASE%\webapps"
)
XCOPY "%CATALINA_HOME%\conf\." "%CATALINA_BASE%\conf\." /EIKQ
COPY "%WEB_APP_HOME%\conf\tomcat\server.xml" "%CATALINA_BASE%\conf\server.xml" /Y
COPY "%WEB_APP_HOME%\*.war" "%CATALINA_BASE%\webapps\." /Y
call %CATALINA_HOME%\bin\catalina.bat start
\ No newline at end of file
... ...
#!/bin/bash
################################################################
#@Authro Lijian
#@Date 2015-10-22
################################################################
BASE_BIN_DIR=`dirname $0`
. $BASE_BIN_DIR/env.sh
export CATALINA_HOME=$SERVER_HOME
export CATALINA_BASE=$WEB_APP_HOME/.tomcat
################################################################
##check if started before
check_server(){
java_pid=`ps --no-heading -C java -f --width 1000 | grep "$$CATALINA_BASE" |awk '{print $2}'`
if [ ! -z "$java_pid" ]; then
echo "[INFO] Tomcat server already started: pid=$java_pid"
exit;
fi
}
copy_server_home(){
if [ -d "$CATALINA_BASE" ]; then
rm -rf $CATALINA_BASE
fi
mkdir -p $CATALINA_BASE/conf
mkdir -p $CATALINA_BASE/webapps
mkdir -p $CATALINA_BASE/logs
mkdir -p $CATALINA_BASE/temp
touch $CATALINA_BASE/logs/catalina.out
}
copy_tomcat_conf(){
cp -rf $SERVER_HOME/conf/. $CATALINA_BASE/conf/.
cp -rf $WEB_APP_HOME/conf/tomcat/server.xml $CATALINA_BASE/conf/server.xml
}
copy_war(){
if [ ! -d $WEB_APP_HOME/$SERVER_NAMESPACE-war ]; then
mkdir -p $WEB_APP_HOME/$SERVER_NAMESPACE-war
cd $WEB_APP_HOME/$SERVER_NAMESPACE-war
mv $WEB_APP_HOME/*.war $WEB_APP_HOME/$SERVER_NAMESPACE-war/$SERVER_NAMESPACE.war
$JAVA_HOME/bin/jar xf $SERVER_NAMESPACE.war
rm -rf $WEB_APP_HOME/$SERVER_NAMESPACE-war/$SERVER_NAMESPACE.war
fi
cp -r $WEB_APP_HOME/$SERVER_NAMESPACE-war $CATALINA_BASE/webapps/$SERVER_NAMESPACE
}
deploy(){
check_server
copy_server_home
copy_tomcat_conf
copy_war
}
###############################################################
deploy
$SERVER_HOME/bin/catalina.sh start > /dev/null
\ No newline at end of file
... ...
<?xml version='1.0' encoding='utf-8'?>
<!--
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.
-->
<!-- Note: A "Server" is not itself a "Container", so you may not
define subcomponents such as "Valves" at this level.
Documentation at /docs/config/server.html
-->
<Server port="8100" shutdown="SHUTDOWN">
<Listener className="org.apache.catalina.startup.VersionLoggerListener" />
<!-- Security listener. Documentation at /docs/config/listeners.html
<Listener className="org.apache.catalina.security.SecurityListener" />
-->
<!--APR library loader. Documentation at /docs/apr.html -->
<Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
<!-- Prevent memory leaks due to use of particular java/javax APIs-->
<Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener" />
<Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />
<Listener className="org.apache.catalina.core.ThreadLocalLeakPreventionListener" />
<!-- Global JNDI resources
Documentation at /docs/jndi-resources-howto.html
-->
<GlobalNamingResources>
<!-- Editable user database that can also be used by
UserDatabaseRealm to authenticate users
-->
<Resource name="UserDatabase" auth="Container"
type="org.apache.catalina.UserDatabase"
description="User database that can be updated and saved"
factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
pathname="conf/tomcat-users.xml" />
</GlobalNamingResources>
<!-- A "Service" is a collection of one or more "Connectors" that share
a single "Container" Note: A "Service" is not itself a "Container",
so you may not define subcomponents such as "Valves" at this level.
Documentation at /docs/config/service.html
-->
<Service name="Catalina">
<!--The connectors can use a shared executor, you can define one or more named thread pools-->
<!--
<Executor name="tomcatThreadPool" namePrefix="catalina-exec-"
maxThreads="150" minSpareThreads="4"/>
-->
<!-- A "Connector" represents an endpoint by which requests are received
and responses are returned. Documentation at :
Java HTTP Connector: /docs/config/http.html (blocking & non-blocking)
Java AJP Connector: /docs/config/ajp.html
APR (HTTP/AJP) Connector: /docs/apr.html
Define a non-SSL/TLS HTTP/1.1 Connector on port 8080
-->
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000" maxThreads="800"
redirectPort="8443" />
<!-- A "Connector" using the shared thread pool-->
<!--
<Connector executor="tomcatThreadPool"
port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
-->
<!-- Define a SSL/TLS HTTP/1.1 Connector on port 8443
This connector uses the NIO implementation that requires the JSSE
style configuration. When using the APR/native implementation, the
OpenSSL style configuration is required as described in the APR/native
documentation -->
<!--
<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS" />
-->
<!-- Define an AJP 1.3 Connector on port 8009 -->
<Connector port="8000" protocol="AJP/1.3" redirectPort="8443" />
<!-- An Engine represents the entry point (within Catalina) that processes
every request. The Engine implementation for Tomcat stand alone
analyzes the HTTP headers included with the request, and passes them
on to the appropriate Host (virtual host).
Documentation at /docs/config/engine.html -->
<!-- You should set jvmRoute to support load-balancing via AJP ie :
<Engine name="Catalina" defaultHost="localhost" jvmRoute="jvm1">
-->
<Engine name="Catalina" defaultHost="localhost">
<!--For clustering, please take a look at documentation at:
/docs/cluster-howto.html (simple how to)
/docs/config/cluster.html (reference documentation) -->
<!--
<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>
-->
<!-- Use the LockOutRealm to prevent attempts to guess user passwords
via a brute-force attack -->
<Realm className="org.apache.catalina.realm.LockOutRealm">
<!-- This Realm uses the UserDatabase configured in the global JNDI
resources under the key "UserDatabase". Any edits
that are performed against this UserDatabase are immediately
available for use by the Realm. -->
<Realm className="org.apache.catalina.realm.UserDatabaseRealm"
resourceName="UserDatabase"/>
</Realm>
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true">
<!-- SingleSignOn valve, share authentication between web applications
Documentation at: /docs/config/valve.html -->
<!--
<Valve className="org.apache.catalina.authenticator.SingleSignOn" />
-->
<!-- Access log processes all example.
Documentation at: /docs/config/valve.html
Note: The pattern used is equivalent to using pattern="common" -->
<!--
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log" suffix=".txt"
pattern="%h %l %u %t &quot;%r&quot; %s %b" />
-->
<!--
<Context path="/" docBase="/home/master/yoho-gateway/deploy/.tomcat/webapps/gateway"
debug="0" reloadable="true" crossContext="true"/>
-->
</Host>
</Engine>
</Service>
</Server>
... ...
<?xml version="1.0" encoding="UTF-8"?>
<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>
<artifactId>yohoufo-fore-parent</artifactId>
<groupId>com.yohoufo.fore</groupId>
<version>1.0.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>yohoufo-fore-order</artifactId>
<name>yohoufo-fore-order</name>
<dependencies>
<dependency>
<groupId>com.yohoufo.fore</groupId>
<artifactId>yohoufo-fore-common</artifactId>
</dependency>
<dependency>
<groupId>com.yoho.service.model</groupId>
<artifactId>order-service-model</artifactId>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
</dependency>
</dependencies>
</project>
\ No newline at end of file
... ...
/target/
... ...
<?xml version="1.0" encoding="UTF-8"?>
<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>
<artifactId>yohoufo-fore-parent</artifactId>
<groupId>com.yohoufo.fore</groupId>
<version>1.0.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>yohoufo-fore-payment</artifactId>
<name>yohoufo-fore-payment</name>
<dependencies>
<dependency>
<groupId>com.yohoufo.fore</groupId>
<artifactId>yohoufo-fore-common</artifactId>
</dependency>
<dependency>
<groupId>com.yohoufo.fore</groupId>
<artifactId>yohoufo-fore-order</artifactId>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
</dependency>
</dependencies>
</project>
\ No newline at end of file
... ...
<?xml version="1.0" encoding="UTF-8"?>
<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>com.yoho</groupId>
<artifactId>parent</artifactId>
<version>1.4.4-SNAPSHOT</version>
</parent>
<groupId>com.yohoufo.fore</groupId>
<artifactId>yohoufo-fore-parent</artifactId>
<version>1.0.0-SNAPSHOT</version>
<packaging>pom</packaging>
<properties>
<qiniu.version>7.0.5</qiniu.version>
<project-name>com.yohoufo.fore</project-name>
</properties>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>com.yohoufo.fore</groupId>
<artifactId>yohoufo-fore-common</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>com.yohoufo.fore</groupId>
<artifactId>yohoufo-fore-user</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>com.yohoufo.fore</groupId>
<artifactId>yohoufo-fore-order</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>com.yohoufo.fore</groupId>
<artifactId>yohoufo-fore-product</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>com.yohoufo.fore</groupId>
<artifactId>yohoufo-fore-payment</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>com.yohoufo.fore</groupId>
<artifactId>yohoufo-fore-web</artifactId>
<version>${project.version}</version>
</dependency>
</dependencies>
</dependencyManagement>
<modules>
<module>common</module>
<module>users</module>
<module>order</module>
<module>product</module>
<module>sns</module>
<module>promotion</module>
<module>cms</module>
<module>seller</module>
<module>message</module>
<module>guide</module>
<module>favorite</module>
<module>payment</module>
<module>backend</module>
<module>platform</module>
<module>union</module>
<module>activity</module>
<module>web</module>
<module>deploy</module>
<module>wechat</module>
</modules>
</project>
\ No newline at end of file
... ...
<?xml version="1.0" encoding="UTF-8"?>
<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>
<artifactId>yohoufo-fore-parent</artifactId>
<groupId>com.yohoufo.fore</groupId>
<version>1.0.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>yohoufo-fore-product</artifactId>
<name>yohoufo-fore-product</name>
<dependencies>
<dependency>
<groupId>com.yohoufo.fore</groupId>
<artifactId>yohoufo-fore-common</artifactId>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
</dependency>
</dependencies>
</project>
\ No newline at end of file
... ...
### web.xml中的配置
#### `spring active profile` 配置
```xml
<context-param>
<param-name>spring.profiles.active</param-name>
<param-value>local,production</param-value>
</context-param>
```
配置说明:
- 服务调用方式, 范围: (`local`, `zookeeper`), 影响: 1.服务调用的客户端和服务端基本本地文件还是`zookeeper`
- 生产环境还是测试环节: 范围: (`production`, `test` ), 影响: 未启用
#### 如何不校验client_security?
- 配置gateway目录下 `WEB-INF\classes\config.properties`中的`is_debug_enable=true`. 然后重启
... ...
/target/
... ...
<?xml version="1.0" encoding="UTF-8"?>
<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>
<artifactId>yohoufo-fore-parent</artifactId>
<groupId>com.yohoufo.fore</groupId>
<version>1.0.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>yohoufo-fore-user</artifactId>
<name>yohoufo-fore-user</name>
<dependencies>
<dependency>
<groupId>com.yohoufo.fore</groupId>
<artifactId>yohoufo-fore-common</artifactId>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
</dependency>
<dependency>
<groupId>com.yoho.common</groupId>
<artifactId>error-code</artifactId>
</dependency>
<dependency>
<groupId>com.yoho.core</groupId>
<artifactId>yoho-core-common</artifactId>
</dependency>
<dependency>
<groupId>com.yoho.core</groupId>
<artifactId>yoho-core-rabbitmq</artifactId>
</dependency>
<dependency>
<groupId>commons-lang</groupId>
<artifactId>commons-lang</artifactId>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.4</version>
</dependency>
<dependency>
<groupId>commons-net</groupId>
<artifactId>commons-net</artifactId>
</dependency>
<dependency>
<groupId>com.yoho.core</groupId>
<artifactId>yoho-core-rest-client-simple</artifactId>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aop</artifactId>
</dependency>
<dependency>
<groupId>com.netflix.archaius</groupId>
<artifactId>archaius-core</artifactId>
</dependency>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
</dependency>
<dependency>
<groupId>commons-collections</groupId>
<artifactId>commons-collections</artifactId>
</dependency>
<dependency>
<groupId>org.jdom</groupId>
<artifactId>jdom</artifactId>
<version>1.1</version>
</dependency>
<dependency>
<groupId>commons-httpclient</groupId>
<artifactId>commons-httpclient</artifactId>
<version>3.1</version>
</dependency>
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpmime</artifactId>
<version>4.3.6</version>
</dependency>
<dependency>
<groupId>dom4j</groupId>
<artifactId>dom4j</artifactId>
<version>1.6.1</version>
</dependency>
<dependency>
<groupId>org.bouncycastle</groupId>
<artifactId>bcprov-jdk16</artifactId>
<version>1.46</version>
</dependency>
<dependency>
<groupId>com.yoho.core</groupId>
<artifactId>yoho-core-message</artifactId>
</dependency>
<dependency>
<groupId>com.squareup.retrofit</groupId>
<artifactId>retrofit</artifactId>
<version>1.9.0</version>
</dependency>
<dependency>
<groupId>com.yoho.dsf.uic</groupId>
<artifactId>uic-client</artifactId>
<version>1.0.0-SNAPSHOT</version>
</dependency>
<!-- 部分controller挪过来需要要到service中的vo,等所有controller挪过来后,去除该dependency -->
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
</dependency>
</dependencies>
</project>
\ No newline at end of file
... ...
/target/
/.settings/
.project
*.iml
\ No newline at end of file
... ...
<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://maven.apache.org/POM/4.0.0"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<parent>
<artifactId>yohoufo-fore-parent</artifactId>
<groupId>com.yohoufo.fore</groupId>
<version>1.0.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>yohoufo-fore-web</artifactId>
<packaging>war</packaging>
<name>yohoufo-fore-web</name>
<dependencies>
<dependency>
<groupId>com.yohoufo.fore</groupId>
<artifactId>yohoufo-fore-user</artifactId>
</dependency>
<dependency>
<groupId>com.yohoufo.fore</groupId>
<artifactId>yohoufo-fore-order</artifactId>
</dependency>
<dependency>
<groupId>com.yohoufo.fore</groupId>
<artifactId>yohoufo-fore-product</artifactId>
</dependency>
<dependency>
<groupId>com.yoho.core</groupId>
<artifactId>yoho-core-trace</artifactId>
</dependency>
<dependency>
<groupId>com.yoho.core</groupId>
<artifactId>yoho-core-common</artifactId>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>jcl-over-slf4j</artifactId>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
</dependency>
<!-- 去除版本 -->
<dependency>
<groupId>com.github.jknack</groupId>
<artifactId>handlebars</artifactId>
</dependency>
<dependency>
<groupId>com.github.jknack</groupId>
<artifactId>handlebars-springmvc</artifactId>
</dependency>
<dependency>
<groupId>com.netflix.hystrix</groupId>
<artifactId>hystrix-metrics-event-stream</artifactId>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>commons-codec</groupId>
<artifactId>commons-codec</artifactId>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-pool2</artifactId>
<version>2.2</version>
</dependency>
</dependencies>
<build>
<finalName>yohoufo-fore-web</finalName>
<plugins>
<plugin>
<groupId>com.yoho.tools</groupId>
<artifactId>maven-autoconfig-plugin</artifactId>
<version>1.0.0-SNAPSHOT</version>
<configuration>
<exploding>true</exploding>
</configuration>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>autoconfig</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
... ...
<beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:rabbit="http://www.springframework.org/schema/rabbit"
xmlns="http://www.springframework.org/schema/beans"
xsi:schemaLocation="http://www.springframework.org/schema/rabbit
http://www.springframework.org/schema/rabbit/spring-rabbit.xsd
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd">
<!--<bean id="simpleMessageConverter-common" class="org.springframework.amqp.support.converter.SimpleMessageConverter"/>-->
<!--<rabbit:connection-factory id="rabbitmq-connectionFactory-common" addresses="${rabbit_common:127.0.0.1:5672}"-->
<!--username="${rabbit_common_user:yoho}" password="${rabbit_common_password:yoho}"-->
<!--virtual-host="${rabbit_vhost:yoho}"/>-->
<!--<rabbit:template id="amqpTemplate-common" connection-factory="rabbitmq-connectionFactory-common"-->
<!--message-converter="simpleMessageConverter-common"/>-->
<!--&lt;!&ndash;发送消息 &ndash;&gt;-->
<!--<bean id="producerTemplate-common" class="com.yoho.gateway.common.mq.YhProducerTemplateCommon">-->
<!--<property name="amqpTemplate" ref="amqpTemplate-common"/>-->
<!--<property name="asyncEnable" value="false"></property>-->
<!--</bean>-->
</beans>
\ No newline at end of file
... ...
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xmlns:task="http://www.springframework.org/schema/task" xmlns:util="http://www.springframework.org/schema/util"
xmlns:aop="http://www.springframework.org/schema/aop" xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p"
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.xsd
http://www.springframework.org/schema/util
http://www.springframework.org/schema/util/spring-util.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop.xsd
http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc.xsd
http://www.springframework.org/schema/task
http://www.springframework.org/schema/task/spring-task.xsd">
<aop:aspectj-autoproxy />
<context:property-placeholder ignore-resource-not-found="true" location="classpath*:config.properties" />
<context:component-scan base-package="com.yoho.gateway" />
<!-- 启动SpringMVC的注解功能,完成请求和注解POJO的映射 -->
<mvc:annotation-driven>
<mvc:message-converters register-defaults="false">
<ref bean="stringConverter" />
<ref bean="jsonConverter" />
</mvc:message-converters>
</mvc:annotation-driven>
<!--<bean id="bigDataRedisTemplate"-->
<!--class="org.springframework.data.redis.core.RedisTemplate" primary="true"-->
<!--p:connectionFactory-ref="bigDataJedisConnectionFactory"-->
<!--p:keySerializer-ref="stringRedisSerializer"-->
<!--p:valueSerializer-ref="stringRedisSerializer"/>-->
<!--<bean id="bigDataJedisConnectionFactory" class="org.springframework.data.redis.connection.jedis.JedisConnectionFactory"-->
<!--p:timeout="150"-->
<!--p:poolConfig-ref="jedisPoolConfig"-->
<!--p:hostName="${bigDataRedis.proxy.address}"-->
<!--p:port="${bigDataRedis.proxy.port}"-->
<!--p:password="${bigDataRedis.proxy.auth}"-->
<!--p:database="${bigDataRedis.proxy.database:0}" primary="true" />-->
<!--&lt;!&ndash; pool config &ndash;&gt;-->
<!--<bean id="jedisPoolConfig" class="redis.clients.jedis.JedisPoolConfig">-->
<!--<property name="maxTotal" value="100" />-->
<!--<property name="maxIdle" value="100" />-->
<!--<property name="minIdle" value="50" />-->
<!--<property name="maxWaitMillis" value="${bigDataRedis.pool.maxWaitMillis:2000}" />-->
<!--<property name="testOnBorrow" value="${bigDataRedis.pool.testOnBorrow:false}" />-->
<!--<property name="testWhileIdle" value="${bigDataRedis.pool.testWhileIdle:false}" />-->
<!--</bean>-->
<bean id="stringRedisSerializer"
class="org.springframework.data.redis.serializer.StringRedisSerializer"/>
<!-- byte[] 转换器 -->
<bean class="org.springframework.http.converter.ByteArrayHttpMessageConverter"/>
<!--字符串转换器 -->
<bean id="stringConverter" class="org.springframework.http.converter.StringHttpMessageConverter">
<property name="supportedMediaTypes">
<list>
<value>text/plain;charset=UTF-8</value>
<value>text/html;charset=UTF-8</value>
</list>
</property>
</bean>
<!-- json转换器 application/json -->
<bean id="jsonConverter" class="com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter">
<property name="supportedMediaTypes" value="application/json;charset=UTF-8"/>
<property name="features">
<array value-type="com.alibaba.fastjson.serializer.SerializerFeature">
<value>DisableCircularReferenceDetect</value>
</array>
</property>
</bean>
<bean id="DisableCircularReferenceDetect" class="org.springframework.beans.factory.config.FieldRetrievingFactoryBean">
<property name="staticField" value="com.alibaba.fastjson.serializer.SerializerFeature.DisableCircularReferenceDetect"></property>
</bean>
<!-- 配置MultipartResolver 用于文件上传 使用spring的CommosMultipartResolver -->
<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<property name="defaultEncoding" value="UTF-8"></property>
<property name="maxUploadSize" value="${file.maxsize}"></property>
<property name="uploadTempDir" value="${file.uploadTempDir}"></property>
<property name="resolveLazily" value="true"></property>
</bean>
<task:annotation-driven executor="myExecutor"
scheduler="myScheduler" />
<task:executor id="myExecutor" pool-size="5" />
<task:scheduler id="myScheduler" pool-size="10" />
<util:map id="stroSysMap" key-type="java.lang.String" value-type="com.yoho.gateway.common.service.StroSystemService">
<entry key="QINIU" value-ref="qNSystemServiceImpl"></entry>
</util:map>
<util:list id="stroSysList">
<ref bean="qNSystemServiceImpl" />
</util:list>
<bean id="handlebarsViewResolver" class="com.github.jknack.handlebars.springmvc.HandlebarsViewResolver">
<property name="prefix" value="classpath:/conf/template" />
<property name="suffix" value=".html" />
<property name="contentType" value="text/html;charset=UTF-8" />
</bean>
<bean id="abtestAspect" class="com.yoho.gateway.common.abtest.aspect.ABTestAspect" />
<!-- api文档配置 start -->
<!-- api文档配置 注解扫描器 -->
<bean id="yohoApiAnnotationScanner" class="com.yoho.tools.docs.YohoApiAnnotationScanner" >
<!-- api文档配置 类名过滤器(正则)多个模式用英文逗号隔开 -->
<property name="classFilterReg" value="${yoho.api.docs.filter:^.*$}" />
<property name="scanSwitch" value="${yoho.api.docs.switch:off}" />
</bean>
<!-- api文档配置 end -->
<!--Spring mvc 拦截器-->
<mvc:interceptors>
<ref bean="accessLogInterceptor"/>
<ref bean="trace.traceInterceptor"/>
<ref bean="threadProfileInterceptor"/>
<ref bean="localIpInterceptor" />
<ref bean="securityInterceptor" />
<ref bean="signatureVerifyInterceptor" />
<ref bean="accessStatistics"/>
<ref bean="productBrowserStatistic"/>
<ref bean="httpRequestInterceptor"/>
<ref bean="innerApiInterceptor"/>
</mvc:interceptors>
</beans>
\ No newline at end of file
... ...
# ******************** gateway common configs ********************
# if true, client_security check may be disabled.
is_debug_enable=true
is_checksession_enable=false
file.maxsize=5400000
file.uploadTempDir=/Users/ming/source/logs
#file.saveDir=/Users/apple/Documents/uploadFile
file.saveDir=E:\\tmp\\image
# ******************** cloud storage config ********************
# qiniu config
qiniu.domain=http://yhfair.qiniudn.com
qiniu.accesskey=atSf7xxIl8alEnsXbhC1bOD1GWVW3qYffz8SlB4m
qiniu.secretkey=pyoJzPygXIkFWrc1BAsH6tAJ0yweTchpJwGKEwhm
qiniu.bucket=yhfair
#self own brand
self.own.brand=208,518,350,443,450,444,256,396,257,302,560,591,598,261,583,550,614,562,570,678,672,481,464,397,520,543,701,751,689,467,153,516,335
# ******************** redis servers ********************
redis.proxy.address=192.168.102.45
redis.proxy.port=6379
#password, can be empty
redis.proxy.auth=
redis.readonly.proxy.address=192.168.102.45
redis.readonly.proxy.port=6379
redis.readonly.proxy.auth=
redis.pool.maxTotal=100
redis.pool.maxIdle=100
redis.pool.maxWaitMillis=2000
redis.pool.minIdle=50
redis.pool.testOnBorrow=false
redis.pool.testWhileIdle=true
# ******************** bigData redis servers ********************
#bigDataRedis.proxy.address=123.57.14.54
bigDataRedis.proxy.address=172.31.57.56
bigDataRedis.proxy.port=6379
#password, can be empty
bigDataRedis.proxy.auth=
bigDataRedis.pool.maxTotal=100
bigDataRedis.pool.maxIdle=100
bigDataRedis.pool.maxWaitMillis=2000
bigDataRedis.pool.minIdle=50
bigDataRedis.pool.testOnBorrow=false
bigDataRedis.pool.testWhileIdle=true
# ******************** service call timeout in mil-seconds ********************
service.call.connectReqTimeout=6000
service.call.socketTimeout=6000
service.call.connectTimeout=6000
yoho.logs.basedir=Data
yoho.gateway.env.namespace=logs
yoho.logs.maxFileSize=100MB
yoho.logs.maxHistory=15
`
# ******************** search restful ********************
#search server ip and port(if hava)
#ip.port.search.server=182.92.99.119:8080
ip.port.search.server=192.168.102.216:8080
ip.port.search.photo.search=172.16.9.115:8888
ip.port.search.photo.search.new=10.67.90.13:8000
# ******************** product html5 ********************
h5.version=1.0.7
gateway.domain.url=http://testapi.yoho.cn:28078
limitProduct.desc.version=1.3
default.http.type=http
#product Fashioncode config
fashioncode.product=\u590d\u5236\u8fd9\u6761\u6d88\u606f,\u6253\u5f00Yoho!Buy\u6709\u8d27\u5ba2\u6237\u7aef,\u5373\u53ef\u67e5\u770b\u5546\u54c1
fashioncode.brand=\u590d\u5236\u8fd9\u6761\u6d88\u606f,\u6253\u5f00Yoho!Buy\u6709\u8d27\u5ba2\u6237\u7aef,\u5373\u53ef\u67e5\u770b\u5546\u54c1\u724c
#\u914d\u7f6e\u5b89\u5168\u7684\u9650\u5236\u6b21\u6570
login.ip.limit.times=-1
login.loginfailed.limit.time=10
login.skip.modify.weakPwd=Y
#\u5546\u5bb6\u7aef-\u914d\u7f6e\u5b89\u5168\u7684\u9650\u5236\u6b21\u6570
login.shops.ip.limit.times=-1
login.shops.loginfailed.limit.time=10
# ******************** hystrix**********************
#his property sets the time in milliseconds after which the caller will observe a timeout and walk away from the command execution.
hystrix.command.default.execution.isolation.thread.timeoutInMilliseconds=10000
hystrix.command.default.circuitBreaker.requestVolumeThreshold=100
#This property sets the error percentage at or above which the circuit should trip open and start short-circuiting requests to fallback logic.
hystrix.command.default.circuitBreaker.errorThresholdPercentage=75
hystrix.threadpool.default.coreSize=30
hystrix.threadpool.default.maxQueueSize=50000
# an artificial maximum queue size at which rejections will occur even if maxQueueSize has not been reached
hystrix.threadpool.default.queueSizeRejectionThreshold=45000
#zookeeper address
zkAddress=192.168.102.45:2181
#zkAddress=192.168.102.45:2181
# web context
web.context=gateway
########## common rabbitmq ##########
# local, maybe producer using this.
rabbit_common = 192.168.102.45:5672
rabbit_common_user = yoho
rabbit_common_password = yoho
##########common rabbitmq ##########
rabbit_host=192.168.102.45:5672
rabbit_user=yoho
rabbit_password=yoho
# ERP service
erp.order.status.url=http://portal.admin.yohobuy.com/api/orders/status
# Payment config
# Alipay
# WechatAPP
wechat.app.notifyurl=http://testservice.yoho.cn:28077/payment/wechat_notify
wechat.app.newnotifyurl=http://testservice.yoho.cn:28077/payment/weixin_notify
wechat.app.partnerid=1218934901
wechat.app.partnerkey=b22de5cfd0ded341e0516505f72649a9
wechat.app.appid=wx049fdaa3ba9cdd7a
wechat.app.appsecret=f973fdb412307ea7b97d0252fd675104
wechat.app.paysignkey=wGwAsgU5SeeM62glYaoC6ALBKhtOrF7Ek9LzE8trEuUG7jHeFdnSlyA1jblOYYS57QzWr8dYVsWGdeWhzeonnrKFZakgwFWPYVtyeP4XqSu9Qvxps8LEgxoFBEpRPm6C
# WechatWAP
wechat.wap.notifyurl=http://testservice.yoho.cn:28077/payment/wechatwap_notify
wechat.wap.mchid=1227694201
wechat.wap.key=7e6f3307b64cc87c79c472814b88f7fb
wechat.wap.appid=wx75e5a7c0c88e45c2
wechat.wap.appsecret=ce21ae4a3f93852279175a167e54509b
# Unionpay
unionpay.env=00
unionpay.merid=898111453110482
unionpay.sign.cert=PM_898111453110482.pfx
unionpay.notifyurl=http://testservice.yoho.cn:28077/payment/unionpay_notify
wechat.access.appid = wx1e6997242bcfcdfb
wechat.access.secret = d6fa51581e4c11ee312a1990c2ebf0bd
# ApplePay
applepay.env=01
applepay.sign.cert=acp_test_sign.pfx
applepay.merid=777290058110097
applepay.notifyurl=http://testservice.yoho.cn:28077/payment/applepay_notify
## QQwallet
qq.partnerid=1284612001
qq.partnerkey=bfa7410caf55ba1c86ec5781c9180e66
qq.appid=100898104
qq.appkey=1ab633a3c8c73947961b27f461312567
qq.notifyurl=http://testservice.yoho.cn:28077/payment/qqpay_notify
# ************************ sync browse on-off **************************
users.browse.sync=true
# ************************ browse expire time **************************
users.browse.expire=7776000
# ************************ one user browse's num **************************
users.browse.numPerUser=100
# ************************ browse cache client app_version **************************
users.browse.appVersion=4.1.0.***
# ************************ temporary max browse cache number **************************
users.browse.maxTemBrowse = 5
# ************************ send mq interval time **************************
users.browse.sendtime = 10
# ************************ inboxNum expire time **************************
message.inboxNum.expire=10
erp.message.sync.type=CALL
#*******************Redis\u7f13\u5b58\u76f8\u5173**************************#
#\u6d4f\u89c8\u8bb0\u5f55\u5fae\u670d\u52a1URL
redis.timeout=50
alarm.write.enable=true
redis.notsync.twemproxy.addresses=192.168.102.211:6379
redis.notsync.twemproxy.auth=
#\u5bc6\u7801AES\u52a0\u5bc6\u5bc6\u94a5
password.aes.key=yoho9646yoho9646
##\u5b66\u751f\u4ef7\u6298\u6263
student.discount.rate=0.9
portalGateway.ipad.key = ad9fcda2e679cf9229e37feae2cdcf80
erp.gateway.url = http://192.168.102.47:9098/erp-gateway-web/
erp.shops.url = http://192.168.102.47:9098/erp-gateway-web/stock/get_stock
portalGateway.service.url = http://192.168.102.47:8080/portal-gateway/erp
erp.shops.batch.url = http://192.168.102.47:9098/erp-gateway-web/stock/get_batch_stock
erp.shops.batch.center.url = http://192.168.102.47:9098/erp-gateway-web/stock/get_batch_center_stock
hystrix.threadpool.promotionThreadInsulate.coreSize=20
hystrix.threadpool.promotionThreadInsulate.maxQueueSize=2000
hystrix.threadpool.shoppingEdit.coreSize=30
hystrix.threadpool.shoppingEdit.maxQueueSize=5000
hystrix.threadpool.shoppingPayment.coreSize=30
hystrix.threadpool.shoppingPayment.maxQueueSize=5000
hystrix.threadpool.shoppingSubmit.coreSize=30
hystrix.threadpool.shoppingSubmit.maxQueueSize=5000
hystrix.threadpool.orderPaymentGroup1.coreSize=30
hystrix.threadpool.orderPaymentGroup1.maxQueueSize=5000
hystrix.threadpool.orderPaymentGroup2.coreSize=30
hystrix.threadpool.orderPaymentGroup2.maxQueueSize=5000
hystrix.threadpool.newProduct.coreSize=30
hystrix.threadpool.newProduct.maxQueueSize=5000
hystrix.threadpool.myOrders.coreSize=30
hystrix.threadpool.myOrders.maxQueueSize=5000
hystrix.threadpool.userLogin.coreSize=20
hystrix.threadpool.userLogin.maxQueueSize=3000
hystrix.threadpool.resourcesPrimary.coreSize=30
hystrix.threadpool.resourcesPrimary.maxQueueSize=5000
platform.service.url=http://localhost:8088/platform
yoho.message.controller.url=http://192.168.102.202:8087/yoho-message-controller
#photoSearch
photoSearch.access.key.id=7343a192140f25a59c53dab5652f5f47
photoSearch.secret.key=45c1ce98ee6b4701d55802989ba240f4
photoSearch.service.id=rdbehn3x
service.online.type=1
# live800
service.online.type.live800=http://chat8.live800.com/live800/chatClient/chatbox.jsp?companyID=620092&configID=149091&jid=8732423409
# h5
service.online.type.h5=http://m.yohobuy.com/service/im
# native
service.online.type.native=
#erp-shop-web address
erp.shop.web.url=http://192.168.103.82:9098
gateway.screen.mobilestart=[ \"147\", \"170\", \"171\"]
cloud=qcloud
#用户uic服务地址
uic.service.url=http://192.168.103.73:8096/uic
#signature encrypt key salt
gateway.signature.key.salt=mQyMTMwZjlmZTZmYjY4UjkNmYwZGM0OTk0Y
trace.enabled=true
# yoho api docs
yoho.api.docs.switch=off
yoho.api.docs.filter=^.*$
#qZone request token
qZone.request.token=w5Rfz6sDZGn52cWq2a
sdk.ak=LTAIekrpZAi32NJP
sdk.aks=7PFg0ZW4rX7ViGQ3jNghHvL7G5E2pU
sdk.instanceId=ba35b368-b0ae-4019-8509-c538aaf4a790
sdk.instanceName=yohopic
yoho.recovery.zkPath=/yh/config/recovery
union.service.url=http://union.yohoops.org/union
malicious.service.url=http://malicious.yohops.com/outer/delMaliciousBannedIp
\ No newline at end of file
... ...
# global configurations, ConfigReader will write this file to zookeeper.
# enable trace
trace.exporter.enable=false
# enable report event to influxdb
alarm.write.enable=true
#alarm sample per
alarm.sampler=0.2
#limit app version, older version not allow to request
gateway.limit.app.version=5.5.2
gateway.limit.uid.length=10
#verify session scope
gateway.session.isVerifyAllMethod=true
#ignore session method
gateway.session.ignoreMethods=
#escape session verify param
gateway.client.secret.h5=NGJjYjhkNmwwZGM0OTk0YmQyMTMwZjlmoTZmzjY4cjN
#message signature verify on-off
gateway.security.isSignatureVerifyEnable=true
#signature verify in dynamic
gateway.security.isSignatureVerifyInDynamic=false
#verify signature scope
gateway.signature.isVerifyAllMethod=true
#ignore signature method
gateway.signature.ignoreMethods=
cache.degrade.sync.enable=true
yoho.core.ehcache.enable=true
yoho.core.producer.async.enable=false
yoho.core.redis.async.enable=false
gateway.switch.order.applePayBindBoot.enable=true
# product detail, get storage, true:degrade, false:not degrade, can
gateway.degrade.product.queryProductCallBackData.enable=false
# product detail, query Consults, true:degrade, false:not degrade, can
gateway.degrade.product.consult.enable=false
# product detail, query comment, true:degrade, false:not degrade, can
gateway.degrade.product.comment.enable=false
# limit product detail, true:degrade, false:not degrade, can
gateway.degrade.product.limitProduct.enable=false
# product detail, isFavorite, true:degrade, false:not degrade, can
gateway.degrade.product.isFavorite.enable=false
# product detail, shops favorite count, true:degrade, false:not degrade, can
gateway.degrade.product.shopsFavoriteCount=false
# product detail, isFavorite, true:degrade, false:not degrade, can
gateway.degrade.product.batchCheckIsFavorite.enable=false
# product market price show, true:degrade, false:not degrade, can
gateway.degrade.product.marketPriceShow.enable=true
gateway.degrade.product.promotionPriceShow.enable=false
# limit product channel, query User Reminder list, true:degrade, false:not degrade, can
gateway.degrade.product.queryUserReminder.enable=false
# limit product detail, query ReminderCount And HasReminder, true:degrade, false:not degrade, can
gateway.degrade.product.queryReminderCountAndHasReminder.enable=false
# product detail, check limitcode expired, true:degrade, false:not degrade, can
gateway.degrade.product.promotion.getLimitSKNByBatchNO.enable=false
# limit product detail, check product status, true:degrade, false:not degrade, can
gateway.degrade.product.product.batchQueryProductBasicInfo.enable=false
# limit product detail, check product storage, true:degrade, false:not degrade, can
gateway.degrade.product.product.queryStorageByProductSkn.enable=false
# pc product detail, get productbanner, true:degrade, false:not degrade, can
gateway.degrade.product.productBanner.enable=false
# pc product detail, queryProductCollocation, true:degrade, false:not degrade, can
gateway.degrade.product.product.queryProductCollocation.enable=false
# pc product detail, queryProductModelcard, true:degrade, false:not degrade, can
gateway.degrade.product.product.queryProductModelcard.enable=false
# pc product detail, queryProductComfort, true:degrade, false:not degrade, can
gateway.degrade.product.product.queryProductComfort.enable=false
# pc product detail, queryModelTryBySkn, true:degrade, false:not degrade, can
gateway.degrade.product.product.queryModelTryBySkn.enable=false
# pc product detail, queryBrandFolder, true:degrade, false:not degrade, can
gateway.degrade.product.product.queryBrandFolder.enable=false
# pc product detail, queryBrandSeries, true:degrade, false:not degrade, can
gateway.degrade.product.product.queryBrandSeries.enable=false
# pc product detail, queryShopFolder, true:degrade, false:not degrade, can
gateway.degrade.product.product.queryShopFolder.enable=false
# pc product detail, queryShopSeries, true:degrade, false:not degrade, can
gateway.degrade.product.product.queryShopSeries.enable=false
# pc person center, favorite product list, true:degrade, false:not degrade, can
gateway.degrade.product.pcfavoritelist.enable=false
# miao sha product list, show remind, true:degrade, false:not degrade, can
gateway.degrade.product.seckill.reminder.enable=false
# refund exchange, batch query is support refund, true:degrade, false:not degrade, can
gateway.degrade.product.batchQueryIsSupportRefundExchange.enable=false
# offline show storeList, true:degrade, false:not degrade, can
gateway.degrade.product.app.product.storeList.enable=false
# offline show storesale, true:degrade, false:not degrade, can
gateway.degrade.product.data.offline.enable=false
# product detail, sale out produc recommend, true:degrade, false:not degrade, can
gateway.degrade.product.saleout.recommend.enable=false
gateway.degrade.product.needSortRecommend.enable=false
gateway.degrade.product.shoprecommend.enable=false
gateway.degrade.product.shoprecommend.checkAB.enable=false
gateway.degrade.product.sizehelper.show.enable=false
gateway.degrade.product.app.product.queryBuyLimit.enable=false
# product detail, preference productlist, true:degrade, false:not degrade, can
gateway.degrade.search.product.preference.enable=false
# bigdata brandList, true:degrade, false:not degrade, can
gateway.degrade.bigdata.recommend.brandList.enable=true
# categroy fuzzy search productlist reccommend shop, true:degrade, false:not degrade, can
gateway.degrade.search.category.recshop.enable=false
# newproduct search productlist reccommend shop, true:degrade, false:not degrade, can
gateway.degrade.search.newproduct.recall.enable=false
gateway.degrade.search.vipprice.show.enable=false
#newproduct forward shop, search 30 days productlist
gateway.search.newproductshop.time=30
gateway.degrade.search.alicloud.photosearch.enable=false
#0:malong 1:ali 2:yoho
gateway.degrade.search.photosearch.switch=0
# promotion limit code, show red point, true:degrade, false:not degrade, can
gateway.degrade.promotion.promotion.checkNewLimitProduct.enable=false
#promotion coupon total num ,degrade flag
gateway.degrade.promotion.app.coupons.total.enable=false
#promotion coupon product detail ,degrade flag
gateway.degrade.promotion.app.coupons.queryProdPageCoupons.enable=false
#promotion coupon shop detail ,degrade flag
gateway.degrade.promotion.shop.coupons.list.enable=false
gateway.degrade.accesslog.enable=false
gateway.degrade.qiniu.imageupload.callback.enable=false
########################## Begin users degrade ###############################################
#login.ip.limit.times,default -1
gateway.login.ip.limit.times=10
#login.mobile.limit.times,default -1
gateway.login.mobile.limit.time=10
#security interceptor check session enable, default true
gateway.session.isCheckSessionEnable=false
#web.complaints.getCount(PC to query complaints count, true:degrade, false:not degrade)
gateway.degrade.users.complaintsCount.enable=false
#web.complaints.getList(PC to query complaints list, true:degrade, false:not degrade)
gateway.degrade.users.complaintsList.enable=false
#web.passport.getLikeBrand(PC to queyr likeBrand, true:degrade, false:not degrade)
gateway.degrade.users.likeBrand.enable=false
#app.home.getInfoNum(query nums for user center, true:degrade, false:not degrade)
gateway.degrade.users.myIndex.enable=false
#web.redution.count(PC to query redution count, true:degrade, false:not degrade)
gateway.degrade.users.redutionCount.enable=false
#app.yoho.redpacket(query redpacket on/off, true:degrade, false:not degrade)
gateway.degrade.users.redpacket.enable=false
#app.yoho.redpacketInfo(query redpacket info, true:degrade, false:not degrade)
gateway.degrade.users.redpacketInfo.enable=false
#app.yoho.redpacketList(query redpacket list, true:degrade, false:not degrade)
gateway.degrade.users.redpacketList.enable=false
#web.passport.getUserHabits(PC to query userHabits, true:degrade, false:not degrade)
gateway.degrade.users.userHabits.enable=false
#users.getFavoriteBrandCount\uff0cbrower.getFavoriteCount\uff0cbrower.totalBrowse(query favorite num. true:degrade, false:not degrade)
gateway.degrade.users.myIndexFavorite.enable=false
#promotion.queryUserCouponsCnt,users.getYohoCoinNum,promotion.queryLimitCodeRecordNum(query promotion num. true:degrade, false:not degrade)
gateway.degrade.users.myIndexPromotion.enable=false
#order.getOrdersStatusStatisticsByUid(query order num of myIndex. true:degrade, false:not degrade)
gateway.degrade.users.myIndexOrder.enable=false
#app.giftcard.cardNum(get User Gift CardNum. true:degrade, false:not degrade)
gateway.degrade.users.myIndexGiftCard.enable=false
#app.passport.growthMonth(get getYearData. true:degrade, false:not degrade)
gateway.degrade.users.growthMonth.enable=false
#app.browse.addBrowseBatch(addBrowseBatch. true:degrade, false:not degrade)
gateway.degrade.brower.addBrowseBatch.enable=false
#sns.queryToShareOrderNum, brower.getInboxCount(query shareOrder, inboxCount num. true:degrade, false:not degrade)
gateway.degrade.users.myIndexOthers.enable=false
#sns.getInbox brower.getInboxListNew(query inboxList. true:degrade, false:not degrade)
gateway.degrade.users.inboxList.enable=false
#query inboxTotal. true:degrade,false not degrage
gateway.degrade.users.inboxTotal.enable=false
#browse add blackQueue
gateway.degrade.users.offer.blockqueue.enable=false
#session verify get userSession
gateway.degrade.users.getUserSesion.enable=false
#signinAppV2 use static encrypt key
gateway.degrade.users.signinAppV2.enable=false
#educationLevel use static data
gateway.degrade.users.educationLevel.enable=false
#get suggest list degrade true:degrade,false not degrage
gateway.degrade.users.suggestList.enable=false
#get userContacts degrade true:degrade,false not degrage
gateway.degrade.users.userContacts.enable=false
#query productPraise info degrade true:degrade,false not degrage
gateway.degrade.users.productPraise.enable=false
#app.passport.passport degrade true:degrade, false:not degrade
gateway.degrade.users.myProfile.enable=false
gateway.degrade.users.checkUdid.enable=false
########################## End users degrade ###############################################
########################## Begin sns degrade ###############################################
#sns query to share order total num, true:degrade, false:not degrade, can
gateway.degrade.sns.queryOrderProductCommentList.enable=false
#sns product detail, get recent one shareorder, true:degrade, false:not degrade, can
gateway.degrade.sns.getRecentShareOrder.enable=false
#/guang/api/v1/share/guang(query article info for share, true:degrade, false:not degrade)
gateway.degrade.sns.shareGuang.enable=false
#/guang/api/v1/article/getArticleNotice(query article nums of new publish, true:degrade, false:not degrade)
gateway.degrade.sns.articleNotice.enable=false
#/guang/api/v1/share/brandinfo(query plustar brand info for share, true:degrade, false:not degrade)
gateway.degrade.sns.shareBrandInfo.enable=false
#sns show channel get praise num, true:degrade, false:not degrade, can
gateway.degrade.sns.getPraiseInfo.enable=false
#/guang/service/*/article/getBrand(query brands related article, true:degrade, false:not degrade)
gateway.degrade.sns.brandRelatedArticle.enable=false
#/guang/service/v2/article/getOtherArticle(query articles related article, true:degrade, false:not degrade)
gateway.degrade.sns.otherArticle.enable=false
#/guang/service/*/article/checkArticleFav(check article favorite, true:degrade, false:not degrade)
gateway.degrade.sns.checkArticleFav.enable=false
#/guang/api/*/comments/getList(query articleComment list,true:degrade, false:not degrade)
gateway.degrade.sns.articleCommentsList.enable=false
#/guang/api/*/plustar/getlist(query plustar list,true:degrade, false:not degrade)
gateway.degrade.sns.plustarList.enable=false
#/guang/api/*/category/get(query category list,true:degrade, false:not degrade)
gateway.degrade.sns.categoryList.enable=false
#/guang/api/v2/article/getSimpleArticleList(fav praise view num,true:degrade, false:not degrade)
gateway.degrade.sns.tagTop.enable=false
#/guang/api/*/article/getTagTop(query top tag,true:degrade, false:not degrade)
gateway.degrade.sns.getSimpleArticleList.enable=false
#/guang/service/*/article/getArticleByBrand(query article by brand in star original,true:degrade, false:not degrade)
gateway.degrade.sns.articleByBrand.enable=false
#/guang/api/*/article/getArticleByViewsNum(query article by viewsNum,true:degrade, false:not degrade)
gateway.degrade.sns.articleByViewNum.enable=false
#/guang/api/*/article/articlePraiseAndFavor(query articlePraiseAndFavor,true:degrade, false:not degrade)
gateway.degrade.sns.articlePraiseAndFavor.enable=false
#/guang/api/v1/Favorite/getFavNumber(query userFavoriteNum,true:degrade, false:not degrade)
gateway.degrade.sns.myIndexArtFav.enable=false
########################## End sns degrade ###############################################
# /operations/api/v5/version/getVersion (get new app version, true: degrade, false: not degrade)
gateway.degrade.resources.getVersion.enable=false
# /operations/api/v5/resource/home (determine is new user(degrade all not new), true: degrade, false: not degrade)
gateway.degrade.resources.isNewUserFromYHService.enable=false
gateway.degrade.resources.isRegisterUserFromYHService.enable=true
#app.Shopping.count(query shopping count, true:degrade, false:not degrade)
gateway.degrade.shopping.count.enable=false
gateway.degrade.shopping.findPendingOrderCountByUid.enable=false
gateway.degrade.shopping.countUsableCoupon.enable=false
gateway.degrade.shopping.listCoupon.enable=false
gateway.degrade.order.orderListCount.enable=false
gateway.degrade.resources.app_ads_list.enable=false
gateway.degrade.resources.app_resources_getNotices.enable=false
gateway.degrade.resources.clientInitConfig.enable=true
#enable weight random robin
service.finder.weight=false
gateway.sendsms.times.udid.fiftySecond=1
gateway.sendsms.times.udid.tenMinute=10
################################## START cache time config ######################################
################################## END cache time config ######################################
################################## START redis memcache time config ######################################
################################## END redis memcache time config ######################################
################################## START hystrix config ######################################
#his property sets the time in milliseconds after which the caller will observe a timeout and walk away from the command execution.
hystrix.command.default.circuitBreaker.requestVolumeThreshold=100
#This property sets the error percentage at or above which the circuit should trip open and start short-circuiting requests to fallback logic.
hystrix.command.default.circuitBreaker.errorThresholdPercentage=75
hystrix.threadpool.default.coreSize=40
hystrix.threadpool.default.maxQueueSize=50000
# an artificial maximum queue size at which rejections will occur even if maxQueueSize has not been reached
hystrix.threadpool.default.queueSizeRejectionThreshold=45000
hystrix.command.default.execution.timeout.enabled=true
hystrix.command.default.execution.isolation.thread.timeoutInMilliseconds=3000
#### hystrix thread pool config #########
hystrix.threadpool.promotionThreadInsulate.coreSize=20
hystrix.threadpool.promotionThreadInsulate.maxQueueSize=2000
hystrix.threadpool.shoppingEdit.coreSize=45
hystrix.threadpool.shoppingEdit.maxQueueSize=5000
hystrix.threadpool.shoppingPayment.coreSize=30
hystrix.threadpool.shoppingPayment.maxQueueSize=5000
hystrix.threadpool.shoppingSubmit.coreSize=30
hystrix.threaegrapool.shoppingSubmit.maxQueueSize=5000
hystrix.threadpool.orderAlipay.coreSize=30
hystrix.threadpool.orderAlipay.maxQueueSize=5000
hystrix.threadpool.orderPay.coreSize=30
hystrix.threadpool.orderPay.maxQueueSize=5000
hystrix.threadpool.newProduct.coreSize=30
hystrix.threadpool.newProduct.maxQueueSize=5000
hystrix.threadpool.orderList.coreSize=30
hystrix.threadpool.orderList.maxQueueSize=5000
hystrix.threadpool.userLogin.coreSize=20
hystrix.threadpool.userLogin.maxQueueSize=3000
hystrix.threadpool.resourcesPrimary.coreSize=30
hystrix.threadpool.resourcesPrimary.maxQueueSize=5000
#### hystrix timeout config #########
hystrix.command.search.query.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.search.selectionsForPc.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.search.selectionsForApp.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.search.aggBrand.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.search.productList.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.search.productPool.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.search.newShelveProductList.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.sns.audShareOrderBatch.execution.isolation.thread.timeoutInMilliseconds=3000
hystrix.command.sns.selectList.execution.isolation.thread.timeoutInMilliseconds=5000
hystrix.command.sns.getUserFavArticleList.execution.isolation.thread.timeoutInMilliseconds=3000
hystrix.command.sns.getArticleBaseInfo.execution.isolation.thread.timeoutInMilliseconds=1000
hystrix.command.sns.getList.execution.isolation.thread.timeoutInMilliseconds=500
hystrix.command.sns.getStarClassroomArticleList.execution.isolation.thread.timeoutInMilliseconds=500
hystrix.command.sns.audShareOrder.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.sns.getShareOrderByCommentId.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.sns.queryShareOrderNum.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.sns.recommendShareOrder.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.message.smsSend.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.brower.getInBoxListNew.execution.isolation.thread.timeoutInMilliseconds=500
hystrix.command.users.activateInstalment.execution.isolation.thread.timeoutInMilliseconds=6000
hystrix.command.users.backpwdByEmail.execution.isolation.thread.timeoutInMilliseconds=2500
hystrix.command.users.verifyEmail.execution.isolation.thread.timeoutInMilliseconds=1800
hystrix.command.users.verifyStudent.execution.isolation.thread.timeoutInMilliseconds=1800
hystrix.command.users.verifyIdentity.execution.isolation.thread.timeoutInMilliseconds=1500
hystrix.command.users.getBankInfoByCardNo.execution.isolation.thread.timeoutInMilliseconds=1500
hystrix.command.users.modifyUserBaseHead.execution.isolation.thread.timeoutInMilliseconds=1500
hystrix.command.users.signCheck.execution.isolation.thread.timeoutInMilliseconds=1000
hystrix.command.users.queryCreditLimit.execution.isolation.thread.timeoutInMilliseconds=1000
hystrix.command.users.getBankCards.execution.isolation.thread.timeoutInMilliseconds=1000
hystrix.command.users.bind.execution.isolation.thread.timeoutInMilliseconds=700
hystrix.command.users.validateSnsCheckCode.execution.isolation.thread.timeoutInMilliseconds=700
hystrix.command.userLogin.login.execution.isolation.thread.timeoutInMilliseconds=700
hystrix.command.userLogin.signinByOpenID.execution.isolation.thread.timeoutInMilliseconds=700
hystrix.command.users.checkVerifyMobile.execution.isolation.thread.timeoutInMilliseconds=700
hystrix.command.users.register.execution.isolation.thread.timeoutInMilliseconds=600
hystrix.command.users.getVipDetailInfo.execution.isolation.thread.timeoutInMilliseconds=600
hystrix.command.users.modifyUserBase.execution.isolation.thread.timeoutInMilliseconds=600
hystrix.command.users.selectUserBaseList.execution.isolation.thread.timeoutInMilliseconds=500
hystrix.command.users.getFavoriteBrandList.execution.isolation.thread.timeoutInMilliseconds=500
hystrix.command.users.changeMobile.execution.isolation.thread.timeoutInMilliseconds=500
hystrix.command.users.getUserprofile.execution.isolation.thread.timeoutInMilliseconds=500
hystrix.command.users.qrCodeLogin.execution.isolation.thread.timeoutInMilliseconds=500
hystrix.command.users.getYohoCoinLog.execution.isolation.thread.timeoutInMilliseconds=500
hystrix.command.users.changepwdByMobileCode.execution.isolation.thread.timeoutInMilliseconds=500
hystrix.command.users.getList.execution.isolation.thread.timeoutInMilliseconds=500
hystrix.command.users.addYohoCoin.execution.isolation.thread.timeoutInMilliseconds=500
hystrix.command.users.getUserShowYohoCoins.execution.isolation.thread.timeoutInMilliseconds=500
hystrix.command.users.getUserSession.execution.isolation.thread.timeoutInMilliseconds=200
hystrix.command.orderAlipay.getAliPrepayData.execution.isolation.thread.timeoutInMilliseconds=1000
hystrix.command.orderAlipay.notifyAliPayment.execution.isolation.thread.timeoutInMilliseconds=1000
hystrix.command.orderAlipay.getWeixinPrepayData.execution.isolation.thread.timeoutInMilliseconds=1000
hystrix.command.orderAlipay.notifyWeixinPayment.execution.isolation.thread.timeoutInMilliseconds=1000
hystrix.command.orderPay.getApplePrepayData.execution.isolation.thread.timeoutInMilliseconds=1000
hystrix.command.orderPay.notifyApplePayment.execution.isolation.thread.timeoutInMilliseconds=1000
hystrix.command.orderPay.getUnionPrepayData.execution.isolation.thread.timeoutInMilliseconds=1000
hystrix.command.orderPay.notifyUnionPayment.execution.isolation.thread.timeoutInMilliseconds=1000
hystrix.command.orderPay.getQQPrepayData.execution.isolation.thread.timeoutInMilliseconds=1000
hystrix.command.orderPay.notifyQQPayment.execution.isolation.thread.timeoutInMilliseconds=1000
hystrix.command.orderPay.paymentOrderQuery.execution.isolation.thread.timeoutInMilliseconds=1500
hystrix.command.orderPay.paymentRefund.execution.isolation.thread.timeoutInMilliseconds=2500
hystrix.command.orderPay.crfInstalmentConfirmRepay.execution.isolation.thread.timeoutInMilliseconds=1200
hystrix.command.orderPay.crfInstalmentCreditPay.execution.isolation.thread.timeoutInMilliseconds=1200
hystrix.command.orderPay.crfInstalmentRepayPre.execution.isolation.thread.timeoutInMilliseconds=1200
hystrix.command.orderPay.getInstallmentOrderDetail.execution.isolation.thread.timeoutInMilliseconds=1200
hystrix.command.orderPay.getAllInstallmentOrders.execution.isolation.thread.timeoutInMilliseconds=1200
hystrix.command.orderPay.getCmbNetpayData.execution.isolation.thread.timeoutInMilliseconds=1000
hystrix.command.orderPay.notifyCmbnetPay.execution.isolation.thread.timeoutInMilliseconds=1000
hystrix.command.orderPay.notifyCmbnetSign.execution.isolation.thread.timeoutInMilliseconds=1000
hystrix.command.order.queryAmtList.execution.isolation.thread.timeoutInMilliseconds=1200
hystrix.command.order.queryAmtInfo.execution.isolation.thread.timeoutInMilliseconds=1200
hystrix.command.order.queryRePayList.execution.isolation.thread.timeoutInMilliseconds=1200
hystrix.command.shoppingSubmit.submitShopping.execution.isolation.thread.timeoutInMilliseconds=1000
hystrix.command.order.closeOrderByCode.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.order.addfavorite.execution.isolation.thread.timeoutInMilliseconds=500
hystrix.command.order.paymentBuyNow.execution.isolation.thread.timeoutInMilliseconds=500
hystrix.command.order.submitChangeGoods.execution.isolation.thread.timeoutInMilliseconds=500
hystrix.command.shoppingPayment.paymentShopping.execution.isolation.thread.timeoutInMilliseconds=500
hystrix.command.order.removeBacklist.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.order.selectCouponBuyNow.execution.isolation.thread.timeoutInMilliseconds=500
hystrix.command.shoppingPayment.selectCoupon.execution.isolation.thread.timeoutInMilliseconds=500
hystrix.command.resourcesPrimary.get.execution.isolation.thread.timeoutInMilliseconds=1000
hystrix.command.resourcesPrimary.home.execution.isolation.thread.timeoutInMilliseconds=1000
hystrix.command.resourcesPrimary.getEntrance.execution.isolation.thread.timeoutInMilliseconds=500
hystrix.command.resourcesPrimary.getCategory.execution.isolation.thread.timeoutInMilliseconds=500
hystrix.command.resources.findWebShare.execution.isolation.thread.timeoutInMilliseconds=500
hystrix.command.resources.queryAdsList.execution.isolation.thread.timeoutInMilliseconds=500
hystrix.command.product.syncAddLimitProduct.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.product.syncDeleteLimitProduct.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.product.syncUpdateLimitProduct.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.product.syncUpdateNormalProduct.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.product.syncBatchUpdateNormalProduct.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.promotion.batchAddLimitCodeReceiveRecord.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.promotion.addLimitCode.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.promotion.updateLimitCode.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.promotion.deleteLimitCode.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.bigdata.batchQueryChangePriceByProductSkn.execution.isolation.thread.timeoutInMilliseconds=5000
hystrix.command.bigdata.getStorageInRptForApi.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.bigdata.getOrdersGoodsRptListEx.execution.isolation.thread.timeoutInMilliseconds=6000
hystrix.command.bigdata.getReturnGoodsRptListEx.execution.isolation.thread.timeoutInMilliseconds=6000
hystrix.command.bigdata.getShopBrandRankEx.execution.isolation.thread.timeoutInMilliseconds=6000
hystrix.command.bigdata.getShopBusinessOverviewEx.execution.isolation.thread.timeoutInMilliseconds=6000
hystrix.command.erpPurchase.stockOut.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.erpPurchase.list.execution.isolation.thread.timeoutInMilliseconds=5000
hystrix.command.erpPurchase.getExpressList.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.erpPurchase.delivery.execution.isolation.thread.timeoutInMilliseconds=5000
hystrix.command.erpPurchase.queryBySupplierId.execution.isolation.thread.timeoutInMilliseconds=5000
hystrix.command.bigdata.getStorageStatisticsList.execution.isolation.thread.timeoutInMilliseconds=6000
hystrix.command.bigdata.getStorageInRptList.execution.isolation.thread.timeoutInMilliseconds=6000
hystrix.command.bigdata.getStorageOutRptList.execution.isolation.thread.timeoutInMilliseconds=6000
hystrix.command.seller.querySellType.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.app.clearResourceCache.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.app.deleteSingleTemplateCache.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.app.clearGuangCache.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.app.clearYohoCoinActivity.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.app.clearProductCache.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.app.clearSecKillCacheSync.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.app.clearSecKillProductCacheSync.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.app.clearProductSingleDay.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.app.clearSecKillAbortSync.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.app.clearSecKillAudPassSync.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.app.batchUpdateSecKillToNormal.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.app.ClearShopsDecoratorCache.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.app.clearShareOrderCache.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.erp.sysAwaitborrowGoods.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.app.removeBacklist.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.app.getStorageInRptForApi.execution.isolation.thread.timeoutInMilliseconds=10000
hystrix.command.app.selectShareOrderList.execution.isolation.thread.timeoutInMilliseconds=6000
hystrix.command.app.audShareOrderBatch.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.app.recommendShareOrder.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.app.audShareOrder.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.app.queryShareOrderNum.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.app.batchAddLimitCodeReceiveRecord.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.app.addLimitCode.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.app.updateLimitCode.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.app.deleteLimitCode.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.app.syncDeleteLimitProduct.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.app.syncUpdateLimitProduct.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.app.syncAddLimitProduct.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.app.syncUpdateNormalProduct.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.app.syncBatchUpdateNormalProduct.execution.isolation.thread.timeoutInMilliseconds=3000
hystrix.command.app.getShopBusinessOverview.execution.isolation.thread.timeoutInMilliseconds=6000
hystrix.command.app.getShopBrandRank.execution.isolation.thread.timeoutInMilliseconds=6000
hystrix.command.app.getOrdersGoodsRptList.execution.isolation.thread.timeoutInMilliseconds=6000
hystrix.command.app.getReturnGoodsRptList.execution.isolation.thread.timeoutInMilliseconds=6000
hystrix.command.app.getStorageStatisticsList.execution.isolation.thread.timeoutInMilliseconds=6000
hystrix.command.app.getStorageInRptList.execution.isolation.thread.timeoutInMilliseconds=6000
hystrix.command.app.getStorageOutRptList.execution.isolation.thread.timeoutInMilliseconds=6000
hystrix.command.platform.queryUserProfile.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.platform.getUsersByPidList.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.platform.getLastCheckShopInfoById.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.platform.getSupplier.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.platform.product.sysAwaitborrowGoods.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.platform.getLimitCodeByBatchNo.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.platform.getProductPicUrlByProductSKN.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.platform.batchQueryProductSortInfo.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.platform.checkAppVersion.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.platform.getAccountBalance.execution.isolation.thread.timeoutInMilliseconds=6000
hystrix.command.platform.changePwd.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.platform.login.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.platform.batchSetIsRead.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.platform.delByIdsAndShopsId.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.platform.queryListByShopsId.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.platform.getShopInboxTotal.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.crf.service.authentication.execution.isolation.thread.timeoutInMilliseconds=10000
hystrix.command.crf.service.getSmsCheckCode.execution.isolation.thread.timeoutInMilliseconds=5000
hystrix.command.crf.service.preCheckSmsCode.execution.isolation.thread.timeoutInMilliseconds=5000
hystrix.command.crf.service.bingBank.execution.isolation.thread.timeoutInMilliseconds=10000
hystrix.command.crf.service.reSendSms4Fcp.execution.isolation.thread.timeoutInMilliseconds=5000
hystrix.command.crf.service.bindedCardList.execution.isolation.thread.timeoutInMilliseconds=5000
hystrix.command.crf.service.queryCreditLimit.execution.isolation.thread.timeoutInMilliseconds=10000
hystrix.command.crf.service.queryBankCardInfo.execution.isolation.thread.timeoutInMilliseconds=5000
hystrix.command.crf.service.unbindCard.execution.isolation.thread.timeoutInMilliseconds=10000
hystrix.command.crf.service.toggleCard.execution.isolation.thread.timeoutInMilliseconds=10000
hystrix.command.users.reSendSms4FcpService.execution.isolation.thread.timeoutInMilliseconds=2000
hystrix.command.users.getSnsCheckCode.execution.isolation.thread.timeoutInMilliseconds=2000
################################## END hystrix config ######################################
################################## start abtest config ######################################
ABTest.open=false
################################## END abtest config ######################################
gateway.degrade.uic.verifiedGraphic.h5web.enable=ture
graphic.verification.fail.maxtimes=50
gateway.backGroundImg.pricePlanTag=http://img11.static.yhbimg.com/article/2017/10/13/14/016a785a73dece1228decbb2268ba8faf0.png
gateway.backGroundImg.vipPricePlanTag=http://flv01.static.yhbimg.com/goodsvideo/2018/08/21/14/03ac51291d6b9718c0d2370a024e1698b3.png
gateway.backGroundImg.customizeTag.expanse=http://img12.static.yhbimg.com/article/2017/10/12/15/0249e27e16ae1c5c98db4101941680f56c.jpg
gateway.backGroundImg.customizeTag.close=http://img13.static.yhbimg.com/article/2017/10/12/15/026ea6ac9824f6a1070f6e61da3735a65c.jpg
gateway.backGroundImg.depositTag=http://img10.static.yhbimg.com/article/2017/10/10/11/01cbc6cb5f16a012a2f09ba3b59356f912.png
gateway.backGroundImg.promotionPriceTag=http://img10.static.yhbimg.com/article/2017/10/10/11/01cbc6cb5f16a012a2f09ba3b59356f912.png
gateway.backGroundImg.promotionPriceTitle=618\u4ef7\uff1a
gateway.limit.addyohocoin=2000
gateway.auth.depand.uic.enable=true
miniapp.fastlogin.switch=true
gateway.degrade.favorite.isFavoriteNew.enable=false
# app.favorite.getFavoriteCount, true:degrade, false:not degrade
gateway.degrade.brower.myIndexProFav.enable=false
union.default.short.url=http://t.cn/R54KvYN
union.command.open=false
... ...
<configuration>
<!-- 日志最大的历史 7天 -->
<property name="yoho.logs.maxHistory" value="7" />
<!-- 日志最大的文件大小 10MB -->
<property name="yoho.logs.maxFileSize" value="10MB" />
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>[%X{X-B3-TraceId:-},%X{X-B3-SpanId:-},%X{X-Span-Export:-}] - %-5level [%thread] %logger{35} - %m%n</pattern>
</encoder>
</appender>
<!-- 登录时,如果一个IP在一定时间内登录次数过多,记录日志 appender -->
<appender name="WARN_LOG" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>debug.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- daily rollover -->
<fileNamePattern>debug.%d{yyyy-MM-dd}.%i.log.gz
</fileNamePattern>
<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
<!-- or whenever the file size reaches 100MB -->
<maxFileSize>10KB</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy>
<!-- keep 30 days' worth of history -->
<maxHistory>30</maxHistory>
</rollingPolicy>
</appender>
<appender name="RECOMMEND_LOG" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${yoho.logs.basedir}/${yoho.gateway.env.namespace}/recommend.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- daily rollover -->
<fileNamePattern>
${yoho.logs.basedir}/${yoho.gateway.env.namespace}/archived/recommend.%d{yyyy-MM-dd}.%i.log.gz
</fileNamePattern>
<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
<!-- or whenever the file size reaches 100MB -->
<maxFileSize>${yoho.logs.maxFileSize}</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy>
<!-- keep 30 days' worth of history -->
<maxHistory>${yoho.logs.maxHistory}</maxHistory>
</rollingPolicy>
<encoder>
<pattern>%-1relative - %d{HH:mm:ss.SSS} [%thread] %-5level %logger{0}:%line -- %msg%n</pattern>
</encoder>
</appender>
<appender name="LOGIN_LOW_CLIENT_TYPE_RECORD" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${yoho.logs.basedir}/${yoho.gateway.env.namespace}/login_low_clientType_record.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- daily rollover -->
<fileNamePattern>${yoho.logs.basedir}/${yoho.gateway.env.namespace}/archived/login_low_clientType_record.%d{yyyy-MM-dd}.%i.log.gz
</fileNamePattern>
<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
<!-- or whenever the file size reaches 100MB -->
<maxFileSize>${yoho.logs.maxFileSize}</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy>
<!-- keep 30 days' worth of history -->
<maxHistory>${yoho.logs.maxHistory}</maxHistory>
</rollingPolicy>
<encoder>
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger - %msg%n</pattern>
</encoder>
</appender>
<appender name="GRAPH_VERIFY_SWITCH" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${yoho.logs.basedir}/${yoho.gateway.env.namespace}/graph_verify_switch.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- daily rollover -->
<fileNamePattern>${yoho.logs.basedir}/${yoho.gateway.env.namespace}/archived/graph_verify_switch.%d{yyyy-MM-dd}.%i.log.gz
</fileNamePattern>
<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
<!-- or whenever the file size reaches 100MB -->
<maxFileSize>${yoho.logs.maxFileSize}</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy>
<!-- keep 30 days' worth of history -->
<maxHistory>${yoho.logs.maxHistory}</maxHistory>
</rollingPolicy>
<encoder>
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger - %msg%n</pattern>
</encoder>
</appender>
<appender name="LOGIN_LOG" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${yoho.logs.basedir}/${yoho.gateway.env.namespace}/login.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- daily rollover -->
<fileNamePattern>
${yoho.logs.basedir}/${yoho.gateway.env.namespace}/archived/login.%d{yyyy-MM-dd}.%i.log.gz
</fileNamePattern>
<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
<!-- or whenever the file size reaches 100MB -->
<maxFileSize>${yoho.logs.maxFileSize}</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy>
<!-- keep 30 days' worth of history -->
<maxHistory>${yoho.logs.maxHistory}</maxHistory>
</rollingPolicy>
<encoder>
<pattern>%-1relative - %d{HH:mm:ss.SSS} [%thread] %-5level %logger{0}:%line -- %msg%n</pattern>
</encoder>
</appender>
<appender name="SESSION_LOGIN_LOG" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${yoho.logs.basedir}/${yoho.gateway.env.namespace}/session-login.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- daily rollover -->
<fileNamePattern>
${yoho.logs.basedir}/${yoho.gateway.env.namespace}/archived/session-login.%d{yyyy-MM-dd}.%i.log.gz
</fileNamePattern>
<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
<!-- or whenever the file size reaches 100MB -->
<maxFileSize>${yoho.logs.maxFileSize}</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy>
<!-- keep 30 days' worth of history -->
<maxHistory>${yoho.logs.maxHistory}</maxHistory>
</rollingPolicy>
<encoder>
<pattern>%-1relative - %d{HH:mm:ss.SSS} [%thread] %-5level %logger{0}:%line -- %msg%n</pattern>
</encoder>
</appender>
<logger name="org.apache.zookeeper.ClientCnxn" level="WARN" />
<!-- 登录时,如果一个IP在一定时间内登录次数过多,记录日志 appender -->
<logger name="ipLoginMoreLog" level="INFO" additivity="false">
<appender-ref ref="IP_LOGIN_MORE_LOG" />
</logger>
<logger name="org.apache.zookeeper.ClientCnxn" level="WARN" />
<logger name="com.yoho.core.rest.client.finder.zookeeper.CuratorXDiscoveryClientWrapper" level="INFO" />
<!-- resources -->
<logger name="TRACE" additivity="true">
<level value="TRACE"/>
<appender-ref ref="STDOUT"/>
</logger>
<root level="INFO">
<appender-ref ref="STDOUT" />
<appender-ref ref="WARN_LOG" />
</root>
<!-- 推荐位 大数据采集 -->
<logger name="recommendLogger" additivity="true">
<level value="INFO"/>
<appender-ref ref="RECOMMEND_LOG"/>
</logger>
<!-- 3.8.1 之前的版本记录日志-->
<logger name="loginLowClientRecord" additivity="true">
<level value="INFO"/>
<appender-ref ref="LOGIN_LOW_CLIENT_TYPE_RECORD"/>
</logger>
<logger name="graphVerify_switch" additivity="true">
<level value="INFO"/>
<appender-ref ref="GRAPH_VERIFY_SWITCH"/>
</logger>
<!-- 用户登录日志 -->
<logger name="loginLog" additivity="true">
<level value="INFO"/>
<appender-ref ref="LOGIN_LOG"/>
</logger>
<!-- 用户session登录日志 -->
<logger name="sessionLoginLog" additivity="false">
<level value="INFO"/>
<appender-ref ref="SESSION_LOGIN_LOG"/>
</logger>
<logger name="com.yoho.gateway.controller.product.ProductCacheFinder" additivity="true">
<level value="DEBUG"/>
<appender-ref ref="DEBUG_LOG"/>
</logger>
</configuration>
\ No newline at end of file
... ...
producer:
- address: 192.168.102.45:5672
producers:
- bean: browseProducer #only once named in classpath
- address: 192.168.102.45:5672
producers:
- bean: yhProducer
... ...
redis:
gwNoSyncRedis :
servers:
- 192.168.102.45:6379
auth: redis9646
gwRecoveryRedis :
servers:
- 192.168.102.45:6379
auth: redis9646
# cleanMq:
# addresses:
# ${rabbit.cacheclean.producer.host}
yohoNoSyncRedis :
servers:
- 192.168.102.45:6379
auth: redis9646
# cleanMq:
# addresses:
# 192.168.102.45:5672
... ...
######SDK config (product env) cert, addr#####
######(PM env:for testing)#######
##
#acpsdk.frontTransUrl=https://101.231.204.80:5000/gateway/api/frontTransReq.do
##
#acpsdk.backTransUrl=https://101.231.204.80:5000/gateway/api/backTransReq.do
## with card
#acpsdk.backTransUrl=https://101.231.204.80:5000/gateway/api/cardTransReq.do
##
#acpsdk.singleQueryUrl=https://101.231.204.80:5000/gateway/api/queryTrans.do
##
#acpsdk.batchTransUrl=https://101.231.204.80:5000/gateway/api/batchTransReq.do
##
#acpsdk.fileTransUrl=https://101.231.204.80:9080/
## app trans
#acpsdk.appTransUrl=https://101.231.204.80:5000/gateway/api/appTransReq.do
#acpsdk.appTransUrl=${acpsdk.appTransUrl}
########################## product #############################
#acpsdk.frontTransUrl=https://gateway.95516.com/gateway/api/frontTransReq.do
#acpsdk.backTransUrl=https://gateway.95516.com/gateway/api/backTransReq.do
#acpsdk.singleQueryUrl=https://gateway.95516.com/gateway/api/queryTrans.do
#acpsdk.batchTransUrl=https://gateway.95516.com/gateway/api/batchTransReq.do
#acpsdk.fileTransUrl=https://filedownload.95516.com/
acpsdk.appTransUrl=https://gateway.95516.com/gateway/api/appTransReq.do
######################### certs ################################
acpsdk.signCert.path=
#acpsdk.signCert.path=/var/lib/tomcat/webapps/payment/WEB-INF/classes/certs/PM_700000000000001_acp.pfx
#acpsdk.signCert.path=/Users/ming/source/certs/pc_online_banking.pfx
#acpsdk.signCert.path=/Users/ming/source/certs/PM_700000000000001_acp.pfx
#acpsdk.signCert.path=/SERVICE01/usr/ac_frnas/conf/ACPtest/\u4ececfca\u4e0b\u8f7d\u7684\u6b63\u5f0f\u8bc1\u4e66.pfx
acpsdk.signCert.pwd=yohobuy
#acpsdk.signCert.pwd=000000
#acpsdk.signCert.pwd=${acpsdk.signCert.pwd}
acpsdk.signCert.type=PKCS12
#acpsdk.encryptCert.path=/Users/ming/source/certs/RSA2048_PROD_index_22.cer
# put acp_prod_verify_sign.cer into acpsdk.validateCert.dir
#windows
acpsdk.validateCert.dir=
#acpsdk.validateCert.dir=/Users/ming/source/certs/
#linux
#acpsdk.validateCert.dir=/SERVICE01/usr/ac_frnas/conf/ACPtest/
acpsdk.singleMode=false
\ No newline at end of file
... ...
<?xml version="1.0" encoding="UTF-8"?>
<config>
<group>
<!-- ************************** web namespace ***************************** -->
<property name="yoho.gateway.env.namespace" defaultValue="gateway" description="应用命名空间" />
<property name="file.uploadTempDir" defaultValue="/Data" description="spring mvc upload temp dir" />
<property name="is_debug_enable" defaultValue="false" description="is debug" />
<property name="erp.order.status.url" defaultValue="http://portal.admin.yohobuy.com/api/orders/status" description="erp" />
<property name="gateway.screen.mobilestart" defaultValue="[\&quot;147\&quot;,\&quot;170\&quot;,\&quot;171\&quot;]" description="注册,绑定发送短信等需要屏蔽的号码段"/>
<property name="is_checksession_enable" defaultValue="true" description="check user session" />
<property name="message.inboxNum.expire" defaultValue="10" description="expire time for inbox num. default is 10 fen" />
<!-- 回调地址的默认配置 -->
<property name="wechat.app.notifyurl" defaultValue="http://service.yoho.cn/payment/wechat_notify" description="" />
<property name="wechat.wap.notifyurl" defaultValue="http://service.yoho.cn/payment/wechatwap_notify" description="" />
<property name="unionpay.notifyurl" defaultValue="https://service.yoho.cn/payment/unionpay_newnotify" description="" />
<property name="applepay.notifyurl" defaultValue="http://service.yoho.cn/payment/applepay_notify" description="" />
<property name="qq.notifyurl" defaultValue="http://service.yoho.cn/payment/qqpay_notify" description="" />
<property name="uic.service.url" defaultValue="http://uic.yohoops.org/uic" description="uic调用地址" />
<property name="password.aes.key" defaultValue="yoho9646yoho9646" description="password aes key" />
<property name="line.shops.url" defaultValue="http://192.168.102.47:8098/shops" description="" />
<property name="erp.shops.url" defaultValue="http://192.168.10.131:8082/erp-gateway-web/stock/get_stock" description="" />
<property name="portalGateway.service.url" defaultValue="http://192.168.102.47:8080/portal-gateway" description="" />
<property name="portalGateway.ipad.key" defaultValue="ad9fcda2e679cf9229e37feae2cdcf80" description="" />
<!-- 服务降级配置 -->
<property name="degrade_complaintsCount_level" defaultValue="0" description="degrade_complaintsCount_level" />
<property name="degrade_complaintsList_level" defaultValue="0" description="degrade_complaintsList_level" />
<property name="degrade_likeBrand_level" defaultValue="0" description="degrade_likeBrand_level" />
<property name="degrade_myIndex_level" defaultValue="0" description="degrade_myIndex_level" />
<property name="degrade_redutionCount_level" defaultValue="0" description="degrade_redutionCount_level" />
<property name="degrade_redpacket_level" defaultValue="0" description="degrade_redpacket_level" />
<property name="degrade_redpacketInfo_level" defaultValue="0" description="degrade_redpacketInfo_level" />
<property name="degrade_redpacketList_level" defaultValue="0" description="degrade_redpacketList_level" />
<property name="degrade_userHabits_level" defaultValue="0" description="degrade_userHabits_level" />
<property name="degrade_shareGuang_level" defaultValue="0" description="degrade_shareGuang_level" />
<property name="degrade_articleNotice_level" defaultValue="0" description="degrade_articleNotice_level" />
<property name="degrade_shareBrandInfo_level" defaultValue="0" description="degrade_shareBrandInfo_level" />
<!-- 服务降级配置 -->
</group>
<script>
<generate template="META-INF/autoconf/logback.xml" destfile="WEB-INF/classes/logback.xml" />
<generate template="META-INF/autoconf/config.properties" destfile="WEB-INF/classes/config.properties" />
<generate template="META-INF/autoconf/acp_sdk.properties" destfile="WEB-INF/classes/acp_sdk.properties" />
<generate template="META-INF/autoconf/redis-config.yml" destfile="WEB-INF/classes/redis-config.yml"/>
<generate template="META-INF/autoconf/rabbitmq.yml" destfile="WEB-INF/classes/rabbitmq.yml"/>
</script>
</config>
... ...
# global configurations, ConfigReader will write this file to zookeeper.
################################## START cache time config ######################################
# bigdata
gateway.cachetime.bigdata.recommend=60
gateway.cachetime.bigdata.seasonsort=300
gateway.cachetime.bigdata.shoplist=300
gateway.cachetime.bigdata.fashion.articlelist=300
gateway.cachetime.bigdata.firstpage.recproduct=300
# product
gateway.cachetime.product.detail.base.info=1800
gateway.cachetime.product.detail.intro=1800
gateway.cachetime.product.detail.extro.info=600
gateway.cachetime.product.detail.promotion=180
gateway.cachetime.product.buy.limit=600
gateway.cachetime.product.shopCrossRecommend.info=600
gateway.cachetime.product.salesCategory.recommend=600
gateway.cachetime.product.salesCategoryByLevelTwoId=1800
gateway.cachetime.product.offline.data.info=600
gateway.cachetime.product.red.shop.decorator=300
gateway.cachetime.product.shop.info.by.id=300
gateway.cachetime.product.shop.brand.by.id=600
gateway.cachetime.product.h5.detail.product.info=1800
gateway.cachetime.search.newshelve=600
gateway.cachetime.product.category.max=600
gateway.cachetime.product.comment.li=600
gateway.cachetime.product.consult.li=300
gateway.cachetime.product.app.product.intro=1800
gateway.cachetime.product.brand.by.domain=300
gateway.cachetime.product.brand.folder=600
gateway.cachetime.product.brand.series=600
gateway.cachetime.product.brand.info=600
gateway.cachetime.product.brand.data.by.id=600
gateway.cachetime.product.shop.info=600
gateway.cachetime.product.collocation.by.id=1800
gateway.cachetime.product.modelcard.by.id=1800
gateway.cachetime.product.info.by.skuid=1800
gateway.cachetime.product.modeltry.data=1800
gateway.cachetime.product.comfort.by.id=1800
gateway.cachetime.product.offline.shops=300
gateway.cachetime.product.offline.shops.recommend.prd.list=3600
gateway.cachetime.product.seckill.product.time=30
gateway.cachetime.product.seckill.product.info.time=30
gateway.cachetime.product.shops.promote=300
gateway.cachetime.product.shops.promote.collection.num=7200
gateway.cachetime.product.shops.promote.tabname.list=300
gateway.cachetime.product.deposit.advance.product.time=1800
gateway.cachetime.product.single.day=300
gateway.cachetime.product.single.day.tabname.list=43200
gateway.cachetime.product.bundle=300
gateway.cachetime.product.newrecommend.shop=300
gateway.cachetime.product.newrecommend.brand=300
gateway.cachetime.product.onshelf=300
gateway.cachetime.product.shopinto_level1=600
gateway.cachetime.product.shop.activity.li=600
gateway.cachetime.shop.marketprice.showinfo=3600
# search
gateway.cachetime.search.fuzzy=300
gateway.cachetime.search.sort=300
gateway.cachetime.search.brand=300
gateway.cachetime.search.shop=300
gateway.cachetime.search.pool=300
gateway.cachetime.search.zq=300
gateway.cachetime.search.promotion=300
gateway.cachetime.search.coupon=300
gateway.cachetime.search.filter.nouid=1800
gateway.cachetime.search.productlist.nouid=600
gateway.cachetime.search.filter=1800
gateway.cachetime.search.bigdata.shopinfo=600
gateway.cachetime.search.bigdata.brandinfo=1800
gateway.cachetime.search.like.notinshop=1800
gateway.cachetime.search.like.inshop=1800
gateway.cachetime.search.shop.decorator=1800
gateway.cachetime.search.life.style=300
gateway.cachetime.search.kids=300
gateway.cachetime.search.brand.product.list=300
gateway.cachetime.search.app.student.vip=300
gateway.cachetime.search.app.student.rebate=300
gateway.cachetime.search.app.student.discount=300
gateway.cachetime.search.app.search.sales=300
gateway.cachetime.search.app.search.fuzzy=600
gateway.cachetime.search.web.search=300
gateway.cachetime.search.app.instalment=300
gateway.cachetime.search.app.newpromotion=300
gateway.cachetime.search.brandsort.recommend.sort=600
gateway.cachetime.search.brandsort.reommend.brand=300
gateway.cachetime.search.finlike=1200
gateway.cachetime.search.web.findlike=43200
gateway.cachetime.search.app.good.detail=300
gateway.cachetime.search.product.aggbrand=300
gateway.cachetime.search.product.notelike.usedskn=600
gateway.cachetime.search.product.notelike.skn=600
gateway.cachetime.search.product.vip=600
gateway.cachetime.search.hotsearchterm=300
gateway.cachetime.search.newproduct.shop=300
gateway.cachetime.search.good.productlist=300
gateway.cachetime.search.brand.list=600
# sns
gateway.cachetime.product.detail.shareorder.recent=1800
gateway.cachetime.product.detail.shareorder.list=1800
gateway.cachetime.sns.show.list=600
gateway.cachetime.sns.query.orderproduct.commentlist=300
gateway.cachetime.sns.all.to.share.list=180
################################## END cache time config ######################################
################################## START redis memcache time config ######################################
################################## END redis memcache time config ######################################
# guang 文章内容的其他推荐内容
gateway.cachetime.guang.other.article=1200
# 获取48小时内浏览最多的文章
gateway.cachetime.guang.article.viewsnum.max=300
# 用户收藏资讯信息
gateway.cachetime.guang.user.favarticle.list=5
# 获取逛下的分类列表
gateway.cachetime.guang.category.list=7200
# 获取品牌的文章
gateway.cachetime.guang.article.brand=10
# 新潮教室首页
gateway.cachetime.guang.star.class.index=5
# 获取逛的详情内容
gateway.cachetime.guang.article.content=5
# 获得省、市、地区列表
gateway.cachetime.users.area.provinces=1800
# 获取分类下的文章的列表
gateway.cachetime.guang.category.article.list=5
# 置顶文章列表
gateway.cachetime.guang.top.article.list=5
# 获得‘星潮教室’一级分类中,标签开启状态下的文章
gateway.cachetime.guang.star.classroom.article.list=10
# 获取明星原创品牌详情列表
gateway.cachetime.guang.plustar.list=10
# 获取分类下的文章的列表
gateway.cachetime.guang.home.page.article.list=5
# 逛列表是否点赞收藏浏览数
gateway.cachetime.guang.article.list.praise.fav.view.yes.no=5
# PC端的热门标签
gateway.cachetime.guang.article.top.tags=5
# 文章详情中的点赞收藏浏览数
gateway.cachetime.guang.article.detail.praise.fav.view.info=5
################################## START redis users time config ######################################
# 合并购物车
gateway.users.cachetime.shoppingKey=24
# 礼品卡支付时的手机号码
gateway.users.cachetime.mobileinfo=24
# 等待支付数量
gateway.users.cachetime.waitPayNum=60
# 待发货数量
gateway.users.cachetime.waitCargoNum=60
# 已发货数量
gateway.users.cachetime.sendCargoNum=60
# 退换货数量
gateway.users.cachetime.refundExchangeNum=60
# 收藏品牌数量
gateway.users.cachetime.brandFavNum=10
# 有货币数量
gateway.users.cachetime.yohocoincost=60
# 优惠券数量
gateway.users.cachetime.couponNum=1
# 待晒单数量
gateway.users.cachetime.toShareOrderNum=10
# 限购码数量
gateway.users.cachetime.limitCodeRecordNum=10
# 个人中心用户情报
gateway.users.cachetime.myprofile=24
# 用户VIP
gateway.users.cachetime.vip=24
# 用户潮流口令头像昵称
gateway.users.cachetime.trendWord=5
# 是否绑定手机号码查询结果
gateway.users.cachetime.bindRelateMobileCheckResult=24
# 店铺推广收藏数
gateway.users.cachetime.shopsPromoteCollectionNum=120
# 手机广告页
gateway.users.cachetime.getfloat=10
# 品牌信息
gateway.users.cachetime.bigdataBrandIntro=30
# 店铺信息
gateway.users.cachetime.bigdataShopIntro=10
# 邀请码
gateway.users.cachetime.inviteCode=60
# 咨询的相关品牌
gateway.sns.cachetime.relatedBrand=120
# 资源位
gateway.cachetime.resource.home=300
gateway.cachetime.resource.get=300
gateway.cachetime.resource.recommend=300
gateway.cachetime.resource.brand.guan.shopsvo=300
gateway.cachetime.resources.entrance=300
gateway.cachetime.resources.cover_start=300
gateway.cachetime.resources.is_new_user=3600
#分期开通状态
gateway.users.cachetime.instalment=12
#我的邀请码
gateway.users.cachetime.invitecode=12
#用户地址列表
gateway.users.cachetime.hiddenaddress=2
#收藏商品
gateway.favorite.cachetime.product=10
#web收藏商品
gateway.web.favorite.cachetime.product=10
#收藏品牌
gateway.favorite.cachetime.brand=10
#有货币数量
gateway.yohocoin.cachetime.num=10
#有货币列表
gateway.yohocoin.cachetime.list=10
#限购码列表
gateway.limitcode.cachetime=10
... ...
# ******************** gateway common configs ********************
# if true, client_security check may be disabled.
is_debug_enable=${is_debug_enable}
is_checksession_enable=${is_checksession_enable}
file.maxsize=5400000
file.uploadTempDir=${file.uploadTempDir}
file.saveDir=${file.saveDir}
hystrix.command.default.execution.isolation.thread.timeoutInMilliseconds=10000
# ******************** cloud storage config ********************
#qiniu config
qiniu.domain=${qiniu.domain}
qiniu.accesskey=${qiniu.accesskey}
qiniu.secretkey=${qiniu.secretkey}
qiniu.bucket=${qiniu.bucket}
#self own brand
self.own.brand=208,518,350,443,450,444,256,396,257,302,560,591,598,261,583,550,614,562,570,678,672,481,464,397,520,543,701,751,689,467,153,516,335
# ******************** redis servers ********************
redis.proxy.address=${redis.proxy.address}
redis.proxy.port=${redis.proxy.port}
#password, can be empty
redis.proxy.auth=${redis.proxy.auth}
redis.readonly.proxy.address=${redis.readonly.proxy.address}
redis.readonly.proxy.port=${redis.readonly.proxy.port}
redis.readonly.proxy.auth=${redis.readonly.proxy.auth}
redis.notsync.twemproxy.addresses=${redis.notsync.twemproxy.addresses}
redis.notsync.twemproxy.auth=${redis.notsync.twemproxy.auth}
redis.timeout=50
# ******************** bigData redis servers ********************
#bigDataRedis.proxy.address=${bigDataRedis.proxy.address}
#bigDataRedis.proxy.port=${bigDataRedis.proxy.port}
##password, can be empty
#bigDataRedis.proxy.auth=${bigDataRedis.proxy.auth}
#
#bigDataRedis.pool.maxTotal=100
#bigDataRedis.pool.maxIdle=100
#bigDataRedis.pool.maxWaitMillis=2000
#bigDataRedis.pool.minIdle=50
#bigDataRedis.pool.testOnBorrow=false
#bigDataRedis.pool.testWhileIdle=true
# ******************** service call timeout in mil-seconds ********************
service.call.connectReqTimeout=15000
service.call.socketTimeout=15000
service.call.connectTimeout=15000
service.call.maxTotal=600
service.call.defaultMaxPerRoute=300
# ******************** search restful ********************
#search server ip and port(if hava)
ip.port.search.server=${ip.port.search.server}
ip.port.search.photo.search=${ip.port.search.photo.search}
ip.port.search.photo.search.new=${ip.port.search.photo.search.new}
# ******************** product html5 ********************
h5.version=1.0.7
gateway.domain.url=${gateway.domain.url}
limitProduct.desc.version=1.3
default.http.type=${default.http.type}
#product Fashioncode config
fashioncode.product=\u590d\u5236\u8fd9\u6761\u6d88\u606f,\u6253\u5f00Yoho!Buy\u6709\u8d27\u5ba2\u6237\u7aef,\u5373\u53ef\u67e5\u770b\u5546\u54c1
fashioncode.brand=\u590d\u5236\u8fd9\u6761\u6d88\u606f,\u6253\u5f00Yoho!Buy\u6709\u8d27\u5ba2\u6237\u7aef,\u5373\u53ef\u67e5\u770b\u54c1\u724c
#\u914d\u7f6e\u5b89\u5168\u7684\u9650\u5236\u6b21?
#\u914d\u7f6e\u5b89\u5168\u7684\u9650\u5236\u6b21\u6570
login.ip.limit.times=20
login.loginfailed.limit.time=10
login.skip.modify.weakPwd=${login.skip.modify.weakPwd}
# shops login
login.shops.ip.limit.times=9999
login.shops.loginfailed.limit.time=10
#zookeeper address
zkAddress=${zkAddress}
# web context
web.context=gateway
########## common rabbitmq ##########
# local, maybe producer using this.
rabbit_common = ${rabbit_common}
rabbit_common_user = ${rabbit_common_user}
rabbit_common_password = ${rabbit_common_password}
##########common rabbitmq ##########
rabbit_host=${rabbit_order}
rabbit_user=${rabbit_order_user}
rabbit_password =${rabbit_order_password}
rabbit.cacheclean.producer.host=${rabbit.cacheclean.producer.host}
rabbit.cacheclean.consumer.host=${rabbit.cacheclean.consumer.host}
# ERP service
erp.order.status.url=${erp.order.status.url}
# Payment config
# Alipay
# WechatAPP
wechat.app.partnerid=1218934901
wechat.app.partnerkey=b22de5cfd0ded341e0516505f72649a9
wechat.app.appid=wx049fdaa3ba9cdd7a
wechat.app.appsecret=f973fdb412307ea7b97d0252fd675104
wechat.app.paysignkey=wGwAsgU5SeeM62glYaoC6ALBKhtOrF7Ek9LzE8trEuUG7jHeFdnSlyA1jblOYYS57QzWr8dYVsWGdeWhzeonnrKFZakgwFWPYVtyeP4XqSu9Qvxps8LEgxoFBEpRPm6C
wechat.app.notifyurl=${wechat.app.notifyurl}
wechat.app.newnotifyurl=${wechat.app.newnotifyurl}
# WechatWAP
wechat.wap.mchid=1227694201
wechat.wap.key=7e6f3307b64cc87c79c472814b88f7fb
wechat.wap.appid=wx75e5a7c0c88e45c2
wechat.wap.appsecret=ce21ae4a3f93852279175a167e54509b
wechat.wap.notifyurl=${wechat.wap.notifyurl}
wechat.access.appid = ${wechat.access.appid}
wechat.access.secret = ${wechat.access.secret}
# Unionpay
#unionpay.env=00
#unionpay.merid=700000000000001
#unionpay.sign.cert=PM_700000000000001_acp.pfx
unionpay.env=00
#unionpay.merid=898111453110466
#unionpay.sign.cert=pc_online_banking.pfx
unionpay.merid=898111453110482
unionpay.sign.cert=PM_898111453110482.pfx
unionpay.notifyurl=${unionpay.notifyurl}
# ApplePay
applepay.env=00
applepay.sign.cert=unionApplePay.pfx
applepay.merid=898111953110103
applepay.notifyurl=${applepay.notifyurl}
## QQwallet
qq.partnerid=1284612001
qq.partnerkey=bfa7410caf55ba1c86ec5781c9180e66
qq.appid=100898104
qq.appkey=1ab633a3c8c73947961b27f461312567
qq.notifyurl=${qq.notifyurl}
# ************************ inbox num expire time **************************
message.inboxNum.expire=${message.inboxNum.expire}
erp.message.sync.type=${erp.message.sync.type}
trace.exporter.enable=${trace.exporter.enable}
#*******************Redis\u7f13\u5b58\u76f8\u5173\u914d\u7f6e**************************#
#\u5bc6\u7801AES\u52a0\u5bc6\u5bc6\u94a5
password.aes.key=${password.aes.key}
##\u5b66\u751f\u4ef7\u6298\u6263
student.discount.rate=0.9
############################## service degrade level config ##############################
##web.complaints.getCount##
degrade_complaintsCount_level=${degrade_complaintsCount_level}
##web.complaints.getList##
degrade_complaintsList_level=${degrade_complaintsList_level}
##web.passport.getLikeBrand##
degrade_likeBrand_level=${degrade_likeBrand_level}
##app.home.getInfoNum##
degrade_myIndex_level=${degrade_myIndex_level}
##web.redution.count##
degrade_redutionCount_level=${degrade_redutionCount_level}
erp.gateway.url = ${erp.gateway.url}
erp.shops.url=${erp.shops.url}
erp.shops.batch.center.url = ${erp.shops.batch.center.url}
portalGateway.service.url = ${portalGateway.service.url}
portalGateway.ipad.key = ad9fcda2e679cf9229e37feae2cdcf80
erp.shops.batch.url = ${erp.shops.batch.url}
profile.threshold=500
platform.service.url=${platform.service.url}
yoho.message.controller.url=${yoho.message.controller.url}
#photoSearch
photoSearch.access.key.id=${photoSearch.access.key.id}
photoSearch.secret.key=${photoSearch.secret.key}
photoSearch.service.id=${photoSearch.service.id}
#erp-shop-web address
erp.shop.web.url=${erp.shop.web.url}
gateway.screen.mobilestart=${gateway.screen.mobilestart}
cloud=${cloud}
uic.service.url=${uic.service.url}
#signature encrypt key salt
gateway.signature.key.salt=${gateway.signature.key.salt}
trace.enabled=${trace.enabled}
yoho.api.docs.switch=${yoho.api.docs.switch}
yoho.api.docs.filter=${yoho.api.docs.filter}
#qZone request token
qZone.request.token=${qZone.request.token}
sdk.ak=${sdk.ak}
sdk.aks=${sdk.aks}
sdk.instanceId=${sdk.instanceId}
sdk.instanceName=${sdk.instanceName}
yoho.single.center.domain=${yoho.single.center.domain}
malicious.service.url=${malicious.service.url}
\ No newline at end of file
... ...