/[webpac]/openisis/current/oister
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Contents of /openisis/current/oister

Parent Directory Parent Directory | Revision Log Revision Log


Revision 237 - (show annotations)
Mon Mar 8 17:43:12 2004 UTC (20 years ago) by dpavlin
File size: 2139 byte(s)
initial import of openisis 0.9.0 vendor drop

1 #!/bin/bash
2 #/*
3 # openisis - an open implementation of the CDS/ISIS database
4 # Version 0.8.x (patchlevel see file Version)
5 # Copyright (C) 2001-2003 by Erik Grziwotz, erik@openisis.org
6 #
7 # This library is free software; you can redistribute it and/or
8 # modify it under the terms of the GNU Lesser General Public
9 # License as published by the Free Software Foundation; either
10 # version 2.1 of the License, or (at your option) any later version.
11 #
12 # This library is distributed in the hope that it will be useful,
13 # but WITHOUT ANY WARRANTY; without even the implied warranty of
14 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 # Lesser General Public License for more details.
16 #
17 # You should have received a copy of the GNU Lesser General Public
18 # License along with this library; if not, write to the Free Software
19 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
20 #
21 # see README for more information
22 #EOH */
23
24 # $Id: oister,v 1.5 2003/04/08 00:20:53 kripke Exp $
25 #
26 # OpenIsis server tester -- test oyster
27 #
28 # usage
29 # ./oister [port [host]] # talk to server
30 # time ./oister -trash [requests [clients [port [host]]]]
31
32
33
34 trasher () {
35 id=$1
36 exec 3<>/dev/tcp/$host/$port
37 local i # running in subshell anyway ...
38 declare -i i
39 i=$requests
40 ses=ses$[id / 4]
41 while [ 0 != $i ]; do
42 if [ 0 -eq $[i % 7] ]; then # add to session
43 echo "-2 $ses
44 $i $id $i foo
45 $i $id $i bar
46 " >&3
47 else # fetch session info only
48 echo "-2 $ses
49 " >&3
50 fi
51 while read line; do
52 # echo $line
53 [ -z "$line" ] && break;
54 done <&3
55 i=i-1
56 done
57 echo "$id: `date`"
58 }
59
60
61 if [ x-trash == "x$1" ]; then
62 requests=${2:-500}
63 clients=${3:-8}
64 port=${4:-8080}
65 host=${5:-localhost}
66 declare -i j
67 echo "starting $clients trashers for $requests requests at `date`"
68 j=$clients; while [ 0 != $j ]; do time trasher $j & j=j-1; done
69 echo "started $clients trashers on $host:$port at `date`"
70 j=$clients; while [ 0 != $j ]; do wait; j=j-1; done
71 echo "collected $clients trashers at `date`"
72 exit
73 fi
74
75 # default: run manually
76 #
77
78 exec 3<>/dev/tcp/${2:-localhost}/${1:-8080}
79
80 cat <&3 &
81 cp=$!
82
83 cat >&3
84 kill $cp # copy kill ;/

Properties

Name Value
svn:executable

  ViewVC Help
Powered by ViewVC 1.1.26