## ---------------------------------------------------------------------------
## 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.
## ---------------------------------------------------------------------------

APPLICATION_ID: perfTest
service_description:
  name: perf1
  version: 0.0.1
servicecomb:
  service:
    registry:
      address: http://127.0.0.1:30100
  rest:
    address: 0.0.0.0:8080?sslEnabled=false
    server:
      verticle-count: 8
    client:
      verticle-count: 8
      connection:
        maxPoolSize: 30
  highway:
    address: 0.0.0.0:7070?sslEnabled=false
    server:
      verticle-count: 8
    client:
      verticle-count: 8
  executor:
    default:
      group: 4
      maxThreads-per-group: 4
  references:
    transport: highway
    transport: rest
  metrics:
    endpoint:
      enabled: false
    window_time: 1000
    invocation.latencyDistribution: 0,1,3,10,100
    Consumer.invocation.slow:
      enabled: true
      msTime: 40
    Provider.invocation.slow:
      enabled: true
      msTime: 1
    publisher.defaultLog:
      enabled: true
      endpoints.client.detail.enabled: true
      invocation.latencyDistribution:
        minScopeLength: 9

sync-count: 10
async-count: 10
sync: false
producer: perf1
id: 1
step: 1
all: 1
fromDB: false
response-size: 1

redis:
  client:
    count: 8
  host: localhost
  port: 6379
#  password: 
