Skip to content

Latest commit

 

History

History
57 lines (46 loc) · 2.08 KB

README.md

File metadata and controls

57 lines (46 loc) · 2.08 KB

Warning

This Project is a work in progress and is not suitable to be used at this moment.
The Processing algorithms are far from optimal and will undergo massive Improvements.
Star the repository for progress updates.

Nano Image Server

Rust-Linux Worklflow Rust-Windows Worklflow


image


Nano Image Server is a tiny, blazingly fast service to serve images with support for image operation on fly.

Features

  1. Low latency Image delivery
  2. Image operation on fly via url queries
  3. Support for GPU Acceleration
  4. Simple Image browsing utility
  5. Caching and Instant Retrieval
  6. Support for Linux and Windows

Usage

  1. Place Images you need in images folder next to the executable
  2. Start the server
./nano_image_server #Linux
start nano_image_server.exe #Windows
  1. Access the server from port 8000 in localhost.
  2. To get image go to /image/<imagename>.<format>
  3. If needed resizing use queries resx and resy /image/Nature.jpg?resx=1920&resy=1080
  4. When resizing use query resfilter /image/Nature.jpg?resx=1920&resy=1080&resfilter=lanczos
  5. If specified size is 0 or left unspecified they display original size of the image
  6. If resfilter query is unspecified, nearest is chosen by default
  7. Choose from several resize algorithms for resizing using the resfilter query.
    Availible resize algorithms are,
    • Nearest
    • Triangle
    • Catmullrom
    • Gaussian
    • Lanczos

Version Benchmarks

# command
ab -n 1000 -c 24 -k 'http://localhost:8000/image/in.jpg?resx=1080&resy=1920' #With Processing
ab -n 1000 -c 24 -k 'http://localhost:8000/image/in.jpg' #Without Processing

Nano_image_server With ApacheBench on 24 Threads (Balanced Power Mode on a Laptop)

image