.NET应用服务器
昨天参加Oracle的一个活动,知道了WebLogic的强大,于是对应用服务器产生了兴趣。
WebLogic是一个Java EE应用服务器(与Java EE对应的另外一个技术平台就是.NET)。

为什么要应用服务器?
当你开发了一个服务端应用程序,部署到服务器之后,需要一个针对这个应用程序的执行环境,而不是将代码放到服务器上就能运行。
你需要将Java的JVM或者.NET的CLR运行起来执行你的应用程序;如果是Web应用程序,需要接收用户通过浏览器发出来的请求,并且能将处理结果返回给浏览器。。。
所以,服务器上仅有操作系统是不够的,还需要相应的应用程序执行环境,最好能有提供执行环境、方便应用程序运行的专用服务器,于是应用服务器应运而生。
如果你是用Java开发的服务端应用程序,不管服务器用的是什么操作系统,只要安装一个Java应用服务器就行了,比如这里提到的WebLogic。
如果你是用.NET开发的服务端应用程序,如果服务器用的是Windows,你需要安装IIS,安装.NET Framework;如果服务器用的是Linux,您需要安装Apache,安装Mono,安装Apache Mono模块。如果有跨平台的.NET应用服务器,比如叫NWeblogLogic,不管服务器用的是什么操作系统,只要安装NWeblogLogic,就能跑.NET应用程序,是不是更幸福一些。
目前有没有.NET应用服务器?
有!一图胜千言,请看下图:

Windows Server 2012有一个专门的角色叫Application Server,而要跑.NET Web应用程序,必须要安装Application Server中的2个功能:IIS+.NET Framework 4.5。
所以,我觉得在不开源的.NET时代,真正的.NET应用服务器就一个——IIS+.NET Framework。

随着.NET进入开源时代,你可以把IIS换成另外的Web服务器(因为有了OWIN),把.NET Framework换成.NET Core,再加上OWIN服务器,再加上WCF的替代品,将这些打包在一起,做成一个.NET应用服务器——NWebLogic。Mono也许可以往这个方向发展。
应用服务器是一个不容易理解的概念,写出来理清一下自己的理解,不对之处,欢迎指出。
【更新】
目前我最喜欢的对Application Server的定义:
An application server exposes business logic to client applications through various protocols.
【补充】
PC Magazine对Application Server的解释值得一看,把其中的几张图贴出来:



【相关链接】
Why does Java apps need an application server and .Net just IIS Web Server?
Application Server vs. Web Server
.NET应用服务器的更多相关文章
- JSP之WEB服务器:Apache与Tomcat的区别 ,几种常见的web/应用服务器
注意:此为2009年的blog,注意时效性(针对常见服务器) APACHE是一个web服务器环境程序 启用他可以作为web服务器使用 不过只支持静态网页 如(asp,php,cgi,jsp)等 ...
- 使用ehcache持久化数据到磁盘 并且在应用服务器重启后不丢失数据
使用ehcache时如何持久化数据到磁盘,并且在应用服务器重启后不丢失数据1.如何持久化到磁盘使用cache.flush(),每次写入到cache后调用cache.flush() ,这样ehcache ...
- OpenResty 是一个全功能的 Web 应用服务器
OpenResty (也称为 ngx_openresty)是一个全功能的 Web 应用服务器.它打包了标准的 Nginx 核心,很多的常用的第三方模块,以及它们的大多数依赖项. 通过众多进行良好设计的 ...
- 分析案例:应用服务器W3WP进程CPU持续超过百分之九十(Oracle客户端Bug)
问题描述: 项目反馈应用负载的其中一台服务器业务操作的响应非常慢,登录该服务器发现W3WP进程CPU持续超过90%,哪怕在业务低峰期也是如此?远程查看后发现该应用服务器承载的请求确实很低,why??? ...
- 应用服务器和Web服务器
如上图所示,绝大部分的公司会采用Apache+tomcat集群(或jetty集群)来部署公司的Web服务, Web服务器和应用服务器关系,先介绍一下我们常说的服务器: Tomcat服务器,是运行ser ...
- Jetty应用服务器的安装详解
Jetty是一个开源的Servlet容器和应用服务器,它极度轻量级.高便携性.功能强大.灵活和扩展性好,而且支持各种技术如SPDY.WebSocket.OSGi.JMX.JNDI和JAAS.Jetty ...
- 应用服务器Glassfish任意文件读取漏洞
catalogue . 前言和技术背景 . Glassfish安装配置 . 漏洞利用 . 漏洞缓解(修复) 1. 前言和技术背景 0x1: GlassFish是什么 GlassFish 是用于构建 J ...
- EBS应用服务器启动指南
1.ssh应用服务器 applprod用户密码:*** 管理脚本在$ADMIN_SCRIPTS_HOME路径下 adstrtal.sh 启动所有服务,命令行为adstrtal.sh ...
- Spring-事物-不依赖应用服务器的开源JTA事物实现
不依赖应用服务器的开源JTA事物实现JOTM和Atomikos Transactions JOTM 即基于Java开放事务管理器(Java Open Transaction Manager),实现JT ...
随机推荐
- ASDM through site to site VPN
网上大部分文档只提到两个地方需要设置: 在6.2版本确实可以.但在7.2版本上只有用vpn client或anyconnect client连上的客户端可以用ASDM连上ASA,而通过site to ...
- 使用属性android:onClick,出现异常NoSuchMethodException
在Activity中注册点击事件有两种方式,setOnClickListener或在xml中设置控件的android:onClick="gotoSecond"属性,在Activit ...
- Android中实现倒计时
1.需求 弹出提示的dialog,实现倒计时,结束后关闭dialog 2.dialog界面布局 <?xml version="1.0" encoding="utf- ...
- jq实现 按钮点击一次后 3秒后在可点击
if(printRemind(selectPrintTemplate,selectOrders,orderStatus,isPreview)) //调用打印数据并打印 ajaxDataAndDoPri ...
- 手机浏览器,微信中播放amr录音
由于微信公众号开发中,临时素材只有三天的有效期,但是客户要求所有录音永久保存,永久素材数量又有限制,故只能把录音保存到服务器上.但是存到服务器上有一个问题,手机微信中无法直接播放amr录音.无意中发现 ...
- Git 的origin和master分析
首先要明确一点,对git的操作是围绕3个大的步骤来展开的(其实几乎所有的SCM都是这样) 1. 从git取数据(git clone) 2. 改动代码 3. 将改动传回git(g ...
- typeid详解(转)
(http://www.cppblog.com/smagle/archive/2010/05/14/115286.html) 在揭开typeid神秘面纱之前,我们先来了解一下RTTI(Run-Time ...
- React Native移动框架功能研究
React Native移动框架功能研究 此篇只研究React Native框架的功能. 一.React Natvie是什么 React Native是使用React(或者说JS)来开发原生APP的框 ...
- [渣译文] SignalR 2.0 系列:SignalR的服务器广播
英文渣水平,大伙凑合着看吧…… 这是微软官方SignalR 2.0教程Getting Started with ASP.NET SignalR 2.0系列的翻译,这里是第八篇:SignalR的服务器广 ...
- javascript 设计模式-----策略模式
在<javascript设计模式>中,作者并没有向我们介绍策略模式,然而它却是一种在开发中十分常见的设计模式.最常见的就是当我们遇到一个复杂的表单验证的时候,常常需要编写一大段的if和el ...