本发明属于互联网约车,具体涉及一种网约车司机异常下线的检测方法、装置、设备及存储介质。
背景技术:
1、由于方便快捷且价格实惠,网约车成为了很多人出行的主要交通工具之一。对网约车系统而言,除了关心需求端(乘客)外,还应该关心供给端(司机)。关注司机的行为,其中核心的点就是司机的上下线。司机的上下线情况直接影响到派单系统判断是否可对司机进行派单,以及统计司机工作时长的准确性。
2、目前的现有技术中,一般是通过使用redis组件中的hash结构来存储司机位置与状态。正常的司机上下线是通过点击司机端的上下线按钮实现的,下线后不再计算工作时长。但在异常下线的场景下,现有的方法是通过定时任务scan整个hash来判断司机是否已经超过设定时间(n分钟)未上报导致下线。
3、申请人在检测司机异常下线的运营过程中发现,现有的检测方法中整个hash是一个大key和热key,在访问量大的情况下容易造成系统崩溃,系统稳定性极低,导致后续请求阻塞。
技术实现思路
1、本发明的目的是要解决上述的技术问题,提供一种网约车司机异常下线的检测方法、装置、设备及存储介质。
2、为了解决上述问题,本发明按以下技术方案予以实现的:
3、根据本发明的一方面,提供了一种网约车司机异常下线的检测方法,所述方法包括:
4、获取司机端上报的实时位置信息,所述实时位置信息包含实时位置、实时状态和时间戳;
5、当对所述实时位置信息进行分析处理时,生成延时任务,所述延时任务用于判断司机是否异常下线的触发点;
6、执行所述延时任务,判断司机异常下线的情况;
7、当所述司机端上报的时间戳超出预设的时间阈值及所述司机端上报的实时状态为听单中状态时,确定所述司机端异常下线。
8、根据本发明的另一方面,提供了一种网约车司机异常下线的检测装置,所述装置包括:
9、获取信息模块,用于获取司机端上报的实时位置信息,所述实时位置信息包含实时位置、实时状态和时间戳;
10、生成延时任务模块,用于当对所述实时位置信息进行分析处理时,生成延时任务,所述延时任务用于判断司机是否异常下线的触发点;
11、执行延时任务模块,用于执行所述延时任务,判断司机异常下线的情况;
12、确定异常下线模块,用于当所述司机端上报的时间戳超出预设的时间阈值与所述司机端上报的实时状态为听单中状态时,确定所述司机端异常下线。
13、根据本发明的另一方面,提供了一种电子设备,所述电子设备包括:
14、至少一个处理器;以及
15、与所述至少一个处理器通信连接的存储器;其中,
16、所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行本发明实施例所述的网约车司机异常下线的检测方法。
17、根据本发明的另一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序用于使处理器执行时实现本发明实施例所述的网约车司机异常下线的检测方法。
18、在本发明实施例中,派单系统通过获取司机端上报的实时位置信息,实时位置信息包含实时位置、实时状态和时间戳;当对实时位置信息进行分析处理时,生成延时任务,延时任务用于判断司机是否异常下线的触发点;执行延时任务,判断司机异常下线的情况;当司机端上报的时间戳超出预设的时间阈值及所述司机端上报的实时状态为听单中状态时,确定所述司机端异常下线。通过将实时位置和实时状态使用redis组件中string类型进行存储,可对原有的大key进行拆分。由于每个司机都是一个小key,访问的请求会被打散到各个节点,极大的提高系统的稳定性。在异常下线的场景下,使用延迟任务来替代原有的定时任务,避免redis读取大key出现阻塞的问题。
19、应当理解,本部分所描述的内容并非旨在标识本发明的实施例的关键或重要特征,也不用于限制本发明的范围。本发明的其它特征将通过以下的说明书而变得容易理解。
1.一种网约车司机异常下线的检测方法,其特征在于,所述方法包括:
2.根据权利要求1所述一种网约车司机异常下线的检测方法,其特征在于,包括:
3.根据权利要求2所述一种网约车司机异常下线的检测方法,其特征在于,还包括:
4.根据权利要求3所述一种网约车司机异常下线的检测方法,其特征在于,包括:
5.根据权利要求4所述一种网约车司机异常下线的检测方法,其特征在于,包括:
6.一种网约车司机异常下线的检测装置,其特征在于,所述装置包括:
7.一种电子设备,其特征在于,所述电子设备包括:
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序用于使处理器执行时实现权利要求1-5中任一项所述的网约车司机异常下线的检测方法。