WMS采用C/S风格。
客户端仅有表示层,使用工具的用户界面。底层由网络、数据库、机器人控制系统构成,应用程序主体通过调度和处理模块,对网络通信模块、数据处理模块、机器人控制模块进行控制,完成客户端的请求。
当客户端请求服务时,首先发送请求信息到调度和处理模块,调度和处理模块根据请求信息的种类,完成相应的服务。如果客户端请求数据处理,数据处理模块则访问本地数据库,执行相关操作,提供服务。若请求的数据在本地数据库中不能提供,调度和处理模块会启动网络通信模块,通过本地数据库服务器,访问外地服务器,获取相关信息,提供服务。
当客户端获得必要的信息,发出提取工具命令时,调度和处理模块会启动机器人控制模块,完成对机器人系统的控制和操作,最终客户通过机器人控制系统提取工具。当然,如果机器人系统本书出现故障,会自动上报到机器人控制模块,逐层传递给上层系统,并通知系统管理员及时作出维护处理。
原因:
1. 性能方面:如上所述,b/s架构的数据存储和主要处理负担都在服务器上,wms需要对 多个不同仓库进行供货管理,b/s会导致服务器处理负担过重。并且wms的库存数据需要给管理层提供决策支持,在数据更新的及时性方面有需求,c/s架构分散了处理负担。保障了数据的及时性,提供了性能支持。 便于:分布式数据的访问。由于各个子公司具有各自的数据库服务器,系统需要实 现数据互通。使用此风格,能够通过本地服务器与外部服务器相连,实现对外部数据的 访问,同时又保证了数据存储的安全性。
2. 兼容性方面:wms需要具备对多个仓库提供管理支持,而这些仓库的运作,管理方式各 有差异,如果采用b/s结构,各个仓库的管理方式及相应方法都必须存储在中央服务器中,会导致整个系统可维护性下降明显,整个系统趋于复杂,加入新仓库时需要根据仓库特点对整个系统核心进行修改,在仓库数量多切种类各异的时候会导致系统臃肿不堪。c/s架构可以根据仓库的运作特点定制客户端软件,服务端只用提供统一的通信接口并且按照这个接口对各个仓库进行管理即可,模块划分更加明显,系统的耦合性可以得到有效降低,同时,因为处理模块是分布式的,所以,在一个仓库管理系统出现问题时,不会影响到另一个仓库系统的运作。
3. 数据存储方面:b/s架构的数据中心在中央服务器,各个仓库的所有维护用数据(调度 状况,库存状况,仓库机械运行情况,机械操作方式)都必须存储在中央服务器,数据存储量大,服务器和客户机之间的数据交换量也大。c/s架构允许仓库把一些个性化的数据文件(如各个仓库采用的机械操作方式等)存储在本地,只与服务器同步一些重要的信息,如货物库存,订单状况等。
4. 安全性方面:采用b/s架构,统一商品在不同仓库发生同时存取时会发生并行访问,对 数据一致性难以做到保证,并且由于数据都是统一存储在服务器中的,服务器崩溃后就要对整个系统重新进行数据回复,回复难度大,成本高。而单个客户机出现数据错误时,会影响到其他存储着同样货物的仓库数据。采用c/s机构,本地持有库存信息,只需要定时与服务器进行进行数据同步,消除了很大一部分的并行需求,并且在服务器出问题时,只需要从各个客户端处回收信息,单个客户机的系统崩溃或出错并不会影响其他客户机的数据安全。