请原谅我,如果你觉得这已被无数次回答,但我需要回答以下问题!
为什么数据必须对齐(在4字节/ 8字节/ 2字节边界上)?这里我怀疑的是当CPU具有地址线Ax Ax-1 Ax-2 ... A2 A1 A0时,很可能顺序地寻址存储器位置.那么为什么需要在特定边界对齐数据呢?
在编译代码和生成可执行代码时如何找到对齐要求?
如果例如数据对齐是4字节边界,那是否意味着每个连续字节位于模4偏移处?我怀疑的是,如果数据是4字节对齐,那意味着如果一个字节是1004那么下一个字节是1008(或1005)?
我在Django上做了相当大的文件上传.文件大小一般为10MB-100MB.
我在Heroku上,我已经达到30秒的请求超时.
为了达到极限,Heroku的建议是从浏览器直接上传到S3.
亚马逊通过向您展示如何编写HTML表单来执行上传来记录此文档.
由于我在使用Django,而不是手工编写HTML,我使用的是django-uploadify-s3(示例).这为我提供了一个SWF对象,用JS包装,执行实际的上传.
这部分工作正常!万岁!
该问题是在捆绑数据返回给我的Django模型在一个健全的方式.现在,数据作为一个简单的URL字符串返回,指向文件的位置.
但是,我以前使用django-storages的S3 Boto来管理我的所有文件FileFields,并以令人愉快的方式为后盾S3BotoStorageFile.
重申一下,S3 Boto在孤立方面工作得很好,上传它是孤立地工作,问题在于将两者结合在一起.
我的理解是,填充的唯一方法FileField是提供文件名和文件内容.当您将文件从浏览器上传到Django时,这没有问题,因为Django将文件内容放在缓冲区中并且可以随意使用它.但是,当像我这样直接进行S3上传时,Django只接收文件名和URL,而不是二进制数据,所以我无法正确填充FieldFile.
任何人都知道将S3Boto的FileField与直接到S3上传结合使用的优雅方式?
另外,基于URL管理S3文件的最佳方法是什么?包括设置到期,密钥ID等.
非常感谢!