Repository navigation
v1.6
What changed
- Added
HEADrequest support: clients can now request headers only without downloading the file body - Responses now include a
Last-Modified:header with the file's last change time - Responses now include
Accept-Ranges: none, explicitly warning that partial/range downloads are not supported 405 Method Not Allowedresponses now include anAllow:header listing supported methods, as required by the HTTP spec
Downloads
| File | Description |
|---|---|
nasmserver-linux-x64.zip |
Linux x86_64 self-contained bundle, no dependencies required |
nasmserver-linux-aarch64.zip |
Linux aarch64 (e.g. Raspberry Pi), runs via QEMU emulation, no dependencies required |
Updating to this version
To update to this version, update your existing binaries and configuration files.
If you have a system install of NASMServer, use the following command to update your install (it won't overwrite your configurations):
# x64
wget https://github.com/douxxtech/nasmserver/releases/download/v1.6/nasmserver-linux-x64.zip && unzip nasmserver-linux-x64.zip -d nasmserver-v1.6 && (cd nasmserver-v1.6 && sudo ./install) && rm -rf nasmserver-linux-x64.zip nasmserver-v1.6
# aarch64
wget https://github.com/douxxtech/nasmserver/releases/download/v1.6/nasmserver-linux-aarch64.zip && unzip nasmserver-linux-aarch64.zip -d nasmserver-v1.6 && (cd nasmserver-v1.6 && sudo ./install) && rm -rf nasmserver-linux-aarch64.zip nasmserver-v1.6
Benchmark results
Level 1
threads: 4 (auto), conns: 50, duration: 20s
[server]
cpu before/after: 0.0% / 83.1%
mem before/after: 1448kB / 1448kB
open fds before/after: 6 / 6
threads before/after: 1 / 1
[wrk]
Running 20s test @ http://127.0.0.1:8080/
4 threads and 50 connections
Thread Stats Avg Stdev Max +/- Stdev
Latency 4.85ms 10.93ms 420.24ms 99.47%
Req/Sec 1.77k 360.31 2.84k 67.75%
141170 requests in 20.03s, 212.31MB read
Socket errors: connect 0, read 124, write 0, timeout 0
Requests/sec: 7047.77
Transfer/sec: 10.60MB
Level 2
threads: 4 (auto), conns: 200, duration: 30s
[server]
cpu before/after: 83.0% / 85.7%
mem before/after: 1448kB / 1448kB
open fds before/after: 6 / 6
threads before/after: 1 / 1
[wrk]
Running 30s test @ http://127.0.0.1:8080/
4 threads and 200 connections
Thread Stats Avg Stdev Max +/- Stdev
Latency 10.08ms 69.15ms 1.67s 98.67%
Req/Sec 1.81k 1.21k 5.24k 59.56%
211291 requests in 30.07s, 317.77MB read
Socket errors: connect 0, read 741, write 0, timeout 33
Requests/sec: 7026.79
Transfer/sec: 10.57MB
Level 3
threads: 4 (auto), conns: 500, duration: 45s
[server]
cpu before/after: 85.7% / 86.7%
mem before/after: 1448kB / 1448kB
open fds before/after: 6 / 6
threads before/after: 1 / 1
[wrk]
Running 45s test @ http://127.0.0.1:8080/
4 threads and 500 connections
Thread Stats Avg Stdev Max +/- Stdev
Latency 22.58ms 109.21ms 1.86s 95.40%
Req/Sec 1.78k 844.40 5.46k 68.77%
317281 requests in 45.06s, 477.17MB read
Socket errors: connect 0, read 2793, write 0, timeout 87
Requests/sec: 7040.72
Transfer/sec: 10.59MB
Commit history
- v1.6 (
912f716) - Merge pull request #16 from douxxtech/head (
0e94abb) - added HEAD request support (
e957a67) - moved date_tm_buf to bss (
4525a57) - Merge pull request #15 from douxxtech/accept-range (
3002097) - Added accept ranges header (
a0e5091) - Merge pull request #14 from douxxtech/last-modified (
ad03c16) - added 'FILE_LAST_MODIFIED' macro (
f30872b) - added Last-Modified header and reorganized the headers order (again) (
d667ae3) - Merge pull request #13 from douxxtech/allow-header (
8e37e48) - Added Allow: header to 405s responses (
f3cc21d) - updated hardcoded version (v1.5) (
089c092)