对于django项目,我计划将jpegs存储到cassandra数据库中。 为网站提供图像的最佳方式是什么? 我已经计划构建自己的wsgi模块,但有更好的方法:是否存在nginx或apache模块?
答案 0 :(得分:3)
我们使用带有缓存层的PHP(包括磁盘和内存,例如Varnish)从Cassandra提供小文件(<5 MB)。
答案 1 :(得分:1)
Astyanax支持文件流入和流出cassandra。
答案 2 :(得分:0)
您可以使用openresty和我开发的Lua CQL client。
用法是这样的:
cassandra = require("cassandra")
local session = cassandra.new()
session:set_timeout(1000)
assert(session:connect("127.0.0.1", 9042))
assert(session:set_keyspace("images"))
local rows, err = session:execute("SELECT * from chunks where chunk_id = ?", {chunk})
if not rows or #rows == 0 then
return ngx.exit(ngx.HTTP_NOT_FOUND)
end
local data = rows[1].data
ngx.header.content_type = "image/jpeg"
ngx.header.content_length = #data
ngx.print(data)