javascript - 通过jquery ajax上传和加载图片

标签 javascript jquery asp.net asp-classic

所以,让我更好地解释一下,我很确定标题并没有说明什么。

我负责对公司系统进行一些改进。现在系统将当前图像保存为一个文件,并将图像的路径插入到数据库中。

那么,如果它有效,问题是什么?好吧,如果服务器一直插入大量图像,服务器将需要一些改进,所以我的第一个想法是,为什么不将图像数据保存到数据库中并通过 ajax 调用加载它呢?这很好,它不会使服务器因图像中的大量千兆字节而过载,不会出现重复等问题,但是当我从 jQuery 调用 ajax 方法时,发送到服务器端的数据是通过查询字符串如果数据超过 6000 个字符,就像大多数情况一样,当我使用 base64 编码时,我无法调用该方法。

我的另一个想法是,将图像发送到服务器端,然后生成数据保存到数据库中,当用户想看图像时,服务器将数据转换为图像并发送到客户端.但问题是,这个系统的用户很多,发送/接收大量图片会导致服务器由于请求量大而出现内存问题。

长话短说,在不使服务器容量过载的情况下,从客户端向服务器发送/接收图像的最佳方式是什么。

P.S.:很抱歉发了这么长的帖子,我想提出一个明确的问题。

提前致谢。

最佳答案

服务器将重载更多的图像存储在数据库中。大多数网络服务器都非常有效地提供静态文件(如图像)。

在尝试解决问题之前,您必须多考虑问题:

  • 您的问题是带宽过载吗?尝试在上传前调整客户端图像的大小(您可以使用 PlUpload 等工具)。如果你不能,至少在服务器端调整它们的大小以提供更小的服务并节省下载带宽

  • 您的问题是硬盘驱动器空间过载吗?再次调整图像客户端或服务器端的大小。

  • 您的问题是 CPU 过载吗?尝试确定导致峰值的根代码。请注意,大量请求会导致高 CPU,您可能需要更强大的服务器(或其他网络服务器)

关于javascript - 通过jquery ajax上传和加载图片,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10077971/

相关文章:

javascript - Rivet.js 中的双向 Binder

javascript - 无法通过命令提示符运行我的 JMeter webdriver 采样器脚本

javascript - 将定制控制台与ESlint推荐的设置一起使用

c# - 在页面加载时,使用 listview 和 datapager 导航到 listviewitem 所属的特定页面?

c# - 在不剥离标签的情况下获取 HTML 内容的前 100 个字符

javascript - gulp-inject 不适用于事件流

javascript - for...in 循环和 jQuery each() 函数有什么区别?

jQuery 检测上述未知级别的父级?

javascript - 在不同端点加载 javascript 文件

asp.net - 从 Excel 导入数据集时为列值插入 NULL