APP下载

B/S 架构在软件无线电平台综合显控软件中的应用

2021-01-28魏子辉

科技视界 2020年22期
关键词:用户界面服务端客户端

魏子辉

0 前言

随着信息技术的发展,用户不仅仅限于设备功能稳定实用,更注重于显示控制软件的友好,设备显控软件多是采用类似MFC 的技术实现的应用软件,其优势在于面对的是固定用户群,对信息安全的控制能力很强,并且具有强大的数据操作和业务处理能力,但是应用软件的整体性也让系统升级代价增加,对软件环境要求高,不易于移植。本文采用B/S 的架构来实现设备显控软件,B/S 体系的优势在于其便于跨平台布置,简化客户端从而使操作简单明了,维护成本低,系统升级迭代快,开发迅捷[1-4]。

1 系统介绍

通用软件无线电平台支持多种波形的动态加载,实现“一种架构统多种平台,一种平台加载多种波形,一种波形适应多种平台”。其中,综合显控软件实现对平台内波形和设备的状态进行监控与控制,主要包括:波形安装、波形动态部署、波形加/卸载等SCA 波形控制功能,设备状态监测与控制、波形运行状态监测,设备资源配置,波形参数控制。

2 系统结构及相关技术

综合显控软件前端界面可让操作员实时查看各个硬件模块的工作状态、资源占用情况、温度等状态,也能实时查看硬件模块所运行的波形状态,同时可以进行设备工作的控制。

2.1 B/S 结构

本文将综合显控系统控制前端软件设计为Web 软件,依照JavaEE 开发规范部署在应用服务器上,客户端使用浏览器,支持常见的桌面浏览器。本系统为了将各对象间的耦合程度降到最小,采用经典的MVC 分层设计。

综合显控软件前端使用javascript/jquery/css 进行视图界面开发;服务端主要使用Java 语言,选择Spring 4.0 作为服务端框架组件;数据持久层拟选用数据库mysql5 进行持久化数据存储实现;应用服务器选用Tomcat8 作为服务端软件部署并提供对外访问。

显控前端软件系统组成部分有:

(1)客户端,可多用户访问。

(2)服务器,其中包括应用服务器tomcat,服务主机,数据库。

(3)设备。

其中客户端和服务器之间基于Http 协议进行通信,服务器与设备之间基于TCP/UDP 协议通信。

客户端主要负责与用户之间的对话,提供基于浏览器的人机交互界面、数据输入输出,通过Http 协议与服务端进行通信,访问业务数据资源。

服务端中功能层是通过部署应用服务器和数据库,处理来自客户端的业务请求,通过接口响应表示层发出的请求,完成相关业务处理后把结果返回客户端;数据层是提供相关持久化数据存储访问服务,通过TCP/UDP 协议与波形代理服务器进行数据通信,获取波形组件和设备组件信息提供给客户端访问,以及进行波形参数配置和波形部署、加载卸载、运行状态监控等,通过TCP/UDP 与设备通信的功能与持久化数据存储访问类似,所以将该功能放入数据层。

2.2 数据封装与解析

本系统数据封装和解析借用Java 虚拟机对动态链接库调用的技术实现,动态链接库即DLL,又称为应用程序拓展,DLL文件中存放的是各类程序的函数(子过程)实现过程,当程序需要调用函数时需要先载入DLL,然后取得函数地址,最后进行调用,这样程序就不需要在运行初加载所有代码,只在某个使用时调用。该方法更加节省内存;DLL 文件与系统文件独立,只要输出接口不变(即名称、参数、返回值类型和调用约定不变),更换DLL 文件不会对系统造成任何影响,极大地提高了可维护性和可扩展性;开发过程独立、耦合度小,便于测试。

本系统DLL 按照具体协议内容,编写相应指令的数据封装和解析函数,最后利用C++项目生成相应的DLL 文件,放于项目目录下,在本系统的业务处理层进行加载和调用,实现数据的封装或者解析。本系统中协议格式为:指令标识+数据长度+数据内容,指令标识大小为两个byte,数据长度大小为两个byte,数据内容的长度按照实际的内容长度而定。

3 系统应用与实现

综合显控软件按数据流向可分解为用户界面、业务处理、数据库、设备数据。用户界面与业务处理之间通过用户的操控来交互,业务处理与数据库和设备之间进行交互,与数据库之间通过持久化访问,与设备之间通过TCP/UDP 进行通信。

其中综合显控软件通过B/S 架构中的表示层实现和用户的交互,通过TCP/UDP 实现与设备之间的信息输入输出。

3.1 B/S 架构的应用与实现

综合显控软件中需要用B/S 架构实现按照功能可以分为设备监测控制和数据显示处理两部分。设备监测控制即硬件设备状态查询、波形监测与控制、SCA 组件监控;数据显示处理则为波形信息管理、系统信息管理、设备信息管理。除了与设备之间信息的交互外,其他功能都需B/S 架构中实现。

本系统的 B/S 分为:用户界面层,ActionFilter 层,ServiceImpl 层,数据库层。用户界面层利用http 请求访问ActionFilter 层,ActionFilter 层通过和 ServiceImpl 层业务适配,由SerciceImpl 直接访问数据库进行业务处理,将处理后的结果以Json 的形式一层一层上传给用户界面显示。

3.2 TCP/UDP 通信实现

综合显控软件中波形监测,波形动态控制(动态安装、部署、删除、加载、停止等)、设备状态监测与控制、SCA 组件监控等功能需要与设备交互,用网口传输数据,采用TCP/UDP 通信,在项目中配置好IP 和端口号,创建线程进行监听,当软件接收到数据后,利用报文解析,调用动态链接库进行数据解析,当软件需要下发指令时,先用动态链接库进行数据封装,打包成报文后通过网络传输。

综合显控软件与设备之间通信控制可分为四层:用户界面层,ActionFilter 层,ServiceImpl 层及设备层。用户界面通过http请求访问ActionFilter 层,ActionFilter 层通过请求的不同,访问ServiceImpl 层不同的业务,由ServiceImpl 层通过TCP/UDP 访问设备,待设备响应后将响应结果按照协议打包形成json,再通过一层层传递,返回给用户界面,显示给用户。

4 结束语

B/S 体系结构利用不断成熟的WWW 浏览器技术,实现原需要专用软件才能实现的强大功能,维护代价低,只需为一套设备配置一套服务器,便可以满足多个用户端进行访问和控制,避免了专用软件安装专用环境的麻烦,简化客户端,方便操作。

猜你喜欢

用户界面服务端客户端
自然用户界面在智能家居系统中的应用路径创新研究:生成式人工智能技术的调节作用
基于CiteSpace的国外用户界面体验图谱量化分析
云存储中基于相似性的客户-服务端双端数据去重方法
县级台在突发事件报道中如何应用手机客户端
孵化垂直频道:新闻客户端新策略
基于Vanconnect的智能家居瘦客户端的设计与实现
新时期《移动Web服务端开发》课程教学改革的研究
在Windows Server 2008上创建应用
基于B/S的跨平台用户界面可配置算法研究
客户端空间数据缓存策略