摘要:随着软件行业和社会民主水平的发展,越来越多的人们希望参与到投票之中,促使这些比赛的举办方开始考虑全民投票的形式。但是对于普通的集中式投票系统,巨大的投票量可能会使它效率极低。针对上述现象,本文设计实现了一个分布式音乐会现场投票服务系统。
本文设计的投票系统基于ASP.NET平台开发,采用C/S架构,以C#作为开发语言,选择Visual Studio作为开发工具,使用MySQL作为后台数据库。该系统的主要功能有用户投票,投票信息处理和投票数统计。其中,用户可以在客户端界面选择想要投票的选手编号,进行投票操作;投票信息处理由服务器端负责,本系统采用一个完全由.Net平台开发的消息代理,本文称作DotNetMQ,确保投票信息可靠、快速地从客户端传递到服务器端的处理方。同时,本投票系统将采用分布式结构,服务器端的应用程序将运行在不同的服务器节点上,系统能够将工作合理分配给各个服务器的节点,从而提高投票系统的处理效率;投票结束之后,投票系统会将各个分数据库的投票数进行汇总,将最终结果显示在客户端上。
本设计紧跟软件发展潮流,所实现的投票系统能够大大节省传统的人工投票中的人力和物力资源。相较于普通的投票系统,其处理效率能满足现场投票需求。因此,本文的分布式音乐会现场投票服务系统具有实现意义。
关键词:ASP.NET;C/S架构;消息传递;分布式
目录
摘要
Abstract
1 绪论-1
1.1 课题的目的-1
1.2 国内外研究现状和发展趋势-1
1.3 课题拟解决的关键问题-3
1.4 论文组织结构-3
2 系统开发工具及相关技术-5
2.1 .NET平台-5
2.2 Microsoft Visual Studio-6
2.3 MySQL-7
3 系统需求分析与设计-9
3.1 系统需求分析-9
3.1.1 用户需求分析-9
3.1.2 系统需求分析-9
3.2 系统设计-10
3.2.1 系统方案选择-10
3.2.2 系统结构设计-13
3.2.3 系统流程设计-15
3.2.4 数据库设计-16
4 系统实现-18
4.1消息代理-18
4.1.1 MDS Client与MDS Server之间的消息传递-18
4.1.2 MDS Server之间的消息传递-21
4.2 填写投票信息-23
4.3 投票信息处理-23
4.3.1 消息传递-24
4.3.2 消息分配-25
4.4 投票结果显示-26
5 系统部署与展示-27
5.1 系统部署-27
5.2 系统的展示-31
5.2.1 登录界面-31
5.2.2 投票界面-32
5.2.3 等待投票结果界面-33
5.2.4 投票结果界面-34
6 总结-35
参考文献-36