服务器软件大扫盲( 二 )


服务器软件大扫盲

文章插图
Apache 一般是指 Apache HTTP Server , 是 Apache 软件基金会(和 Tomcat 同属一家基金会 , 因此容易混淆)下的一个网页服务器软件 。由于其跨平台和安全性 , 被广泛使用 , 是最流行的 Web 服务器软件之一 。它快速、可靠并且可通过简单的 API 扩展 。
我是在服务器上安装 wordPress/ target=_blank class=infotextkey>WordPress 的时候用到了 Apache , 当时并不知道有 LAMP 的存在 , 所以安装的过程中吃了很多苦 , 关键是最后没有安装成功 , 大写的尴尬 。
最后还是在青铜群里的一个群友的远程帮助下才完成安装的 , 他是搞 php 的 。LAMP 就是他告诉我的 , 安装起来非常的傻瓜式 , 非常适合我这种对命令行有抗拒心理的程序员 。
LAMP 是指一组运行动态网站或者服务器的自由软件名称首字母缩写:
  • linux , 操作系统(一般服务器软件都安装在 Linux 上 , 性能极佳)
  • Apache , 网页服务器(就是 Apache HTTP Server)
  • MariaDB 或 MySQL , 数据库管理系统
  • PHP、Perl 或 Python , 脚本语言
这些软件配合起来使用的时候 , 极具活力 , 它的变体还有很多 , 另外一个比较有名的就是 LNMP , 用 Nginx 代替 Apache 。
 
04、JettyJetty 和 Tomcat 有很多相似之处 , 比如说可以为 JSP 和 Servlet 提供运行时环境 。Jetty 是 Java 语言编写的 , 它的 API 以一组 JAR 包的形式发布 。
服务器软件大扫盲

文章插图
与 Tomcat 相比 , Jetty 可以同时处理大量链接并且长时间的保持这些链接 , 例如 , 一些 Web 聊天应用非常适合用 Jetty 服务器 , 比如说淘宝的 Web 版旺旺 。
Jetty 的架构比较简单 , 它有一个基本数据模型 , 这个数据模型就是 Handler , 所有可以被扩展的组件都可以作为一个 Handler , 添加到 Server 中 , Jetty 就是帮我们管理这些 Handler 的 。
 
05、UndertowUndertow 是一个用 Java 编写的、灵活的、高性能的 Web 服务器 , 提供基于 NIO 的阻塞和非阻塞 API 。
Undertow 可以嵌入到应用程序中或独立运行 , 只需几行代码 , 非常容易上手 。下面这段代码是官网提供的一个使用 Async IO 的简单 Hello World 服务器示例:
public class HelloWorldServer {public static void main(final String[] args) {Undertow server = Undertow.builder.addHttpListener(8080, "localhost").setHandler(new HttpHandler {@Overridepublic void handleRequest(final HttpServerExchange exchange) throws Exception {exchange.getResponseHeaders.put(Headers.CONTENT_TYPE, "text/plain");exchange.getResponseSender.send("Hello World");}}).build;server.start;}}直接运行后 , 在浏览器中地址栏中输入 http://localhost:8080就可以访问到了 。是不是感觉非常轻巧?
如果有小伙伴使用过 JFinal 开发过小型网站的话 , 对 Undertow 应该不会陌生 , 因为 JFinal 的默认容器已经切换到了 Undertow 。
JFinal 是基于 Java 语言的极速 WEB + ORM 框架 , 其核心设计目标是开发迅速、代码量少、学习简单、功能强大、轻量级、易扩展、Restful 。
 
06、企业级至于其他的一些企业级服务器软件 , 我个人没有用过 , 就不细说了 。
  • JBoss , 红帽子收购过 , 后更名为 WildFly 。
  • WebLogic , 甲骨文出品 。
  • WebSphere , IBM 公司出品 。
相信小伙伴们看了出品方 , 就知道这些服务器软件足够的重量级 , 都是大佬 , 都是大佬 。
声明:本文为作者投稿 , 版权归其个人所有 。




推荐阅读