ASP.NET 问题求助 许久未能解决 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
itplanes01
V2EX    .NET

ASP.NET 问题求助 许久未能解决

  •  1
     
  •   itplanes01 2023-07-06 23:14:50 +08:00 2513 次点击
    这是一个创建于 895 天前的主题,其中的信息可能已经有所发展或是发生改变。

    问题: 目前有几个程序跑在 IIS 10 上面,asp.net 4.0 应用池,在更程序的时候,是构建之后将 bin 文件夹里的内容和其它一些必要文件用命令 xcopy 覆盖到现在正在运行的程序上,

    但有时候同一个构建后的文件,发到几台 windows 上相同的应用程序,会有个别一两台出现无法查询数据库,程序无法正常执行,好像和 LINQ 有关,提示 Sequence contains no elements ,System.Data.Entity.Internal.InternalContext.Initialize

    文件是和其他正常的文件夹对比过的,发布时的覆盖是没有失败的文件的

    被这个问题困扰好久了,希望有大佬帮忙解惑,多谢~~

    14 条回复    2023-07-08 08:36:40 +08:00
    Eiden
        1
    Eiden  
       2023-07-06 23:18:36 +08:00
    远程调试下呗
    jiulang
        2
    jiulang  
       2023-07-06 23:26:34 +08:00   1
    IEnumerable.Min() Max() First() Last() Sum()等这些操作,需要集合至少有 1 个元素。
    itplanes01
        3
    itplanes01  
    OP
       2023-07-06 23:29:21 +08:00
    @jiulang 问题是同样的 bin 目录文件覆盖到几台相同的应用程序,有几台可以,有一台不行,用同样的这个 bin 目录文件,手动停止应用池,然后重新覆盖一遍文件,再启动应用池,就好了,什么都没有改动
    jiulang
        4
    jiulang  
       2023-07-06 23:35:58 +08:00   1
    @itplanes01 IIS 的应用回收机制具体不清楚,例如有脱缰的后台线程,也可能会影响应用的快速回收。
    保险一点,还是要停止应用(对应到 w3p 进程)再更新吧。反正有多个节点。
    Rocketer
        5
    Rocketer  
       2023-07-07 01:11:00 +08:00 via iPhone   1
    这看着就不是个静态问题,而是运行时问题。虽然你编译的文件一致,但每次运行读出来的数据不一致啊
    yinmin
        6
    yinmin  
       2023-07-07 01:31:37 +08:00 via iPhone   1
    你是不是从其他电脑直接 xcopy 到服务器 iis 的网站目录下的?

    请尝试先 copy 到服务器的临时目录,然后在从临时目录 copy 到 iis 的网站目录,以确保网站程序的更新过程<1 秒,过长的更新时间可能会引发 iis 故障。
    itplanes01
        7
    itplanes01  
    OP
       2023-07-07 08:22:27 +08:00 via Android
    @jiulang 停止进程太慢了,一台更新完成 4 分钟。。十几台
    itplanes01
        8
    itplanes01  
    OP
       2023-07-07 08:24:14 +08:00 via Android
    @yinmin 目前就是把压缩包传到服务器,然后解压到临时目录再 xcopy 到原应用程序目录的
    itplanes01
        9
    itplanes01  
    OP
       2023-07-07 08:25:00 +08:00 via Android
    @Rocketer 有这个猜测,但没头绪定位
    forgottencoast
        10
    forgottencoast  
       2023-07-07 09:30:52 +08:00   1
    实际上 IIS 运行 ASP.NET 时有自己的临时目录,我们之前遇到过这个目录的文件是旧版本的,手动删除这个目录然后 IIS 会自动重新生成,然后就 OK 了。
    按照你#7 的说法完全可以先更新一半服务器,然后再更新另外一半服务器。
    LemonNoCry
        11
    LemonNoCry  
       2023-07-07 11:57:20 +08:00   1
    建议在更新前
    请在 IIS 目录下 放 App_offline.htm 文件

    可以先
    xcopy App_offline.htm
    xcopy xxx
    del App_offline.htm


    微软文档:
    https://learn.microsoft.com/zh-cn/aspnet/core/host-and-deploy/app-offline?view=aspnetcore-7.0
    itplanes01
        12
    itplanes01  
    OP
       2023-07-07 23:41:29 +08:00
    @LemonNoCry 多谢,这个看着对 asp.net 站点有效果,我测试下看看
    itplanes01
        13
    itplanes01  
    OP
       2023-07-07 23:47:50 +08:00
    @forgottencoast 十几台服务器是有好几个不同的环境的,一半一半全部发完最快也得 20+分钟啊
    forgottencoast
        14
    forgottencoast  
       2023-07-08 08:36:40 +08:00
    @itplanes01
    没办法,大型网站更新一两天的都有。
    必须设计专门的更新流程。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     5210 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 25ms UTC 08:43 PVG 16:43 LAX 00:43 JFK 03:43
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86