I found this article on OSv blog - http://blog.osv.io/blog/2017/06/12/serverless-computing-with-OSv/ - very interesting and inspiring. Besides the claim that OSv is a perfect platform for "serverless" it made me think that "stateless" does not apply only to "serverless" but also to many long-lived apps running on regular VMs. In my experience I have developed many apps reading/writing from/to external storage (MongoDB in Mongo Labs, DynamoDB, S3, RDS on AWS, etc) and communicating over HTTP, SNS, SQS with outside world that would not need to store anything locally except for logs (even that can be set up to be pushed to a remote logging service like Loggly (https://www.loggly.com/docs/java-logback/)).
But more to the point: if one wanted to use OSv for serverless or stateless service I think that ramfs instead of zfs would be the best file system to use. It would allow for fastest boot time as well as disk I/O (am I right here?). As I understand the existing ramfs implementation in OSv has some limitations like size of the image related to how kernel get decompressed, etc. Also comes with unnecessary linked-in zfs code and possibly dependant libraries. Also it probably unnecessarily probes storage devices which means the storage drivers code could also be removed. Could someone please elaborate/summarize the status of current ramfs implementation? What features does it have? Please see some questions below: - Is it read-only? - Is it faster than zfs? - How does it utilize memory relative to the application? - What limits does it have - Does size of the image affect boot time? Also what would be the list of things to be enhanced/fixed in OSv to make ramfs images more "production-ready" and applicable to bigger apps (running on JVM) in priority order? I experimented with ramfs a little and I was able to build and run ramfs image with httpserver module. For some reason I failed to create and run an image with java app possibly due to the image size limit - I think the build process at some point got stuck. I used openjdk8 compact 3 with java beans which I think is under 50MB uncompressed. I thought I found an example of someone successfully building and running spring boot on ramfs. Also I found more information here: - https://groups.google.com/forum/#!searchin/osv-dev/zfs$20less%7Csort:date/osv-dev/dK3jDR-TYyk/069QUCJeCQAJ - https://github.com/cloudius-systems/osv/pull/646 - https://github.com/cloudius-systems/osv/commit/714cfd97e48ba5fecba224430762d2c8aac7c0eb - https://github.com/cloudius-systems/osv/issues/195) Waldek -- You received this message because you are subscribed to the Google Groups "OSv Development" group. To unsubscribe from this group and stop receiving emails from it, send an email to osv-dev+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.