java - 性能 : com. sun.net.httpserver.HttpServer 与 j


我正在开发一个将发送和接收 JSON 字符串的 Java Web 应用程序。 JSON 通过 jersey 生成并映射到 jaxb 注释的 pojo。

应用程序本身不是很复杂,但需要在大流量下工作。我尝试了两种方法。第一个基于 jetty 作为容器的 servlet,第二个作为带有 oracles HttpServer 类的控制台应用程序(通过“HttpServerFactory.create(..)”使用 jetty)。

我用 apaches ab 工具测试了这两个版本。在并发级别 100 上执行 10,000 个请求。令我惊讶的是,控制台应用程序需要更少的响应时间并且具有更高的传输速率。我预料到相反的结果。

就小型应用程序的性能而言,普通控制台应用程序真的是更好的解决方案吗?谢谢。

最佳答案

如果没有更多信息,几乎不可能说出为什么您的控制台应用程序比 Jetty 服务器执行得更快。

我希望嵌入式 Jetty 实例的执行速度比 Jetty servlet 快一点,因为嵌入式 Jetty 实例能够去除不需要(在该应用程序中)的 servlet API 部分,从而减少开销.我预计差异不会很大。

但是:在像您执行的小型基准测试中,我更有可能怀疑配置问题(在服务器或基准测试中)导致结果不同.

关于java - 性能 : com. sun.net.httpserver.HttpServer 与 jetty,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7971389/

相关文章:

ruby-on-rails-3 - Solr/太阳黑子/Rails 3 错误 : undefined

hibernate - 在 Java 构建路径中添加 jar 之前,无法通过在 pom.xml 中添

wpf - 如何使用不在代码隐藏中的 XAML 绑定(bind) ListView ItemsSou

validation - 如何验证电子商务网站的电子邮件地址?

drupal - 在 drupal 7 中将表单元素添加到节点以供用户输入

xml - 为什么没有 XMLNS 前缀的 XML 属性不等于具有相同本地名称的前缀属性?

.net - 有没有人使用 DbEnumerator

html-agility-pack - html 敏捷包和文本中的三角括号

sql-server - 'Insert into linked table failed, RAI

wpf - 从 DataTemplate 中的控件获取 GridViewColumn