神领物流总结

常见问题

1、Redis、ES、Neo4J、MongoDB中都存储了什么数据?

Redis:

验证码(value)

refresh_token(value)

运费模板(hash)

全局配置-成本设置(干线、支线、接驳路线)(hash)

全局配置-调度配置(提前N小时发任务+转运节点最少|成本最低)(value)

合并运单(List和Set)

物流信息(value)

ES:

快递员的取派件任务

Neo4j:

机构和路线 机构:一级转运中心 二级分拣中心 网点 路线:名称、距离、成本

MongoDB:

网点和快递员的作业范围

物流信息

2、哪里用到分布式事务?哪里用到分布式锁?哪里用到分布式任务?

分布式事务:

1、快递员微服务 快递员取件成功后 调用任务微服务修改取派件任务的状态 调用订单微服务修改订单的状态

2、司机微服务 司机入库后 调用任务微服务修改运输任务的状态、调用任务微服务修改运单的状态

分布式锁:

1、司机入库: 只能有一个司机操作,任务已经完成的话,就不需要进行流程流转,只要完成司机自己的作业单即可

2、计算车辆运力时: 为了相同目的地的运单尽可能的分配在一个运输任务中,所以需要在读取数据时进行锁定,一个车辆处理完成后再开始下一个车辆处理

分布式任务:

1、处理发送失败的MQ消息

2、车辆调度(合并运单后计算车辆的运力)

3、项目中都涉及到了哪些设计模式?

处理Spring的那些设计模式外,我们自己写过:1、责任链模式 2、策略模式

4、开发遇到的问题或者bug?怎么解决的?

1、快递分配任务时,要选择一个任务量最少得快递员,任务量的查询是通过MySql查询得到的,但是如果是延迟任务时由于MySql的表更新不及时,导致查询到的工作量不准确

解决方案是:用Redis的Zset结构存储每个快递员的工作量,Zset本身可以排序、所以直接可以根据工作量顺序排序取第一个就是工作量最少的,分配给这个快递员后再zset中加1

2、一级Caffeine和二级缓存Redis不一致 ,解决方案:Redis的发布订阅

3、我们所有的枚举类code的值当时都是integer类型,但是有一个同事在定义枚举类的时候code的类型他写成了byte类型,导致在使用的时候没有注意,一直没有查到我想要的数据、找了好长时间的bug才发现是数据类型不一样 。

5、开发人员有多少?开发时间?并发量?数据量?

开发人员:java程序员最多的时候有20个,我离职的时候还有7个

产品经理 1个 前端:2个 测试:2个 运维:2个

开发时间:6-10个月

并发量:To C 2-30 To B 谈不上并发

数据量:每天的订单量 2-3W ToB 2-3K

  • 9
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
神领物流是一家专业的物流服务提供商,致力于为客户提供高品质、高效率的物流解决方案。神领物流以客户需求为导向,通过优化供应链管理、提升物流运作效率,为客户创造更大的价值。 首先,神领物流拥有一支经验丰富、专业技能过硬的团队。他们熟悉物流行业的各个环节,具备丰富的仓储、配送、运输等方面的经验,并且能够根据客户的需求提供个性化的解决方案。无论是大件物品的运输,还是小件货品的分拣配送,神领物流都能够高效地完成任务。 其次,神领物流拥有先进的仓储和物流设施。他们拥有多个仓库和配送中心,这些设施配备了最新的仓储管理系统和智能设备,能够实现对货品的精确管理和快速处理。同时,他们还采用高效的配送路线和运输方式,以确保货物能够准时到达目的地。 此外,神领物流注重信息化建设和技术创新。他们通过建立信息化平台,实现对物流运作的全程追踪和监控,及时掌握货物的位置和状态。并且,他们还不断引进和应用新的物流技术,如物联网、人工智能等,以提升物流运作的效率和准确性。 总而言之,神领物流凭借着专业的团队、先进的设备和信息化的管理手段,能够为客户提供高品质、高效率的物流服务。无论是个人寄送还是企业供应链管理,神领物流都能够满足客户的需求,并且为客户创造更多的价值。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值