unix平台的服务器租借用户数据采集系统设计

摘要:随着计算机领域的不断发展,数据采集与分析已经广泛运用于各个行业。本设计针对服务器租借行业,以租借用户的使用情况为数据源,设计一套日志采集系统。系统采用经典的C/S架构和软件工程的方法来设计,客户端和服务端的功能由C++实现,且在Unix平台运行。客户端负责定时采集外租服务器上的登陆日志,并按设计要求分析日志内容,然后整理出合格有效的数据,最后发送到服务端;服务端时刻保持等待客户端连接的状态,随时准备接收来自多个客户端的海量数据,并实时保存到本地数据库。系统实现对海量用户数据的采集,整合,存储和查询,用科学的手段提高企业的工作效率,为今后深入研究用户习惯,提高用户体验,提供数据支持。
目录
摘要 3
关键词 3
Abstract 3
Key words 3
1 绪论 4
1.1 研究背景 4
1.2 研究意义 4
1.3 本文概述 4
1.4 技术简介 4
1.4.1 Linux简介 4
1.4.2 Socket通信简介 5
2 需求分析与概要设计 6
2.1 需求分析 6
2.2 总体设计 6
2.3 日志文件结构设计 8
3 模块与数据结构设计 9
3.1 模块设计 9
3.2 数据结构设计 10
4 系统详细设计 12
4.1 客户端详细设计 12
4.1.1 Client 类 13
4.1.2 LogReader类 14
4.1.3 LogSender类 18
4.1.4 客户端异常类 20
4.2 服务端详细设计 20
4.2.1 Server 类图 21
4.2.2 DataReciveThread类 22
4.2.3 DataSaveThread类 23
4.2.4 LogDao类 24
4.2.5 UserData类 25
5 系统测试 26

 *好棒文|www.hbsrm.com +Q: *351916072* 
5.1 客户端功能测试 26
5.2 服务端功能测试 26
5.3 测试总结 27
致谢 27
参考文献 28
基于UNIX平台的服务器租借用户数据采集系统设计
引言
1 绪论
1.1 研究背景
数据采集系统的诞生源于上世纪50年代,那时的美国率先将其应用在军事科技领域。由于此种数据采集系统具备高速灵活的特点,能够完成当时传统方法做不到的数据采集和测试工作,因而得到初步的认可。二十世纪七八十年代,随着微型电子的发展,工业计算机,单片机和大规模集成电路的逐渐普及,数据采集和分析系统发生了巨大变化,仪表与计算机高度结合,性能得到大幅度的提升,超越了传统的数据采集器,成为那时的典型代表。现如今,数据采集与分析技术已经被广泛的运用于工业,军事,医疗,航空电子设备等领域,不仅功能繁多,而且数据处理能力强,管理成本低。
近年来,随着服务器租借行业的不断推广和发展,其用户数量开始与日俱增,用户数据的规模已经从TB级别上升至PB甚至EB。为了更有效的管理用户数据,中国电信运营商率先推出用户信息采集系统。该系统将旧用户信息重新整合,并整齐入库,有效的解决用户信息量庞大,且杂乱无章的问题,大大提高对用户信息的管理效率。
1.2 研究意义
如今,随着计算机技术的飞速发展,人类已经进入到大数据与云服务时代。百度,腾讯,阿里巴巴等国内巨头都相继推出自己的云服务器,为广大企业,及个人提供服务器的租借服务。由于云服务器的租借具有快速构建、安全稳定,能够降低开发和运维的难度和节约整体成本等优点,能使企业能更专注于核心业务的创新,因而将很快拥有庞大的用户群。这样的全新模式比起单纯的物理服务器的租借更为简单高效,使用方无需提前购买硬件设备,即可快速创建多个服务器进行使用,为新兴企业降低了开发成本,也方便个人用户使用服务器。在这样的大环境下,针对这些服务器租借用户设计一套数据采集系统就显得尤为必要。
由于服务器租借行业是新兴行业,一旦云服务器得到推广和使用,用户数量会迅速激增,用户信息量会呈几何级数增长,然而针对此类数据的采集分析工具却不是很多,因此企业会迫切需要一套采集系统来帮助他们更好的管理用户数据,了解用户的使用情况和使用习惯,从而提升用户体验度,提高企业的服务质量和核心竞争力。
1.3 本文概述
此次设计将要实现对用户数据的采集和保存,因此将系统分成客户端和服务端两部分。首先根据用户需求设计日志结构,方便记录用户登陆的相关信息,再由客户端负责定时采集这些登陆日志,并按需求分析日志内容,整理出合格的,有效的数据,最后发送到服务端;服务端时刻保持等待客户端连接的状态,准备随时接收来自多个客户端的海量数据,并实时保存到本地的数据库中。
本系统的设计遵循软件开发的全过程,在做需求分析的时候认真研究云服务器租借行业的具体情况,真实的了解到用户的需求;在进行概要设计时,借鉴中国电信曾经的Unix实验室业务;最后进行系统的详细设计和编码测试。每个设计过程都严格按照软件工程的规范进行,力求在功能和性能两方面,都做到完美无缺。
1.4 技术简介
本系统是在Linux环境下开发,运行在Unix服务器上,使用C++语言开发和Oracle数据库存储整理好的数据。
1.4.1 Linux简介
Linux是一款完全免费而且性能极其稳定的开源操作系统,它的设计框架基于POSIX和UNIX,并且支持多用户、多任务、多线程和多CPU[1]。它能运行绝大多数的UNIX工具软件和应用程序,而且继承了UNIX的网络协议。Linux系统具有以下几个主要特点:
开放性:Linux系统遵循世界标准规范,特别是遵循开放系统互连(OSI)国际标准[10]。?
多用户:Linux的系统资源可以被不同用户使用,而且可以随时切换用户。但不同的用户只能对自己的文件资源进行操作,不能越权操作他人的文件资源。
多任务:在Linux操作系统下可以同时执行多个程序,而且各个程序之间互相独立。
良好的用户界面 :Linux系统有两种界面供用户使用:一种是用户界面,一种是系统调用,系统调用一般不是图形化界面。Linux下的ubuntu还为用户提供了图形界面。利用桌面、窗口、菜单、鼠标、滚动条等设施,给用户呈现出一个直观的、易操作的、交互性强的、友好的图形化界面,绝不亚于windows操作系统的图形化界面。

版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/jsj/jsjkxyjs/2223.html

好棒文