In https://cwiki.apache.org/TS/ssdsupport.html, we proposed our demands. In irc log jplevyakg proposed three ways for supporting ssd cache. 1) attach to the RAM cache to store the objects. That would be lower CPU and would lean hard on the SSD and would use RAM to get a decent replacement policy 2) attach to the disk as a front end cache. Again lower CPU but use less RAM and have a poorer replacement policy. Or 3) go for full priority queue, best replacement policy, most flexibly, but also the most work and potentially use more CPU and a go I was thinking the second option, i wanna select ssd as a transition cache in sata and ram cache. 1) When an user request arrived, ts first find it in ram cache, if not hit, then ssd, and then sata. 2) When the request was hit in ram cache or ssd, then return the object to the user. When the request was hit in sata, then write it to ram cache following the existing way, at the same time write it to ssd also. When the request was not hit in all the cache, then the request was send to origin server, and write the object back to sata.(Because our cache hierachy was 10G ram cache+100G ssd+1TB sata, so write request both in ram cache and ssd waste at most 10% percent storage) I reviewed the Part structure, and i think i can use Part for supporting ssd cache. I wanna keep a special Part member in Cache, and when Cache find an object, it first find it in ram cache, and if not hit, then find it in this special Part member, and then the CacheHostTable member. Because i don't wanna ts do two asynchronous read, so i wanna find the right Part and do only one read. If not so, i thought there maybe two asynchronous read: first find in ssd cache, and if false, go to sata. This will also change the logic of do_cache_open_read and state_cache_open_read in HttpCacheSM. I have seen the codes of iocore/cache for 2 weeks, but i think if i want to understand it fully, i need another serveral weeks based on some help. If you have a better scheme, please tell me. Right now i have to find the fast way to support ssd asap, because we wanna to put ATS to online usage. I have not seen the codes related with partition.config and hosting.config, and i think if let ssd cache works with partition.config, then another more work will be done, that will delay our plan. But the best thing i wanna do is to implement it in an general patch for others' usage, so i wanna find a better scheme, and do some work for current demands, and later, complete another more demands.
-- Best regards, Lian Zhang