银行点钞机监控系统开发案例

admin 开发案例 2018-07-24 11:47 0
银行点钞机监控系统开发案例
项目简介
  项目为一个用于对点钞机、清分机等设备进行管理的系统,核心是实现对海量设备以及数据的可视化监控,通过web端对汇报来的数据进行统计运算,实现对海量点钞数据的大数据分析与监控。 
(
Project introduction for the one for the paper, such as sorting equipment manage system, the core is to realize the visualization of massive equipment and data monitoring, through the web side for statistical data for reporting to operations, to achieve the great data analysis and monitoring of the massive counting data.)
 
基本架构  整体采用分布式架构,内部部署,每个银行网点部署一个子节点,总行部署总节点。 
(
Basic architecture as a whole using distributed architecture, internal deployment, each bank branch to deploy a child node, the headquarters of the deployment of the total nodes.)
 
在线设备数量  承载了10万台点钞机和清分机的信息采集需求。
(
Online equipment carried 100000 banknote counter and sorting information collection requirements.)
 
并发连接数量  因为此系统不需要对下控制,所有设备采用短连接与服务器通信,服务器每秒处理数万次短连接请求。
(
Number of concurrent connections because do not need to control the system, all equipment USES short connection to communicate with the server, the server handle tens of thousands of times per second short connection request.)
 
并发数据量  峰值每秒接收3万次数据提交,日处理数据请求将达到数百万次。 
(Peak concurrent data amount received 30000 times per second data submission, processing data requests will reach millions of times.)

 
支持协议数量  目前已经实现十多种点钞机和清分机的接入。
(Support agreement number The already implemented a dozen paper and sorting of access.)

 
协议扩展能力  协议兼容型设备可无缝接入。
(Protocol extension ability compatible type device can seamless access.)
 
采用技术
最底层接入层:承担高强度的数据接入压力。
采用了DNS负载均衡+Nginx四层负载均衡+Netty框架实现。
DNS负载均衡将请求均衡转发给多个IP地址。
每个IP入口采用Nginx再将连接请求均衡转发给多台实际接入服务器。
通过多层次的均衡,从根本上防止出现某台服务器节点故障导致所有服务均不可用的情况。
实际在项目中完成了在一台高性能服务器上承载每秒3万次以上的调用请求,我们通过对一台服务器的性能优化,为客户明显节约了运营成本。
 
中间层数据处理层:承担高强度的数据分析运算压力。
SpringBoot+SpringCloud实现,接收由下层提交的数据进行处理。
我们通过使用消息队列服务,实现了灵活的系统解耦和运算压力的削峰填谷,多到处理不过来的数据可以在消息队列里海量堆积,直到业务压力降低以后再处理掉,避免了突发的压力压垮服务器导致服务不可用的可能,也确保了数据在任何情况下都不会丢失。
数据库与存储层:承担高强度的数据写入压力和存储压力
采用MySQL数据库集群存储各个设备的信息,业务信息。
采用Redis集群作为缓存存储需要频繁读取的数据。
采用了HBase对每天数十GB的数据进行存储,再采用Spark对累计以TB计的数据进行大数据分析,挖掘其中存在有效信息。
最顶层web业务层:面向用户,提供给用户使用。
采用成熟的SpringMVC+Mybatis方案,进行灵活的前后端分离设计,通过网页监控整套系统的运转。
 

分享:

扫一扫在手机阅读、分享本文

发表评论

评论列表(条)