Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
P
pve-manager
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Administrator
pve-manager
Commits
7e9387f9
Commit
7e9387f9
authored
Mar 28, 2013
by
Dietmar Maurer
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
add performance test using Net::SSLeay
parent
326ed96b
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
68 additions
and
0 deletions
+68
-0
perftest3.pl
bin/test/perftest3.pl
+68
-0
No files found.
bin/test/perftest3.pl
0 → 100755
View file @
7e9387f9
#!/usr/bin/perl -w
use
lib
'
../../
';
use
strict
;
use
Time::
HiRes
qw( usleep ualarm gettimeofday tv_interval )
;
use
PVE::
INotify
;
use
PVE::
AccessControl
;
use
Net::
SSLeay
qw(get_https post_https sslcat make_headers make_form)
;
use
Data::
Dumper
;
my
$hostname
=
PVE::INotify::
read_file
("
hostname
");
# normally you use username/password,
# but we can simply create a ticket if we are root
my
$ticket
=
PVE::AccessControl::
assemble_ticket
('
root@pam
');
my
$wcount
=
2
;
my
$qcount
=
100
;
sub
test_rpc
{
my
(
$host
)
=
@_
;
for
(
my
$i
=
0
;
$i
<
$qcount
;
$i
++
)
{
eval
{
my
(
$page
,
$response
,
%
reply_headers
)
=
get_https
(
$hostname
,
8006
,
'
/api2/json
',
make_headers
(
Cookie
=>
"
PVEAuthCookie=
$ticket
"));
die
"
$response
\n
"
if
$response
!~
m/200 OK/
;
};
my
$err
=
$@
;
if
(
$err
)
{
print
"
ERROR:
$err
\n
";
last
;
}
}
}
sub
run_tests
{
my
(
$host
)
=
@_
;
my
$workers
;
my
$starttime
=
[
gettimeofday
];
for
(
my
$i
=
0
;
$i
<
$wcount
;
$i
++
)
{
if
(
my
$pid
=
fork
())
{
$workers
->
{
$pid
}
=
1
;
}
else
{
test_rpc
(
$host
);
exit
(
0
);
}
}
# wait for children
1
while
(
wait
>
0
);
my
$elapsed
=
int
(
tv_interval
(
$starttime
)
*
1000
);
my
$tpq
=
$elapsed
/
(
$wcount
*
$qcount
);
print
"
$host
:
$tpq
ms per query
\n
";
}
run_tests
(
$hostname
);
# test 'apache'
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment