蔡朝鵬
摘 要:傳統(tǒng)物流業(yè)管理粗放,效率低,成本高,迫切需要信息化改革?;贘ava EE設計的物流管理系統(tǒng)實現(xiàn)了車輛和人員的調(diào)度,可實時監(jiān)控車輛的位置和運行狀態(tài),對物料和運輸數(shù)據(jù)進行統(tǒng)計分析,具有較高的性能、可擴展性和可用性,有助于企業(yè)降本增效,增強競爭力。
關(guān)鍵詞:Java EE;物流管理系統(tǒng);Spring Cloud;MySQL
中圖分類號:TP311.52 文獻標志碼:A 文章編號:2095-2945(2019)19-0109-03
Abstract: The traditional logistics industry has extensive management, low efficiency and high cost, so there is an urgent need for information reform. The logistic management system based on Java EE realizes the scheduling of vehicles and personnel, can monitor the position and running status of vehicles in real time, and carries on the statistical analysis to the material and transportation data, which has high performance, expansibility and availability. It will help enterprises to reduce costs and increase efficiency and enhance their competitiveness.
Keywords: Java EE; logistic management system; Spring Cloud; MySQL
引言
隨著國家經(jīng)濟實力的增強,商品、信息等的流通速度明顯加快,對物流的需求大幅增加。在企業(yè)粗放型管理的時代,物流管理是影響生產(chǎn)效率的重要環(huán)節(jié),物流成本一直高居不下。如今傳統(tǒng)行業(yè)都在推行信息化,大力創(chuàng)新,物流體系同樣需要順應趨勢,進行信息化改革,降低物流成本,提升管理水平,提高生產(chǎn)效率[1]。
為實現(xiàn)物流過程的信息化、數(shù)字化、可視化、智能化,提高人員和車輛的利用效率,本文基于Java EE技術(shù)進行了物流管理系統(tǒng)設計。通過該物流管理系統(tǒng)可提升物流管理的信息化水平,使用可視化的監(jiān)控模塊和數(shù)據(jù)統(tǒng)計分析模塊提高管理水平,最終實現(xiàn)過程實時監(jiān)控、智能分析、智能調(diào)度。
1 業(yè)務設計
本系統(tǒng)充分考慮各用戶角色的需求、信息和數(shù)據(jù)的流動,進行了如下業(yè)務模塊設計:
(1)基礎數(shù)據(jù)管理模塊。包括用戶、車輛、人員等的信息管理。
(2)權(quán)限管理模塊。用于控制用戶對車輛、設備、數(shù)據(jù)等的操作和訪問權(quán)限。
(3)調(diào)度模塊??蓪ε漭d、車輛、人員等進行調(diào)度。
(4)監(jiān)控模塊。實現(xiàn)對車輛的位置和運行狀態(tài)等全流程監(jiān)控。
(5)數(shù)據(jù)分析模塊。用于對基礎數(shù)據(jù)、物料、運輸軌跡等查詢和統(tǒng)計分析。
(6)大屏展示模塊。分屏展示實時監(jiān)控、車輛信息、數(shù)據(jù)統(tǒng)計等圖形。
2 系統(tǒng)技術(shù)特點
本系統(tǒng)解決方案采用了多種較為前沿的技術(shù)和設計思想,且經(jīng)過充分的實踐檢驗,可用于高并發(fā)、大數(shù)據(jù)量的場景。
系統(tǒng)依托于云服務器,基于Java EE Spring Cloud的微服務架構(gòu)設計[2],可擴展性、可維護性、靈活性都非常好,可以保證系統(tǒng)速度和穩(wěn)定性。
支持全終端、多應用訪問??墒褂脼g覽器、App、微信小程序等進行授權(quán)模塊的訪問。
系統(tǒng)開發(fā)所采用的環(huán)境或技術(shù)包括:
(1)操作系統(tǒng):CentOS 64位系統(tǒng)
(2)數(shù)據(jù)庫:MySQL、Redis
(3)后臺開發(fā)框架:Spring、Spring Cloud、Spring Boot、
SpringMVC、Mybatis
(4)前端開發(fā)框架:Vue、BootStrap、ElementUI
(5)部署方案:Tomcat/Jetty/JBoss、Docker容器
3 系統(tǒng)架構(gòu)
系統(tǒng)整體架構(gòu)圖如圖1。
該系統(tǒng)采用分層微服務架構(gòu)設計,充分考慮了大數(shù)據(jù)量、高并發(fā)、可擴展等特性,能夠很好的支撐業(yè)務的擴充。
3.1 MySQL數(shù)據(jù)庫集群
數(shù)據(jù)庫服務是各種系統(tǒng)架構(gòu)中的性能關(guān)鍵點,甚至成為瓶頸。
MySQL數(shù)據(jù)庫集群方案可以有以下幾種選擇:
(1)MySQL主從復制方案
此方案中的MySQL服務器分為主服務器、從服務器兩種角色。一般會通過主從服務器角色的劃分實現(xiàn)數(shù)據(jù)讀寫分離。主服務器用于寫數(shù)據(jù),從服務器用于讀數(shù)據(jù)。從服務器的數(shù)據(jù)會保持和主服務器一致。
MySQL主從方案分為一主一從、一主多從、主主復制、多主一從、聯(lián)級復制等幾種類型,可以根據(jù)對系統(tǒng)可用性、讀寫性能的要求選擇具體的方案。
(2)MySQL Cluster集群
MySQL Cluster使用“內(nèi)存”中的NDB存儲引擎,支持多種負載均衡選項配置。MySQL Cluster服務器進程分為管理節(jié)點、數(shù)據(jù)節(jié)點和SQL節(jié)點三種角色。
(3)LVS+Keepalived+MySQL
LVS即Linux虛擬服務器,工作于網(wǎng)絡層,用于組建服務器集群的負載均衡,分為NAT、TUN、DR三種工作模式。
Keepalived用于檢測服務器工作狀態(tài)。如果有服務器發(fā)生故障,則Keepalived會用其他服務器將之取代。
三種數(shù)據(jù)庫集群方案均可在一定程度上保證數(shù)據(jù)的讀寫效率和存儲安全,提高數(shù)據(jù)服務的可用性,可根據(jù)具體要求進行選擇。
3.2 Redis集群
Redis Cluster是一個完全去中心化的集群系統(tǒng)。集群中的每個節(jié)點都是對等的,都保存了各自的數(shù)據(jù)和集群的狀態(tài),且相互之間都有連接。
Redis集群將數(shù)據(jù)緩存在內(nèi)存中,減少了系統(tǒng)的I/O操作,提高了數(shù)據(jù)訪問速度,從而降低數(shù)據(jù)庫負載,提高系統(tǒng)性能。
3.3 MQ消息隊列
MQ消息隊列常用于異步處理、流量削峰、消息通訊和應用解耦等應用場景。
MQ消息隊列的使用降低了服務間的耦合性,保證了數(shù)據(jù)的處理順序,增強了峰值處理能力,能夠快速給用戶反饋,用戶體驗更好。
3.4 其他集群設計
各服務和Nginx的集群同樣可使得系統(tǒng)易擴展、高可用、高性能。
4 功能模塊說明
本節(jié)對系統(tǒng)中部分功能模塊進行具體說明。
4.1 用戶管理
此模塊用于添加、刪除、修改用戶,管理用戶的姓名、年齡、職位、聯(lián)系方式等基礎信息。還可指定用戶角色,根據(jù)角色進行權(quán)限管理或記錄操作日志等。
4.2 車輛信息管理
通過此模塊可添加、刪除、修改、查看車輛信息。信息主要包括:車型、車牌號、排量、發(fā)動機號碼、底盤號碼、加油卡號、購置(租賃)日期、現(xiàn)單位、責任司機、車輛性質(zhì)、調(diào)入日期、調(diào)入單位、調(diào)出日期、調(diào)出單位、調(diào)動原因等。
4.3 權(quán)限管理
可由高權(quán)限角色用戶進行權(quán)限設置,控制其他用戶對每個功能模塊的操作權(quán)限,使得某些操作或數(shù)據(jù)只開放給適當?shù)娜巳菏褂茫WC系統(tǒng)數(shù)據(jù)的安全性。
4.4 實時監(jiān)控管理
可實現(xiàn)所有的車輛在同一幅地圖上同時顯示。根據(jù)車輛的位置和數(shù)量,系統(tǒng)自動將地圖調(diào)整到最合適的比例尺,所有車輛的實時位置和狀態(tài)一目了然[3]。車輛快速閃動
表示車輛正在運行,車輛慢閃表示車輛停止。
4.5 歷史軌跡查看
可查詢?nèi)我鈺r段的車輛行車軌跡,地圖自動以連續(xù)的藍色線條描述需監(jiān)控車輛的運行路線,直觀、明了。系統(tǒng)還能以動態(tài)形式回放車輛運行軌跡,讓用戶清晰、細致地了解車輛的歷史運行狀態(tài)。
4.6 數(shù)據(jù)查詢
可查詢用戶、車輛等的基礎信息,還可以對油耗、里程等運行數(shù)據(jù)、違章等安全數(shù)據(jù)、物料或產(chǎn)品的運輸量等進行查詢,并生成各類報表和統(tǒng)計圖形。
4.7 可視化大屏顯示
為了實時展示物料或產(chǎn)品信息、車輛信息、運輸車輛實時監(jiān)控信息等,我們可設計由四個顯示屏組成的可視化大屏顯示各類需求較強的信息。
其中,第一屏顯示數(shù)據(jù)統(tǒng)計信息,包括物料名稱、不同時間段的運輸量等;第二屏顯示廠內(nèi)實時監(jiān)控畫面;第三屏顯示廠內(nèi)車輛信息、原發(fā)數(shù)據(jù)及送貨地址等信息;第四屏顯示運輸車輛實時監(jiān)控情況,可以實時顯示所有運輸車輛實時位置,并能搜索車號查詢行駛軌跡。
5 結(jié)束語
該系統(tǒng)基于Java EE的Spring Cloud等框架設計,支持全終端訪問,采用集群、緩存等技術(shù)提高了系統(tǒng)的性能、可擴展性、可用性。再通過合理的業(yè)務設計,實現(xiàn)物流過程的實時監(jiān)控和歷史數(shù)據(jù)查詢。最終幫助企業(yè)建立一個優(yōu)秀的物流體系,實現(xiàn)降本增效,增強企業(yè)競爭力。隨著大數(shù)據(jù)和網(wǎng)絡技術(shù)的發(fā)展,系統(tǒng)將在功能、性能、可用性等方面精益求精,助力企業(yè)創(chuàng)造更多的效益。
參考文獻:
[1]林慶.物流3.0——“互聯(lián)網(wǎng)+”開啟智能物流新時代[M].人民郵電出版社,2017:38-52.
[2]周立.Spring Cloud與Docker——微服務架構(gòu)實戰(zhàn)[M].電子工業(yè)出版社,2017:9-26.
[3]張宇,王義民,黃大雷,等.智慧物流與供應鏈[M].電子工業(yè)出版社,2016:89-95.