华为技术有限公司XX项目(Java后台开发,因保密原因,所以未能明示具体项目名称,敬请谅解)该项目是华为技术有限公司为某客户开发的一整套有关于视频缓存的解决方案,采用微服务架构,BMS组件是众多组件中负责管理设备和制定视频缓存规则的中间件,基于B/S架构,前端框架采用华为自行封装的框架,只需要按照要求编写标签即可,与后台的数据交互是在Struts2的基础上进行封装,开发人员可以有更多精力在后台逻辑处理上。控制层采用SpringMVC,算是轻车熟路。持久层采用MyBatis,在此之前一直接触的是Hibernate,相比之下,MyBatis的灵活程度更高,更加开放。组件主要涉及与文件服务器和消息服务器的交互,主要是I/O以及多线程的处理,同时,还要调用aap(数据采集服务器)的接口以及zookeeper来进行服务的发布。
华为技术有限公司xx项目(Golang服务器开发)该项目中LicenseServer,组件是用来进行对设备进行授权的证书文件的管理中间件,只有后台数据逻辑处理,不涉及前端,使用Go语言进行编写,涉及大量C语言接口,由于组网内设备的数量众多,采用Go语言可以更好的解决并发问题。LicenseServer组件要与成千上万台视频缓存设备进行交互,进行流量的分配与调整,与设备之间进行心跳保持,随时监控组网内设备的使用情况。对于license文件,组件要保证文件的真实性与安全性,在加载文件时与本机Mac信息进行核实,并采用SELinux防止文件被篡改