摘要:
缓存这个东西可大可小,小到一个静态的字段,大到将整个数据库Cache起来。项目开发过程中缓存的应用到处可见,在这篇博文中笔者就来谈谈自己的项目中关于缓存实现。 最常见的缓存功能,如C#语言中的Dictionary对象,应该至少包含以下几个功能:Init():缓存的初始化;如:Dictionary<int, object> dic = new Dictioinary<int, object>();Add():增加缓存;如:dic.Add(1, new object());Set():设置缓存 ;这里的Set()和Add()是有一点区别的,Add()的时候发现已存在的缓存, 阅读全文
posted @ 2012-06-20 12:32
HackerVirus
阅读(824)
评论(0)
推荐(0)
摘要:
1. 迭代器与Closure: 在Lua中,迭代器通常为函数,每调用一次函数,即返回集合中的“下一个”元素。每个迭代器都需要在每次成功调用之间保持一些状态,这样才能知道它所在的位置和下一次遍历时的位置。从这一点看,Lua中closure机制为此问题提供了语言上的保障,见如下示例: 1 function values(t) 2 local i = 0 3 return function() 4 i = i + 1 5 return t[i] 6 end 7 end 8 t = {10, 20, 30} 9 it = values(t)10 ... 阅读全文
posted @ 2012-06-20 12:31
HackerVirus
阅读(185)
评论(0)
推荐(0)
摘要:
一、缓存概念,缓存的好处、类型。缓存是一种用空间换取时间的技术,通俗点也就是说把你得到的数据存放在内存中一段时间,在这短时间内服务器不去读取数据库、或是真实的数据源,而是读取你存放在内存中的数据,这里你会疑惑怎么设置存放数据,能存放什么样子的数据,存放时间的设置,真实数据源数据改变服务器不就读取存在偏差?别急,下面慢慢会说到的。。缓存的好处,缓存是网站性能优化不可缺少的一种数据处理机制,他能有效的缓解数据库压力,例如,网站每分钟的点击率为100万,如果不使用缓存的静态页面,这里也没有viewstate的情况下(viewstate会产生大量的字符串,对服务器交互数据是一种压力,所以一般页面是要禁 阅读全文
posted @ 2012-06-20 11:18
HackerVirus
阅读(147)
评论(0)
推荐(0)
摘要:
接续...[Architecture Pattern] Database Migration (上)实作范列下载实作说明请参照范例程序内容:DatabaseMigrationSample点此下载范列实作首先建立封装数据库更新逻辑的DatabaseUpdater,以及定义DatabaseUpdater会使用到的各个接口。执行DatabaseUpdater的Update方法,系统会依照数据库更新逻辑,执行对应的DatabaseUpdatePlan。并且反复执行,直到数据库版本为目前DatabaseUpdatePlan能更新的最新版本。?1234567public interface IDataba 阅读全文
posted @ 2012-06-20 11:16
HackerVirus
阅读(120)
评论(0)
推荐(0)
摘要:
[Architecture Pattern] Database Migration (上)动机在软件项目的生命周期里,每次做软件版本的修改,难免会去修改到数据库的Schema。针对这种数据库版本的变更,一般的做法会在版本控制系统(SVN)里,存放生成数据库的SQL脚本文件案。在每个软件版本的释出时间点,开发人员会依照当时的数据库,建立数据库生成SQL脚本文件案并存入SVN。这样安装人员只要取得SVN某个软件版本的执行文件,以及对应版本的数据库生成SQL脚本文件案,就可以为客户完成安装部属的工作。这样的架构模式,遇到旧版本系统要升级为新版本系统的时候。安装人员会需要:将旧版本的数据保留、建立新版 阅读全文
posted @ 2012-06-20 11:15
HackerVirus
阅读(139)
评论(0)
推荐(0)
摘要:
在cenOS5.5上安装oracle 10G虽然不是什么新鲜的东东,但搭建这个前后还花了一周的时间。我想每个人在安装时都会遇到点不一样的问题。既然是傻瓜篇,那它一定非常傻瓜。哈哈!!==================所需装备=============================虚拟机virtualboxhttps://www.virtualbox.org/wiki/Downloads-----强烈推荐这个虚拟机,因为我的系统是win7 X64位的,找个能用的虚拟机真不容易。linux 5.5:http://mirrors.kernel.org/centos/5/isos/i386/--- 阅读全文
posted @ 2012-06-20 11:14
HackerVirus
阅读(169)
评论(0)
推荐(0)
摘要:
准备要部署的应用程序在正式进入部署MVC程序到IIS之前,会介绍一些关于应用程序迁移到生产环境之前探测错误以及一旦进入生产环境最大化性能的技术。同时也会展示关于流线型部署过程的有用的功能。检测视图错误Razor视图会在服务器需要的时候编译而不是在VS里面生成项目时编译,正常情况下,探测视图编译错误的方式是系统的访问每一个action,从而让每一个view都能够呈现。这显然是非常乏味而且不会一直成功的技术,特别是在基于不同的model状态呈现不同的view的时候。我们可以启用一个特别的项目选项来启用我们的视图并且报告任何编译错误。我们可以编辑一个.csproj的文件,设置MvcBuildView 阅读全文
posted @ 2012-06-20 11:12
HackerVirus
阅读(260)
评论(0)
推荐(0)
浙公网安备 33010602011771号