使用生活实例理解Asp.net运行时

学习编程语言,掌握面向对象的编程思想尤为重要,一旦理解了面向对象的这种概念,那么好些地方拿到生活中去理解,就容易的多了。
书本上的枯燥干涩的语言,对于好多人来说,即难懂,更难长时间牢牢记得。但是编程语言是为生活服务,也是来源于生活。我们的生活是丰富多彩的,那么,使用生活中的实例来理解编程,一切就容易的多了。
下面,我们就用生活中打电话的例子来理解ASP.NET运行时的内部过程:

当请求到达IIS后,IIS通过Aspnet_isapi.dll的作用将请求转交给ASP.NET运行时环境,在Asp.net运行时环境中进行一定处理,最终处理结果会返回给IIS,发送到客户端。
Asp.net运行时中处理请求是通过一系列对象完成的:
HttpApplication:通过使用HttpApplication类的一个实例来处理收到的众多请求,它每次只能处理一个请求。
生活实例:相当于手机网络运营商先接收所有拨打我们手机号码的所有电话请求,但是它每次只能给你传递一个电话请求,如果同时有两个或以上请求,就需要等待第一次请求结束才可以发送第二次请求。
HttpModule:对Http请求进行筛选过滤。它可以附加一些需要信息在这个Http请求,或者针对截获的请求信息做一些额外工作,更或者某些情况下干脆终止满足一些条件的HTTP请求。经过HttpModule赛选过滤后,把适合条件的HTTP请求传递给真正的处理中心(HttpHandler)。
生活实例:相当于手机,我们通过对手机的设置,可以设置来电防火墙,拦截黑名单的来点,也可以设置指定号码的联系人名称,头像和个性铃声等等。然后把来电防火墙放行的来电通过个性化的形式传递给我们。
HttpHandler:是HTTP请求的真正处理中心。Http请求经过它的处理后,再通过httpApplication发出回应。
生活实例:相当于人,来电经过防火墙过滤,以设定的格式通知手机持有者,手机持有者接听电话,并将回复声音通过手机网络运营商传递到来电拨打者。
当然,仅仅理解了这个过程并没有什么了不起的,但是,它会在我们以后实现一些相关的功能的时候,能够很快的明白我们要用的是什么,要从哪里下手。而不再是“我要怎么做,要用什么技术”。

时间: 2024-10-08 21:09:51

使用生活实例理解Asp.net运行时的相关文章

httpRuntime与ASP.NET 运行时及IIS处理模型

配置 ASP.NET HTTP 运行时设置,以确定如何处理对 ASP.NET 应用程序的请求,配置节及其描述如下所示. <httpRuntime executionTimeout="110"--------------------------指定在被 ASP.NET 自动关闭前,允许执行请求的最大秒数 maxRequestLength="4096"--------------------------指定输入流缓冲阈值限制(以 KB 为单位).此限制可用于防止拒

在Linux安装ASP.Net Core的运行时(Runtime)

在部署的时候,如果您不想在您的Linux服务器上安装.Net Core SDK,您可以只安装Runtime,接下来我们看看该如何安装运行时Runtime. 下载运行时文件 下载页面:https://www.microsoft.com/net/download/linux 先获取一下对应的下载链接,可以使用浏览器点击链接来获取具体文件的下载链接 获取完链接以后,就可以使用命令下获取和安装了 以Centos 7,Ubuntu 16.04为例安装ASP.Net Core 2.0.5的运行时: wget

从零开始入门 K8s | 理解 RuntimeClass 与使用多容器运行时

作者 | 贾之光??阿里巴巴高级开发工程师 本文整理自<CNCF x Alibaba 云原生技术公开课>第 30 讲,点击直达课程页面.关注"阿里巴巴云原生"公众号,回复关键词"入门",即可下载从零入门 K8s 系列文章 PPT. 一.RuntimeClass 需求来源 容器运行时的演进过程 我们首先了解一下容器运行时的演进过程,整个过程大致分为三个阶段: ? 第一个阶段:2014 年 6 月 Kubernetes 正式开源,Docker 是当时唯一的.

理解ASP.NET 5运行时命令:DNVM, DNX, 和DNU

ASP.NET 5 引入了一个新型的运行时,让我们可以现场交付模式组合式构建应用程序,而不依赖于宿主机上的.NET框架.这种新模式为我们提供了命令行工具(DNVM.DNX.DNU)用于管理我们的.net 版本,依赖的库和运行环境,我们可以不需要Visual Studio,只需要一个文本编辑器和命令行就可以开发一个应用程序. 了解.NET 版本管理器 (DNVM) 之间 ,.NET 执行环境 (DNX) 和.NET 开发实用程序 (DNU) 之间的关系是开发 ASP.NET 5的根本.在这篇文章我

【特种兵系列】编译时与运行时

在开发和设计的时候,我们需要考虑编译时,运行时以及构建时这三个概念.理解这几个概念可以更好地帮助你去了解一些基本的原理.下面是初学者晋级中级水平需要知道的一些问题. Q.下面的代码片段中,行A和行B所标识的代码有什么区别呢? public class ConstantFolding { static final int number1 = 5; static final int number2 = 6; static int number3 = 5; static int number4= 6;

Android运行时ART加载OAT文件的过程分析

在前面一文中,我们介绍了Android运行时ART,它的核心是OAT文件.OAT文件是一种Android私有ELF文件格式,它不仅包含有从DEX文件翻译而来的本地机器指令,还包含有原来的DEX文件内容.这使得我们无需重新编译原有的APK就可以让它正常地在ART里面运行,也就是我们不需要改变原来的APK编程接口.本文我们通过OAT文件的加载过程分析OAT文件的结构,为后面分析ART的工作原理打基础. 老罗的新浪微博:http://weibo.com/shengyangluo,欢迎关注! OAT文件

iOS Runtime 运行时

Objc Runtime使得C具有了面向对象能力,在程序运行时创建,检查,修改类.对象和它们的方法.(Runtime是C和汇编编写的) Runtime系统是由一系列的函数和数据结构组成的公共接口动态共享库,在/usr/include/objc目录下可以看到头文件,可以用其中一些函数通过C语言实现Objective-C中一样的功能. Runtime 又叫运行时,是一套底层的 C 语言 API,其为 iOS 内部的核心之一,我们平时编写的 OC 代码,底层都是基于它来实现的. Objective-C

Android运行时ART加载类和方法的过程分析

在前一篇文章中,我们通过分析OAT文件的加载过程,认识了OAT文件的格式,其中包含了原始的DEX文件.既然ART运行时执行的都是翻译DEX字节码后得到的本地机器指令了,为什么还需要在OAT文件中包含DEX文件,并且将它加载到内存去呢?这是因为ART运行时提供了Java虚拟机接口,而要实现Java虚拟机接口不得不依赖于DEX文件.本文就通过分析ART运行时加载类及其方法的过程来理解DEX文件的作用. 老罗的新浪微博:http://weibo.com/shengyangluo,欢迎关注! 在前面An

Java运行时,各种类型存储介绍

Java的内存分配   Java程序运行时的内存结构分成:方法区.栈内存.堆内存.本地方法栈几种.    方法区    存放装载的类数据信息,包括:基本信息:每个类的全限定名.每个类的直接超类的全限定名.该类是类还是接口.该类型的访问修饰符.直接超接口的全限定名的有序列表.每个已装载类的详细信息:运行时常量池.字段信息.方法信息.静态变量.到类classloader的引用.到类class的引用.   栈内存     Java栈内存由局部变量区.操作数栈.帧数据区组成,以帧的形式存放本地方法的调用