Skip to content

[Z Blog] Setting up OSX for HTTP benchmarking

Richard Hightower edited this page Apr 22, 2015 · 3 revisions

/etc/sysctl.conf

kern.maxproc=2500
kern.maxfilesperproc=165536
kern.maxfiles=165536
kern.maxprocperuid=2048


kern.ipc.maxsockbuf=4194304
kern.ipc.somaxconn=2048
kern.ipc.nmbclusters=2048


net.inet.tcp.rfc1323=1
net.inet.tcp.win_scale_factor=4
net.inet.tcp.sockthreshold=16
net.inet.tcp.sendspace=1042560
net.inet.tcp.recvspace=1042560
net.inet.tcp.mssdflt=1448
net.inet.tcp.v6mssdflt=1428
net.inet.tcp.msl=600
net.inet.tcp.always_keepalive=0
net.inet.tcp.delayed_ack=3
net.inet.tcp.slowstart_flightsize=20
net.inet.tcp.local_slowstart_flightsize=20
net.inet.tcp.blackhole=2
net.inet.udp.blackhole=1
net.inet.icmp.icmplim=50

.profile

ulimit -S -n 100000
ulimit -S -u unlimited

/etc/launchd.conf

limit maxfiles 165536 165536
limit maxproc 2048 2048

With this setup, I was able to get a qbit http client to make 215,924 HTTP calls per second (for a while) to a qbit HTTP server on OSX. OSX is NetBSD so it is just a matter of finding the right knobs. 215,924 HTTP per second on OSX.

Tutorials

__

Docs

Getting Started

Basics

Concepts

REST

Callbacks and Reactor

Event Bus

Advanced

Integration

QBit case studies

QBit 2 Roadmap

-- Related Projects

Kafka training, Kafka consulting, Cassandra training, Cassandra consulting, Spark training, Spark consulting

Clone this wiki locally