专栏首页数据分析表格搞定 Asp.net Web 状态管理

表格搞定 Asp.net Web 状态管理

 最近在网上搜罗了 ASP.NET WEB 状态管理方面的一些内容,终于把这些内容整合总结了一下。

1. 希望自己通过整理,能够掌握一些,为自己投资。

2. 以便自己忘记,又要浪费时间搜罗。

3. 希望对园友有帮助,这是一件很开心的事情

4. 希望大侠们看到问题及时帮忙指正,不想误导自己,更不想误导园友,在下不胜感激

不再磨叽,马上上菜

名称

用户

生存时间

数据

位置

优势

劣势

建议

Application

所有用户

应用程序重新启动

没有限制,只被存储一次

服务器,可以存储在数据库

1. 实现简单 2. 整个应用程序作用域(公用)

1. 整个应用程序作用域的范围导致没有与私人空间 2. 服务器挂掉、升级以及关闭可能会导致数据丢失或被破坏 3. 需要占用服务器内存

存储多用户使用但不经常改变且不考虑安全性的全局信息

Cookie

当前用户

一般很短,但是只要用户不删除,可以是数月甚至数年

少量且经常改变的数据

客户端

1. 存储时间可配置 2. 无需服务器资源 3. 简单 4. 数据持久化

1. 数据大小受限 2. 用户可禁用 3. 潜在安全隐患

需要在客户端且不需要考虑安全性的少量数据

QueryString

一个或一组用户

为下一个请求 (可以跨多个请求重复使用)

很小,简单数据

客户端

1. 无需服务器资源 2. 被广泛支持 3. 实现简单

1. 潜在安全隐患 2. 能力有限(被URL长度限制)

通过链接,从一个面发送到另一个页面或者是相同页面,且不需要考虑安全性的少量数据

Session

当前用户

只要用户是在线的,以及在超时时间内(一般是20分钟),支持自失效

没有限制,但是应尽量小,因为每个用户都有自己单独session的存储

服务器

1. 实现简单 2. 可以使用会话管理事件 3. 数据持久化 4. 可在多计算机、多个进程之间使用 5. 弥补Cookie受限 6. 可以自定义和扩展Session

1. 性能问题

需要考虑安全性,存储特定的单独会话的短期信息

Cache

所有用户或者用户子集

根据实际需要可长可短

可很大、也可以很小、也可以很复杂

客户端/服务器

1. 有ASP.NET管理 2. 当内存不足或者超时,将自动清除 3. 可配置 4. 减轻Web Service或者数据库的负担 5. 提高性能 6. 可靠性

1. 同步不及时 2. 扩展性问题 3. 维护成本

用户经常访问但不经常更新的数据

View State

当前用户

一个页面

少量信息,随着页面的回发,数据将会在页面来回发

客户端,以隐藏域的形式存储

1. 无需服务器资源 2. 实现简单 3. 增强全性

1. 性能问题 2. 设备限制 3. 潜在安全隐患

存储少量需要回发给自己的页面信息

Control state

当前用户

一个页面

少量信息,往返于服务器之间的控制使用的状态信息

客户端,默认以隐藏域的形式存储

1. 无需服务器资源 2. 可靠 3. 通用

1. 特定程序依赖性

需要存储少量信息往返于服务器之间的控制使用的状态信息

Hidden Fields

当前用户

一个页面

少量且经常被改变的数据

客户端

1. 无需服务器资源 2. 被广泛支持 3. 实现简单

1. 潜在安全隐患 2. 存储数据简单 3. 性能问题 4. 存储限制

需要发送到另一个页面或者回发,且无需考虑安全性的少量页面信息

Profile Properties

当前用户

配置文件更新

任何类型的数据

服务器

1. 数据持久化 2. 可在多计算机、多个进程之间使用 3. 可扩展性

1. 性能问题 2. 额外的配置要求 3. 维护数据

用户session过期后需要持久化的信息,用户下次访问时需要恢复的信息

Database

当前用户

只要不被删除

任何类型的数据

服务器

1. 安全性 2. 数据存储量大 3. 数据持久化 4. 稳定性和数据完整性 5. 可访问性 6. 被广泛支持

1. 复杂性 2. 性能问题

存储大量的信息,使用管理事务,或者整个应用程序生命周期都需要使用的信息,再次访问时需要使用的信息。考虑数据挖掘,考虑安全性。

 再次希望,如果有问题能及时帮忙指正,有问题请留言,有帮助就支持一下吧!

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • [数据库基础]——快速浏览日期时间转换

    阅读导航 数据库日期和时间类型 相互转换     time ⇌ date time ⇌ smalldatetime time ⇌ datetime tim...

    数据分析
  • C# 6.0 功能预览 (一)

    一、索引的成员和元素初始化 1.1 原始初始化集合 Dictionary 1.2 键值初始化集合 Dictionary 1.3 运算符 $ 初始化集合...

    数据分析
  • [数据库基础]——图解JOIN

    一、概要 JOIN对于接触过数据库的人,这个词都不陌生,而且很多人很清楚各种JOIN,还有很多人对这个理解也不是很透彻,这次就说说JOIN操作。 图片是很容易被...

    数据分析
  • 谷歌微软等科技巨头数据科学面试107道真题:你能答出多少?

    选自Learndatasci 机器之心编译 参与:李泽南 来自 Glassdoor 的最新数据可以告诉我们各大科技公司最近在招聘面试时最喜欢向候选人提什么问题。...

    机器之心
  • Python人工智能经典算法之线性回归

    海仔
  • 谷歌微软等科技巨头的面试题 你能答对几道?

    苹果 1. 如果你有几百万用户,每个用户都会发生数百笔交易,这些交易存在于数十种产品中。你该如何把这些用户细分成有意义的几类? 微软 1. 描述一个你曾经参与的...

    企鹅号小编
  • APP测试工程师“养成”记(二)

    一、思维导图软件 1.xmind 2.mindmanager 二、Bug管理工具 1.工具原理介绍 2.禅道讲解 3.Bugfree讲解 4.jira 三...

    FunTester
  • centos7.2(1511版本)上安装pyspider

    censtos是服务器常用的操作系统,本例以centos7.2最小化版安装为例安装

    拓荒者
  • 不丢数据的Mysql集群方案设计

    方案一、多主同步复制PXC方案 PXC即Percona Xtradb Cluster,它采用Galera引擎,可以实现多个节点间的数据同步复制以及读写并且可保障...

    用户1263954
  • cs231n之SVM算法和SoftMax算法

    1.环境搭建以及前置条件 1.前置环境: 1.mac 2.pycharm 3.python3 4.Anaconda 2.环境搭建: 1.官网下载并安装Ana...

    何时夕

扫码关注云+社区

领取腾讯云代金券