.NET 知识理论

这篇博客深入探讨了.NET相关的Web系统知识,包括Web系统概述、常见Web服务器(如nginx、iis、apache、tomcat)的功能解析,B/S与C/S架构的比较,HTTP协议原理,主流浏览器介绍,DNS解析过程,以及.NET中的反射、装箱和拆箱等核心概念。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

1.Web系统概述

2.常见的web服务器apache/tomcat/nginx/iis 

3.B/S架构和C/S架构

4.B/S架构和C/S架构比较

5.C/S架构交互

6.B/S架构交互

7.http协议

8.主流五大浏览器

9.DNS

11.面向过程

12. 反射

13.装箱和拆箱

14. .net反射

15. post 和get


1.Web系统概述

1.Web,也称万维网(网址以 www 开头),是一种网络使用环境的总称.

2.web是互联网的总称,全称为World Wide Web,缩写WWW ,即全球广域网。

3.从网络使用环境的角色来看,web就是我们平常使用浏览器上网是所看的网页。

4.从技术的角度来看,Web技术包含网站网页的布局设计、代码编写、数据库建立、网络平台等相关技术

2.常见的web服务器apache/tomcat/nginx/iis 

一、nginx  读:俊似

ngnix是反向代理服务器,它是代理,本身并不执行,是个传话筒,把用户提交的请求转发给web服务器,再把web服务器的结果转发给用户。为了提高性能,启用反向代理,实际的web服务器可以有很多台,而ngnix放在前面,可以把这些web服务器整合成一个虚拟的更强大的服务器。

二、iis

iis是微软开发的web服务器,需要收费,主要用来跑 asp.net asp php,只能在windows下运行。

三、apache   读: ap尺

apache是apache基金会的web服务器,免费,只支持静态页面,是html容器,应用范围广泛。

四、tomcat  读: 汤cat

tomcat是apache基金会的java服务器,主要用来跑jsp php python等。

3.B/S架构和C/S架构

一.CS结构的软件

CS:Client/Server 客户端和服务器,这种软件往往需要安装。比如QQ,支付宝,英雄联盟等。

优缺点:

优点:

可以减轻服务器端压力,将部分代码写到客户端。

界面很美观。

缺点:

一旦服务器更新了,客户端也需要更新。

分布式开发比较弱。

二.BS结构的软件

BS:Browser/Server 浏览器和服务器,这种软件不需要安装,只需要通过浏览器就可以访问。

优缺点:

优点:

服务器一旦更新,不需要更新客户端,因为客户端就是浏览器

比较强的分布式能力

缺点:

服务器端压力会比较大。

界面效果不如CS结构软件。

4.B/S架构和C/S架构比较

C/S

B/S




开发

开发难道

对开发人员要求较高

开发门槛低;

只要考虑浏览器的兼容情况;

功能/交互功能

自主性强
交互方式更丰富

依赖于浏览器;

              
 
部署

安装

必须安装客户端程序;配置部署复杂;

只要部署服务器

升级

跟新服务器之后 所有客户端都要升级

只需更新服务器

运行

操作系统/类型

区分操作系统和运行平台

只要有兼容的浏览器即可

性能

最大化利用终端性能

性能相对较低

维护

要求高

方便

个性化需求

单独更新客户端

不支持

安全性

相对封闭,但也需要认真设计

需要花费精力设计

(1)、B/S架构需要重点考虑系统在不同的浏览器中的兼容性问题(浏览器的内核不同)

(2)、C/S 架构需要考虑系统在不同平台的安装、卸载、升级

5.C/S架构交互

它可以分为客户机和服务器两层:

第一层:  在客户机系统上结合了界面显示与业务逻辑;

第二层:  通过网络结合了数据库服务器。

简单的说就是第一层是用户表示层,第二层是数据库层。

      

 

由于只有一层交互,因此响应速度较快。(直接相连,中间没有什么阻隔或岔路,比如QQ,微信,每天那么多人在线,也不觉得慢

6.B/S架构交互

浏览器/服务器结构层:与C/S架构只有两层不同的是,B/S架构有三层。

第一层表现层:主要完成用户和后台的交互及最终查询结果的输出功能。

第二层逻辑层:主要是利用服务器完成客户端的应用逻辑功能。

第三层数据层:主要是接受客户端请求后独立进行各种运算。

 

可以随时更新版本,而无需用户重新下载啊什么的。

B/S架构形式

第一种:客户端-服务器-数据库

这个应该是我们平时比较常用的一种模式:

1、客户端向服务器发起Http请求

2、服务器中的web服务层能够处理Http请求

3、服务器中的应用层部分调用业务逻辑,调用业务逻辑上的方法   (……接口)

4、如果有必要,服务器会和数据库进行数据交换. 然后将模版+数据渲染成最终的Html, 返送给客户端据库

 

第二种:客户端-web服务器-应用服务器-数据库

类似于第一种方法,只是将web服务和应用服务解耦  

1 客户端向web服务器发起Http请求

2 web服务能够处理Http请求,并且调用应用服务器暴露在外的RESTFUL接口  (restful指的是一组架构约束条件和原则)大概提一下rest的资源和价值

3 应用服务器的RESTFUL接口被调用,会执行对应的暴露方法.如果有必要和数据库进行数据交互,应用服务器会和数据库进行交互后,将json数据返回给web服务器

4 web服务器将模版+数据组合渲染成html返回给客户端

URI既可以看成是资源的地址,也可以看成是资源的名称

     

 

应用服务器不限于HTTP.Web服务器的主要工作是显示网站内容

应用服务器是负责逻辑

应用服务器是协同工作与Web服务器,其中一个显示和另一个交互

7.http协议

       HTTP(超文本传输协议):一种无状态的、应用层的、以请求/应答方式运行的协议,它使用可扩展的语义和自描   述消息格式,与基于网络的超文本信息系统灵活的互动。

HTTP是一个应用层协议,由请求和响应构成,是一个标准的客户端服务器模型。

为什么地址栏上面输入要访问的URL后就可以访问到Web页面呢?

我们日常生活中经常会使用浏览器访问Web站点,但是大家有思考过在这个过程中到底发生了什么吗?为什么我们在浏览器地址栏上面输入要访问的URL后就可以访问到Web页面呢?

例如:我们输入了baidu.com这个域名,然后域名通过这个去查询当前所对应的网络ip地址,然后解析url的IP地址返回给客户端,客户端拿到了正确的地址,去找web服务器进行通信,从而获得我们看到百度web页面了

解析url获取ip的过程叫DNS

获取web页面的过程就是典型的三次握手建立tcp的过程

                  DNS,tcp的过程

 

三次握手的详细你们要自己主动去了解呀

 

8.主流五大浏览器

IE浏览器  火狐浏览器 谷歌浏览器 苹果浏览器 欧派浏览器

没有应用层的服务器

会放回一个zt值给404( 资源不存在)的状态或者500(服务器出错了),成功的返回状态码是200 这

常见的协议有:HTTP(最常见的网络传输协议)、HTTPS(进行加密的网络传输协议)、File(本地文件夹协议)、FTP、Telnet 等。

9.DNS

提到域名和 IP 关系后,就必须理解 DNS(Domain Name System 域名系统)——用来记录域名和

IP 地址相互映射的信息。

作用:可以让人们免于记住那些繁琐的数串。

大型企业都有自己的 DNS 服务器,专门用来存储域名和 IP 的映射关系;

如谷歌的 DNS 服务器地址 8.8.8.8 ;国内知名 DNS 服务器地址 114.114.114.114 。

域名和ip是通过DNS链接起来的

域名也是有级别的

com是顶级域名

baidu.com是二级域名(俗称一级域名)

www.baidu.com是三级域名(俗称二级域名)

10.面向对象

面向对象是一种实物,比如杯子、书本…的物体,人的思想能看到的。

11.面向过程

面向对象是机械,电脑的理论编写过程,编程思想,与面向对象不同,封装、继承、类,简写为POP (Procedure Oriented)

12. 反射

反射是.NET中的重要机制,通过放射

13.装箱和拆箱

装箱:把值类型转换到引用类型。

拆箱:把引用类型转换到值类型。

14. .net反射

通过反射可以提供类型信息,从而使得我们开发人员在运行时能够利用这些信息构造和使用对象。

 反射机制允许程序在执行过程中动态地添加各种功能。 

15. post 和get

get重点是从服务器上获取资源

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值