在一个应用程序中,我需要开始缓存数据,这让我开始思考……
现在问题出在缓存和可维护性上。
一方面,我在想,如果一切都是使用Javascript HTML模板构建的,那么我的应用程序将只提供一个HTML布局/shell和一堆JSON。如果你看看Facebook和Twitter的HTML源代码,这基本上就是他们正在做的事情(95%的json/javascript,5%的html)。这将使我的应用程序只需要缓存JSON (页面、操作和/或记录)。这意味着,无论您是访问JSON api的远程api开发人员,还是访问strait应用程序的远程api开发人员,都会访问缓存。也就是说,我不需要两个缓存,一个用于JSON,一个用于HTML。这似乎会将我的缓存存储减少一半,并使事情变得更简单。
另一方面,我认为,根据我所见/所见,在服务器端生成静态HTML,并进行缓存,似乎跨浏览器的性能要好得多;您可以立即获得图形,而不必等待javascript渲染它。StackOverflow似乎每件事都是用普通的超文本标记语言做的,谷歌也是如此,你可以看出……所有内容都会同时出现。请注意,尽管在twitter.com上,页面在0.5-1秒内是空白的,并且页面会分块: javascript必须呈现json。这样做的缺点是,对于任何动态的东西(如无休止的滚动,或网格),我无论如何都必须创建javascript模板。所以现在我有了服务器端的HAML模板、客户端的javascript模板,还有更多的东西需要缓存。
我的问题是,对于如何处理这个问题,有没有达成共识?你将两者混合在一起的经验与100%将一个放在另一个上的经验有什么好处和缺点?
更新:
我还没有决定使用100% javascript模板的一些原因是:
/#!/path
,但还不知道这将如何影响其他搜索引擎,以及较老的浏览器如何处理它。这似乎需要一个重要的设置。https://stackoverflow.com/questions/5212859
复制相似问题