snippets / performances

All snippets tagged performances (1)

  1. script to test couchdb performances

    little script to test performances of couchdb.

     1 #!/bin/sh
    2 myver='0.1'
    3 CURL=$(which curl)
    4
    5 TMPFILE=$(mktemp /tmp/couchdb.XXXXXXXXXX) || exit 1
    6 SERVER_URL="http://localhost:5984"
    7 DB_TEST="couchdb_test"
    8 DOCS=""
    9 DOCS_MAX=100
    10
    11 if test $(which seq); then
    12 docs_seq=$(seq ${DOCS_MAX})
    13 elif test $(which jot); then
    14 docs_seq=$(jot -s " " ${DOCS_MAX} 0 ${DOCS_MAX})
    15 else
    16 echo "CANCELED: can't create sequence..."
    17 exit 0;
    18 fi
    19
    20
    21
    22 # create db
    23 resp=$(${CURL} --silent --request PUT ${SERVER_URL}/${DB_TEST}/)
    24 if test "${resp}" = '{"ok":true}'; then
    25 echo "Database ${DB_TEST} created"
    26 else
    27 echo "CANCELED : Error while creating database"
    28 exit 0;
    29 fi
    30
    31 # create docs
    32 start=`date +%s`
    33 for i in ${docs_seq}; do
    34 resp=$(${CURL} --silent --data "{ \"type\":\"test\", \"name\": \"${i}\" }" --request POST --header "Content-Type: application/json" ${SERVER_URL}/${DB_TEST}/)
    35 doc_id=`echo $resp | sed 's/.*"id"\:"\([^"]*\)".*/\1/'`
    36 current=`date +%s`
    37 DOCS="${DOCS} ${doc_id}"
    38 end=`date +%s`
    39 e=`expr ${end} - ${current}`
    40 start=`expr ${start} + ${e}`
    41 done
    42 end=`date +%s`
    43 t1=`expr ${end} - ${start}`
    44
    45 # fetch docs
    46 start=`date +%s`
    47 for doc_id in ${DOCS}; do
    48 resp=$(${CURL} --silent --request GET --header "Content-Type: application/json" ${SERVER_URL}/${DB_TEST}/{$doc_id})
    49 done
    50 end=`date +%s`
    51 t2=`expr ${end} - ${start}`
    52
    53 # delete docs
    54 start=`date +%s`
    55 for doc_id in ${DOCS}; do
    56 # first get doc
    57 current=`date +%s`
    58 resp=$(${CURL} --silent --request GET --header "Content-Type: application/json" ${SERVER_URL}/${DB_TEST}/{$doc_id})
    59 rev=`echo $resp | sed 's/.*"_rev"\:"\([^"]*\)".*/\1/'`
    60 end=`date +%s`
    61 e=`expr ${end} - ${current}`
    62 start=`expr ${start} + ${e}`
    63 resp=$(${CURL} --silent --request DELETE ${SERVER_URL}/${DB_TEST}/{$doc_id}?rev=${rev})
    64 done
    65 end=`date +%s`
    66 t3=`expr ${end} - ${start}`
    67
    68 #delete db
    69 resp=$(${CURL} --silent --request DELETE ${SERVER_URL}/${DB_TEST})
    70
    71 echo "Results :"
    72 echo "--------------------------"
    73 echo "${DOCS_MAX} docs created in ${t1}s"
    74 echo "${DOCS_MAX} docs fetched in ${t2}s"
    75 echo "${DOCS_MAX} docs deleted in ${t3}s"
showing 10, 25, 50 items per pages

Pages : 1

Flux RSS friendsnippetLatest snippets


More...