Web 技术研究所

我一直坚信着,Web 将会成为未来应用程序的主流

地铁开门方向与Web缓存优化

  今天去了上海。在地铁上,一个与北京地铁不同的地方引起了我的思考。北京的地铁需要乘客自己记住车门的方向,只有方向发生改变时才通知乘客。而上海的地铁则是每一站都报出将要开启的车门方向。这就是两种程序设计上的差异,两个城市的设计都很正确。
  北京的地铁的开门方向改变并不频繁,乘客通常只要从自己上车的那个门下车就行了。只有少数时候会出现车门方向改变的情况。而上海地铁的开门方向就不太稳定,存在当前站是左侧车门,而前后的站都是右侧车门这种情况。
  由于两个系统中,数据的更新频率不同,所以它们的设计者采取了不同的做法。这些做法没有优劣之分,它们都很符合自己的应用场景,所以都是正确的。我们在做Web开发时也应该对特定场景采取最合适的优化方式。优化只有最适合,没有最好!
  对于更新频率低的数据,我们就应该像北京地铁一样,让乘客自己记住。所以这类数据我们应该做客户端缓存。而对于更新频率高的数据,使用缓存来优化可能就不太有效。甚至会造成反效果。比如数据是实时更新的,如果做缓存的话就会耗费客户端不必要的存储空间。所以我之前就喷过很多人以添加URL时间戳的方式来避免缓存。既然需要实时数据,为什么不直接关掉缓存呢?加时间戳虽然可以解决眼下的问题,但每个不同时间戳的URL内容都缓存到了用户的磁盘上。如果是移动端,App可能会越来越大,不懂清缓存的用户就要哭瞎了。所以这种情况就应该使用上海地铁的做法,实时内容实时报,不需要乘客记住任何东西。
  嘛,其实这篇文章全是水,没啥技术含量。只是今天突然想到这些东西就扯一扯,顺便爽爽地喷了一下某些奇怪的做法。
网名:
3.84.186.*
电子邮箱:
仅用于接收通知
提交 悄悄的告诉你,Ctrl+Enter 可以提交哦
神奇海螺
[查看全部主题]
各类Web技术问题讨论区
发起新主题
本模块采用即时聊天邮件通知的模式
让钛合金F5成为历史吧!
次碳酸钴的技术博客,文章原创,转载请保留原文链接 ^_^