Step1数据系统技术(0.开篇介绍)

好久没有写文章了,前天写了一篇关于Google的介绍的文章,也只是随便的写一下,不过眼下我准备写一个系列文章,来介绍我在Step1网站开发上的一些心得和技术,包括相关的代码。

这一系列文章介绍的技术主要来自www.step1.cn的两个栏目地名信息系统和火车运行图,您最好先浏览一下这两个栏目,这样才能够更加了解我的设计思路。

在开始之前,我来简单的说明一下这两个系统的共同点,以让大家了解究竟什么样的系统更适合使用我介绍的技术。

第一,该系统必须有一套数据,而且数据的容量也要大一点,要不然使用这些技术的意义也不是很大;

第二,该系统需要的数据都是直接对用户开放,类似于静态文件的访问权限,不过又由于更新频繁或数据太多或其他的原因,该数据不便于直接生成到静态文件;

第三,该系统需要比较容易被搜索引擎检索,因为我的这一套体系对SEO支持的很好;

第四,该技术可以在虚拟主机上实现,我就是在万网提供的asp.net虚拟主机上实现的。

主要的就是这些,其中使用到的一些技术究竟能否对您有什么帮助,还需要您自己判断,下面列举一下我即将要讲到的各个技术细节:

1.基于404错误的URL重写技术

2.XML+XSLT的页面生成机制

3.使用浏览器Cache和http状态码304实现的客户端缓存

4.采用服务器端文件缓存

5.使用GZIP技术优化文件缓存

6.汉字URL路径的处理和编码

时间: 2024-11-01 15:43:33

Step1数据系统技术(0.开篇介绍)的相关文章

Step1数据系统技术(3.使用浏览器Cache和http状态码304实现的客户端缓存)

实在抱歉,因为本来这个系列应该早就应该写完的,不过在我写了两章之后,没有过多久,我的网站就崩溃了,崩溃的原因是有人试图从我的网站抓取数据,从而造成了网站数据库的频繁访问,如果大家看过我以前的几篇,应该知道发生这样的事情同样会造成服务器缓存文件过多,因为我使用的是虚拟主机,因此,服务器就崩溃了.因此我觉得这个系统还存在缺陷,因此暂时没有继续介绍(当然到现在也没有改善多少),之后就是春节,春节之后我就开始找工作,而且也一直没有心情来写这个,因此拖延了很久,到现在,我终于觉得不好意思了,决定不管是否完

Step1数据系统技术(1.基于404错误的URL重写技术)

现在第一篇,讨论我的网站之中使用的URL重写技术,实际上,该技术并不是我编写的,可能有用户能够记得,我的网站www.step1.cn原来就是一个博客,那个时候采用的系统是博客园提供的cnblogs程序(我将这个程序改装成能够在当时的虚拟主机上运行,可花了不少功夫),后来我将博客迁到这里之后,对Step1.cn进行大的改版,当时我实在舍不得这套博客程序之中使用的URL重写的技术,因此专门的从那个cnblogs程序之中将相关的代码从其中拆分出来成一个DLL类,在我的网站使用URL重写技术. 当时由于

Step1数据系统技术(5.使用GZIP技术优化文件缓存)

在上面的一篇,我们讲到了服务器端的缓存,我的地名信息系统有70万个页面,生成该页面的过程需要我从远程的数据库加载5个SQL数据返回的内容,还有RSS格式的新闻,因此生成一个页面是很困难的,因此我使用了服务端缓存技术使性能获得了大幅的提升,不过,又遇到了新的关于硬盘空间和流量的问题. 网站的70万个地名当然不会一天之内都会被访问,不过我的网站该栏目日访问量大约为30000,考虑到重复的访问,假设只访问了10000个地名(实际上是不只的,因为地名的访问很零散),那就是会有10000个缓存文件被生成,

Step1数据系统技术(4.采用服务器端文件缓存)

前一章介绍了Cache和http状态码304的技术,这属于服务器端文件缓存,使用该技术可以灵活的将每一个用户访问服务器的次数和字节数减少到最低. 不过有这样一个问题存在,就是上面的缓存都是针对单个用户的,如果该用户通常在缓存时间内只访问该文件一次,是没有效果的,因此就算这个文件每天被再多的用户访问,也起不到缓存效果,而这种情况下需要使用服务端缓存. 使用服务端缓存的理由很多,我使用的主要理由是每个页面生成对服务器性能的要求过大,因为每个页面生成的过程序需要多次访问数据库,并有可能需要从别的来源获

Step1数据系统技术(6.汉字URL路径的处理和编码)

其实我挺不想写这一章的,因为直到现在,我还经常为编码的事情弄得云里雾里,不过考虑到我在之前的这个文章系列的目录里面已经列出了这个主题,如果不写有欺骗的嫌疑,想想还是写吧,反正没有谁把我当作一个权威的. 编码问题向来很复杂,我却不愿意向复杂了讲,我只从比较常见的讲. 编码,实际上是一个字符串的表达方式,通常从URL编码来讲,我们最常见到的编码有两种:第一种是GB2312编码,这是百度搜索使用的一种编码形式,例如你在百度搜索一个"你好",你会看到搜索结果网址是http://www.baid

Step1数据系统技术(2.XML+XSLT的页面生成机制)

在本系统之中,网站的主体页面并不是通过普通的aspx返回方式返回的,而是采用一种XML+XSLT的形式,来自生成,这是我个人比较喜欢的方式,这种方式在这个系统之中有着更好的优势,我现在将优势列举几条: 1.完整的实现数据和表现形式的分离,数据完全在XML文件之中实现,而页面的表现的形式完全用XSLT实现,这样使程序的结构清晰简单,易于维护: 2.可以随意的选择将结果输出到文件或者Response: 3.XSLT可以自动的压缩HTML代码,生成紧凑,不易阅读而不影响浏览器解析的代码,你在XSLT文

《VMware vSphere 6.0虚拟化架构实战指南》——第2章 安装配置VMware ESXi 6.0 2.1VMware vSphere 6.0虚拟化介绍

第2章 安装配置VMware ESXi 6.0 2014年10月,VMware vForum 2014大会在北京召开,VMware公司针对了VMware vSphere 6.0发布时间作了统一的回复,将于2015年1季度发布VMware vSphere 6.0正式版本.2015年2月3日,作为软件定义数据中心 基础.面向混合云的最新版本虚拟化 解决方案 VMware vSphere 6.0正式发布,3月12日官方网站开始提供下载.VMware ESXi 6.0作为VMware vSphere 6

.NET简谈互操作(一:开篇介绍)

互操作系列文章: .NET简谈互操作(一:开篇介绍) .NET简谈互操作(二:先睹为快) .NET简谈互操作(三:基础知识之DllImport特性) .NET简谈互操作(四:基础知识之释放非托管内存) .NET简谈互操作(五:基础知识之Dynamic平台调用) .NET简谈互操作(六:基础知识之提升平台调用性能) .NET简谈互操作(七:数据封送之介绍) 本人最近在学习非托管C++互操作的技术,有点小收获不敢私藏拿出来跟大家分享:作为.NET开发人员,我们有必要学习一些互操作方面的知识:尤其对一

对数据中心虚拟化的必要实现技术的详细介绍

以下的文章主要向大家讲述的是数据中心虚拟化的必要实现技术,谈及到虚拟化数据中心,就一定离不开服务器虚拟化及虚拟化SAN存储,服务器虚拟化和虚拟化SAN存储是通向虚拟化数据中心的必经之路.谈到虚拟化数据中心,就离不开服务器虚拟化以及虚拟化SAN存储,服务器虚拟化和虚拟化SAN存储是通向虚拟化数据中心的必经之路.对企业而言,服务器虚拟化提供了一些重要的优势,但要 认识到它的所有 好处,企业必须克服存储面临的重大挑战.在许多IT基础架构里,挑战越来越多,因为存储直接连接到服务器上,无法在物理服务器间共