This is a sample image data uploader.
It decodes Base64-encoded image data from request body json and uploads decoded bytes to the target remote SFTP Server.
It uses webflux(reactor streams and netty) for an asnyc flow.
Opening a new SSH Connection is too expensive that we should avoid opening a new SSH connection per request and consider to reuse pre-open connections.
To prevent opening a new SSH connection for each request, it implements a SFTP connection pool managing sftp connections in memory with concurrent hash map collection.
- maven
- Spring Boot Webflux (2.6.6)
- jsch 0.2.7(unofficial)