我正在做一个POC,我必须在将HTML内容提供给客户端/浏览器之前操纵DOM.
一些用例:
在html页面中注入一个javascript,这个javascript是客户特定的.
根据用户之前选择的主题注入样式表.
......更多此类案例存在一些业务逻辑.
我已经完成了所有用例.我使用Jsoup在Java中实现了它.我也在Node Js中完成了它.我必须决定选择哪种技术?
有没有人知道这两种技术的优点/缺点?请建议我应该如何测试哪两个更好.任何可用于测试所用内存/资源使用/所用时间的工具等.虽然我已经计算了两种情况下的时间.
PS:请随意为服务器端DOM操作和工具建议任何其他技术来测试其性能和内存.
在Java/Node.js之间进行选择取决于您正在构建的应用程序,并且人们总是会提出基准来显示一个的性能优于另一个.大多数这些建议都不适合您的使用案例,因此请考虑您的应用程序,TCO,开发时间等作为参数,除了原始性能和接听电话.
请记住,node.js是单线程异步i/o模型与java的多线程同步i/o模型,并且该节点可以快速开箱即用,而java提供了许多功能,可以在以后派上用场.同样,这些也是主观的.
我建议DOM操作是你应该避免服务器端并尝试将其卸载到客户端javascript或使用更好的模板引擎.如果它是不可避免的,Node.js的拥有不错的选择-尝试使用模块cheerio比重物更快jsdom.
再次,使用这些库有其权衡.Cheerio没有高级DOM操作 - 它试图在服务器上实现类似API的jquery,而jsdom是一个完整的DOM引擎.