下沙论坛

 找回密码
 注册论坛(EC通行证)

QQ登录

QQ登录

下沙大学生网QQ群8(千人群)
群号:6490324 ,验证:下沙大学生网。
用手机发布本地信息严禁群发,各种宣传贴请发表在下沙信息版块有问必答,欢迎提问 提升会员等级,助你宣传
新会员必读 大学生的论坛下沙新生必读下沙币获得方法及使用
查看: 3728|回复: 4
打印 上一主题 下一主题

[转帖]你的程序支持 IIS6 - Web Garden 吗?

[复制链接]
  • TA的每日心情
    擦汗
    6 天前
  • 签到天数: 2402 天

    [LV.Master]伴坛终老

    跳转到指定楼层
    1
    发表于 2005-4-12 13:44:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    你的程序支持 IIS6 - Web Garden 吗?
    & \; {# w6 O  N) k3 T
    6 ~* b& \8 a6 F很就没有更新BLOG了呵呵。 刚过来深圳,时间都是乱来的~~~
    ! Q7 r% X& D3 @今天帮客户搞定一个部署上的问题,花了我半天的时间。。555。
    # D; }- m& k3 U- ?; I1 j
    + g8 E2 {& z& ?- `) @7 L后来才发现原来是IIS6 Web Garden的问题。' M# c6 j) h+ \& s+ q
    ' c, A: K0 d2 J* i% s0 B& ~
    IIS6 Web Garden 指的是一个应用程序可以成多个进程(w3wp.exe)来执行,一次请求使用其中的一个。用这个的主要目的是提高程序的可用性。当其中一个进程发生错误,那么也不会影响其他进程。发生错误的进程可以根据规则关闭,而其他的进程则可以继续工作。3 G7 J$ c- J9 F: Z
    ' i7 b& \& N1 e1 s5 u% J. ]7 ^
    可惜不是每个应用程序都支持Web Garden的。 例如我做的那个就不是。
    / u1 L: F, x/ p( H9 E: r
    " ?/ @/ Q" b# X4 |4 Z一般来说 , 不支持 Web Garden 的原因是各应用程序的内存状态是不同的。虽然是访问同一个网站 , 当访问第一个进程时,进程的内存如果纪录了某些重要的信息,而当访问第二个进程的时,却无法再得到那些信息时,那么程序就不一定能运行正常,或者会发生错误。# z! S3 P, A; H6 ?3 X/ O2 G- G0 x

    1 M: @$ _" o( K) \- q+ O所以,一般使用 InProc HttpSessionState / HttpApplicationState / 静态变量来储存关键信息 的程序是不支持 Web Garden的。另外平时说Session信息丢失,也和这个有关。一般很多程序都使用Cache来储存临时数据,但如果某些被修改或删除的数据没有在该进程的Cache中得到更新,那么也会很容易导致程序出错。 8 b0 x8 Z# [/ T6 N5 s

    + Y6 m7 m( q3 ~6 B9 v, r如果你的程序用上面说的方法,并且在Windows2003/IIS6中发生奇怪的错误,那么请检查一下Web Garden的设置。
    ; N7 q1 W% c  t6 J4 _. G8 c 3 H( W8 R5 E8 K) W
    ( t! r5 \  x; ?/ s; h, \

    ! E) j! N0 N4 r0 }! A: p" L, R* O* k1 S  C# Z
    如果你希望应用程序支持Web Garden,甚至是支持集群,那么最简单的办法就是,尽量用Cookie来纪录登陆信息,以及所有的数据获取的动作都是从数据库中读取。例如Duwamish就是这种类型的程序。 0 V) V' F+ x- c! L% G, c% ^' a
      
    8 g+ T  N- j. h# v1 _( b如果一个应用程序连Web Garden都不支持,那么就更难支持集群了。
    分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏 分享分享 顶 踩

    该用户从未签到

    2
    发表于 2005-4-13 17:25:00 | 只看该作者
    这是什么
  • TA的每日心情
    奋斗
    2015-9-17 00:58
  • 签到天数: 1 天

    [LV.1]初来乍到

    3
    发表于 2005-4-14 19:11:00 | 只看该作者

    配制2003服务器的人一定要注意了,上面说的东西在实际中就是:8 C3 B8 s# C/ p' {% n 如果你的asp程序使用了session那么请不要开2个和2个以上的web圆进程,如果想开,那么请把asp程序的session功能用cookie代替。

    如果是asp.net的程序,那么请把session的存储放到数据库中去。否则不能同步

  • TA的每日心情
    擦汗
    6 天前
  • 签到天数: 2402 天

    [LV.Master]伴坛终老

    4
     楼主| 发表于 2005-4-24 10:05:00 | 只看该作者
    以下是引用yzhlinux在2005-4-14 19:11:00的发言: . t# s1 i9 `1 O. ]! z; O5 e+ b* O 9 C* u: J2 _% o9 B A( s. U

    配制2003服务器的人一定要注意了,上面说的东西在实际中就是: s- \+ ]2 Y' p; R, ~, ]如果你的asp程序使用了session那么请不要开2个和2个以上的web圆进程,如果想开,那么请把asp程序的session功能用cookie代替。

    / A, i# J; u. r2 |

    如果是asp.net的程序,那么请把session的存储放到数据库中去。否则不能同步

    - R# `* _. U& U 1 p! V4 {- Y l. C6 m & \9 [2 t/ v$ H. ^我们用了两个web园,所以帖子数目总是不同步的

    该用户从未签到

    5
    发表于 2005-8-19 19:40:00 | 只看该作者

    本版积分规则

    关闭

    下沙大学生网推荐上一条 /1 下一条

    快速回复 返回顶部 返回列表