• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    利用 cache 做对比静态页的网页技术
    一直想写一套生成静态页面的文章系统 但面对生成静态后的一些复杂数据库交互问题。又望而却步!

    于是就想 有没有 在不耽误数据交互的情况下,而又能降低服务器负担的方法呢!

    一个网站,访问量最大的莫过于 首页 和主栏目页了。 其他的页面 我可以不去想, 首页和主栏目页 在大流量下服务器改如何承担呢。

    根据我编程2年多来的总结经验我想去了一下方法!

    不生成静态页 并且降低服务器负担!
    复制代码 代码如下:

    %@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
    %
    '读取远程文件的函数
    Public Function readRemoteFile(RemoteDataUrl)
        Dim XMLHttp
        'On Error Resume Next
        Set XMLHttp = Server.CreateObject("Microsoft.XMLHTTP")
            With XMLHttp
                .Open "Get", RemoteDataUrl, False
                .Send
                readRemoteFile = BytesToBstr(.responseBody, "UTF-8")
            End With
        Set XMLHttp = Nothing   
    End Function
    '编码转换
    Function BytesToBstr(body,Cset)
        dim objstream
        set objstream = Server.CreateObject("adodb.stream")
            objstream.Type = 1
            objstream.Mode =3
            objstream.Open
            objstream.Write body
            objstream.Position = 0
            objstream.Type = 2
            objstream.Charset = Cset
            BytesToBstr = objstream.ReadText 
            objstream.Close
        set objstream = nothing
    End Function

    Function tobody()
        Dim dateVal
                    '先试图访问缓存,看有没有,或者过期没有
        dateVal = Application("defaultdate")
        If dateVal = "" Then dateVal = DateAdd("s",1200,Now)
        If Application("default") > "" Then
            If DateDiff("s", Now, dateVal) > 0 Then
                                                    '如果有,就从缓存读取,对服务器来说,就是从内存读取
                tobody = Application("default")"!--new cache"dateVal"-->"
                Exit Function
            End If
        End If
        Dim body
                    '如果缓存没有,则从远程读取,并写入缓存,设置缓存时间。
        body = readRemoteFile("http://www.aoaob.com/default.asp")
        tobody = body"!--made cache"Now"-->"
        Application.Lock
        Application("default") = body
        Application("defaultdate") = DateAdd("s",1200,Now)
        Application.UnLock
    End Function
    Response.Write(tobody())
    %>
    上一篇:ASP下存储过程编写入门全接触第1/5页
    下一篇:asp通用采集函数冗余版可以保存文件到本地
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    利用 cache 做对比静态页的网页技术 利用,cache,做,对比,静态,