Comments (10)
I have literally had in my Todo list app to update this documentation, and I ahve it started, but I keep postponing it. There are especially some newer features that need some explanation to effectively use.
Give me a week. I'll ping this again once I have a PR.
from microsoft.io.recyclablememorystream.
No PR yet, but you can see the branch so far: https://github.com/microsoft/Microsoft.IO.RecyclableMemoryStream/tree/docupdate
For now, I'm keeping it all in readme.md. If it really grows too large, I can split it up, but I'm hoping to keep it simple.
from microsoft.io.recyclablememorystream.
This has been addressed in PR #82
from microsoft.io.recyclablememorystream.
I have to echo that it would be interesting to read more about how/if the pools are eventually dealocated. We've been very happy so far with the performance of this library, and are using it to support very fast generation of binary blobs of varying sizes - most under 1 MB, but some in the 10s of MB. We have a memory utilization graph of one of our services like this.
The spikes are particularly large requests. An instance of our service jumping up to 2 GB RAM is fine, but it seems weird that the RAM would hang around for an hour if the steady state doesn't require it. I wonder if there might be a good strategy to have more control over shrinking the buffers after particularly big requests - because 99% of our requests don't need a large buffer, but for that 1%, it's nice. I am aware of the aggressive setting, but I don't want to completely deallocate everything all the time either. I'm not entirely sure why the memory shrunk when it did - that yellow request shrunk basically right away, the pink one was almost exactly an hour later, and the teal one was like 80 minutes. This is with .NET Core 3.1 latest on Linux/Docker in Kubernetes.
from microsoft.io.recyclablememorystream.
from microsoft.io.recyclablememorystream.
I would be willing to do a PR to write and add such docs if @benmwatson or someone else would be willing to chat about it on Skype or something.
Docs are tough on open source - I really appreciate that this library exists at all. Thanks very much to the maintainers!!
from microsoft.io.recyclablememorystream.
Please consider opening the PR as-is and give it a WIP label. I’ll take a look and give as good feedback as I can. Thanks!
from microsoft.io.recyclablememorystream.
hey this is a great start - I added some questions to your commit. No reason to break it up as part of this first pass. Thank you!!!
from microsoft.io.recyclablememorystream.
@nycdotnet and others, please see this PR: #82
from microsoft.io.recyclablememorystream.
Nice job - Thank you!
from microsoft.io.recyclablememorystream.
Related Issues (20)
- Continous benchmarking HOT 1
- Multiple StreamManagers in referenced libraries - how to find total memory usage HOT 1
- Large pool limit should apply to whole pool, not each slot HOT 1
- Humanitarian Organization Team mbrgi
- ResponseTime is almost doubled with RecyclableMemoryStream. HOT 5
- Question: GetStream copy existing buffer use case HOT 1
- How effective is this package for buffers that are usually smaller than 256 bytes? HOT 1
- Consider using ArrayPool<byte> as underlying storage mechanism HOT 4
- Breaking changes at 3.0.0 version break OfficeOpenXml NuGet package HOT 11
- Guideline about cryptography with RMS HOT 5
- Unclear Documentation for MaximumFreeSmallPoolBytes
- Upgrade blocker: Recent change of GetStream() to return RecyclableMemoryStream instead of MemoryStream HOT 1
- why just pool MemoryStream HOT 2
- FileStreamResult: ObjectDisposedException: Cannot access a disposed object. HOT 4
- For many small stream writes, RecyclableMemoryStream is slower than other implementations HOT 4
- ETW event source is not working HOT 2
- Use of RecyclableMemoryStreamManager with Confluent.Kafka HOT 2
- RecyclableMemoryStream.TryGetBuffer causes infinite loop when UseExponentialLargeBuffer is true HOT 3
- Does RecycleMemoryStream support data streams larger than 2GB? HOT 1
- Missing `[RequiresUnreferencedCodeAttribute]` annotation for trimming HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from microsoft.io.recyclablememorystream.