网站内容更新系统(网站更新|多站点同步更新系统的设计【摘要】)

优采云 发布时间: 2022-02-09 00:18

  网站内容更新系统(网站更新|多站点同步更新系统的设计【摘要】)

  多站点同步更新系统的设计 [摘要] 目前Internet网站和大多数企业管理软件都采用B/S架构模式。大型 网站 应用对系统并发、吞吐量和性能要求很高。因此,很多大型网站应用部署多台服务器进行负载均衡。但是如果服务器数量很大,就会给站点更新带来很大的不便。为了提高服务器站点的更新效率,增加更新的准确性,减少网站维护人员的工作量。开发了多站点自动同步更新系统。本文详细介绍了该系统。中国造纸网/8/view-7211810.htm【关键词】自动更新;负载均衡; 网站 维护【摘要】目前互联网网站和大部分企业管理软件都采用B/S架构模式。大型Web应用对系统的并发、吞吐量和性能要求很高。所以很多大型网站都以多种方式开发。负载均衡的服务器。但是服务器数量过多会给网站更新带来很多不便。为了提高网站更新的效率,增加准确性,减少站长的工作量。但是服务器数量多会给网站更新带来很多不便。为了提高网站更新的效率,增加准确性,减少站长的工作量。但是服务器数量多会给网站更新带来很多不便。为了提高网站更新的效率,增加准确性,减少站长的工作量。

  由于带宽、机器性能等因素的限制,单台Web服务器已经不能满足当前的需求。Web服务器集群系统可以实现负载均衡,可以大大提高系统的性能、可靠性和可扩展性。但是随着Web服务器集群的普及,也出现了新的问题。多台服务器的更新不仅需要管理员大量的时间,还需要管理员设置每台服务器的文件复制权限,并且无法保证复制过程中1个系统的功能需求(1)@ >需要在网站更新前打开更新提示,提示用户保存手头的工作并退出系统;(2)需要在多台服务器上删除和新建站点文件; (3) 由于网站文件在更新和新建过程中可能会被占用,操作前需要回收多台服务器上的网站应用池;(4)需要查看更新的进度和完成情况;(5)更新完成后关闭更新提示。2 方案对比 使用当前方案之前尝试过其他方案,但是使用效果不是很理想,最后还是选择了现在的方案。现在对比一下两种方案。(1)@>场景1在服务器上创建共享文件夹,将发布的网站文件放到共享文件夹中。然后,每个服务器使用本地发布站点从共享文件夹中复制发布的文件 文件发送到本地站点 问题1:发布站点在访问共享文件夹时遇到权限不足的问题。在查询信息和在线搜索后,需要为.Net用户设置更高的权限。

  设置繁琐,存在一定的安全隐患。问题2:复制需要很长时间。由于电子病历、护理平台等网站文件较多,一般复印一份需要5分钟左右。复制的时候,所有文件都会放在缓存中,遇到系统资源不足时容易出错。发布 6 台服务器通常需要半个多小时。在此期间,用户无法正常使用系统,给用户带来了非常不好的体验。问题3:一旦启动拷贝,程序无法监控拷贝是否完成,更新者无法得到更新结果的反馈。(2)方案2是当前选择的方案。将发布的站点文件上传到数据库。然后,每个服务器使用本地发布站点从数据库中获取文件并在本地站点中创建它们。与方案一相比,从Oracle数据库只需要为发布站点设置相应的权限即可获取文件并在本地创建。而且,站点文件更新速度比文件复制快几倍。通常,创建一个 100M 的文件只需要 1 分半钟。因为凭借Oracle数据库的良好性能,多台服务器同时获取文件完全不影响文件读取的速度。所以多台服务器复制100M以上文件的时间一般不超过2分钟,大大缩短。当网站更新时,该程序大大改善了用户体验。此外,

  这样,发布者可以及时处理错误。3 系统设计 本系统分为三部分,B/S结构的更新站点、C/S结构的更新程序和文件上传程序。3.1 B/S结构发布站点(1)@>自定义操作站点和应用程序池类:IISmanager。该类定义了3个静态函数来操作网站站点和IIS应用程序池。它们是StartWebSite、StopWebSite和RecyclePool。StartWebSite和StopWebSite函数负责启用和停止站点,RecyclePool函数负责停止、启用和回收程序池。(2)使用递归方法删除站点目录下的所有文件。函数名称:DeleteFile。从数据库中读取站点上所有文件的路径和文件内容,根据文件路径动态创建各个文件。创建文件函数CreatrFile。调用这个函数需要两个参数,文件路径和文件内容。文件内容是以二进制流的形式创建的。创建步骤如下。首先,您需要定义文件流:FileStream fs = new FileStream(ls_path, FileMode.Create)。然后定义二进制流,BinaryWriter bw = new BinaryWriter(fs); 该文件使用 bw.Write(file) 方法写出。首先,您需要定义文件流:FileStream fs = new FileStream(ls_path, FileMode.Create)。然后定义二进制流,BinaryWriter bw = new BinaryWriter(fs); 该文件使用 bw.Write(file) 方法写出。首先,您需要定义文件流:FileStream fs = new FileStream(ls_path, FileMode.Create)。然后定义二进制流,BinaryWriter bw = new BinaryWriter(fs); 该文件使用 bw.Write(file) 方法写出。

  B/S发布站点是自动更新系统的核心部分。是在应用服务器上设置的需要发布网站的站点,主要负责更新本服务器的站点文件。更新程序时,站点根据参数确定需要更新的站点,并调用.NET提供的IISmanager类来回收和停止需要更新站点的应用程序池。然后,删除该站点下的所有文件。从数据库中下载最新的程序文件并在站点路径下生成文件。文件生成后,最后重启app pool,将changelog写入数据库。当发生更新错误时,更新日志也会写入数据库。3.2 C/S 结构更新程序(1)@> 负责站点更新提示的操作员在更新前后输入用户名和密码,点击打开更新提示或关闭更新提示,程序后台会通过表单发送包,自动登录到该站点需要更新,并启用本站原创的更新提示功能。开启提示后,系统会每分钟弹出一条系统公告,提醒用户保存手头的工作。(2)根据用户选择需要更新的站点,调用B/S站点更新站点文件。每3秒从系统获取最新的更新日志,使用webbrowser控件显示今天所有服务器的更新状态,用户也可以随时查询任何应用的更新日志。3.

  用户可以选择要上传的应用,然后填写本地文件存放的路径。最后,点击上传,将远程应用文件上传到数据库。(2)用户也可以通过文件名搜索上传的文件,在查询结果中点击文件名查看文件内容。也可以选择上传表单替换单个文件替换文件.(3)可以选择要下载的应用,填写下载路径,从数据库中下载应用文件。4小结自动更新系统的应用不仅节省了文件复制的时间,而且也避免了人工误操作可能导致的各种错误。并且在更新过程中,用户可以实时查看更新状态。一旦出现更新错误,用户可以及时发现并采取相应措施。本系统的应用大大提高了多服务器站点文件更新的效率,减少了网站程序维护人员的工作量。【责任编辑:杨宇杰】

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线