客户端处理到底是什么?
每次你使用在线服务——比如转换文件格式、编辑照片或翻译文字——工作实际发生的地方有两种可能。第一种是传统方式:你的文件或数据被发送到服务提供商的服务器,在那里处理,然后结果再被发送回你这里。这称为服务器端处理。
第二种方式是客户端处理:所有处理都直接发生在你的设备上——在浏览器内——利用现代浏览器已具备的能力。你的文件从不会被发送到任何地方。"被发送"的只是服务提供商发给你浏览器的程序代码(JavaScript),然后正是这段代码在你自己的设备上本地处理你的文件。
为什么这个趋势越来越流行?
有几个因素推动越来越多服务转向客户端方式:
- 隐私意识的提升。越来越多人意识到,每一个上传到别人服务器的文件都意味着对那份数据失去控制——不知道它被保存了多久、被谁读取,或之后被用来做了什么。
- 现代浏览器越来越强大。浏览器的计算能力现在比几年前强大得多,所以许多以前"必须"在服务器上完成的工作,现在可以顺畅地直接在用户设备上完成。
- 对服务提供商来说服务器成本更低。如果所有处理都发生在用户设备上,服务提供商就不需要准备大型服务器来同时承载和处理数百万用户的文件。
- 各国日益严格的数据保护法规促使企业寻找方法,在不必要时完全不保存用户数据,以降低风险。
如何辨别真正的客户端工具?
"安全"或"保护隐私"的宣称在任何页面上都很容易写——重要的是自己验证的方法。以下是任何人都能尝试的简单方法,不需要是程序员:
- 页面加载后关闭网络连接,然后尝试继续使用该功能。如果工具真的是客户端处理,通常处理依然能正常运行(除了真正需要联网的功能,比如下载额外文件)。如果突然出错或卡住,很可能它实际上把数据发送到了服务器。
- 注意大文件的处理速度有多快。通过服务器上传-处理-下载的方式,通常可以从处理开始前有"上传中"的延迟看出来。客户端处理一旦选择文件就立即开始,因为没有任何东西需要发送到任何地方。
- 如果你懂一点技术,可以通过浏览器开发者工具(Network标签)检查——在那里可以清楚看到处理过程中你的文件是否真的被发送到了服务器。
真实案例
MEA Tools的所有工具都运行在客户端
MEA Tools的所有工具——从PDF转图片、合并PDF、拆分PDF,到压缩图片——都基于相同原则构建:你的文件直接在浏览器中处理,从不会上传到我们的服务器。
查看所有工具 →客户端处理总是更好吗?
不一定——这是权衡取舍,不是某种方式绝对更优越的问题。客户端处理非常适合个人性质、不需要与他人实时协作的工作,比如转换文件、编辑图片或计算某些数据。但对于真正需要数据被保存并能从其他设备访问的事情——比如多人同时编辑的协作文档——服务器仍然是必需的,因为那些数据确实需要存在一个大家都能共同访问的地方。
关键是,在使用任何在线工具之前值得问自己的问题是:这项工作真的需要别人的服务器吗,还是其实完全可以由我自己的设备完成?如果答案是后者,不妨寻找真正以客户端方式构建的替代方案。