CN107885593B - 用户认证方法和装置 - Google Patents

用户认证方法和装置 Download PDF

Info

Publication number
CN107885593B
CN107885593B CN201610871046.XA CN201610871046A CN107885593B CN 107885593 B CN107885593 B CN 107885593B CN 201610871046 A CN201610871046 A CN 201610871046A CN 107885593 B CN107885593 B CN 107885593B
Authority
CN
China
Prior art keywords
authentication
thread
user
processing
result
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201610871046.XA
Other languages
English (en)
Other versions
CN107885593A (zh
Inventor
李维贤
普磊
金泓
杨曦
付文岚
黄志明
黄翼
段舒苡
李黎
李旺芳
杨超
李晶
焦建安
郑欣
毛中华
刘昱彤
李云虹
张宏学
王驿驰轩
葛思源
魏靖洋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Telecom Corp Ltd
Original Assignee
China Telecom Corp Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by China Telecom Corp Ltd filed Critical China Telecom Corp Ltd
Priority to CN201610871046.XA priority Critical patent/CN107885593B/zh
Publication of CN107885593A publication Critical patent/CN107885593A/zh
Application granted granted Critical
Publication of CN107885593B publication Critical patent/CN107885593B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/5018Thread allocation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

本发明提出一种用户认证方法和装置,涉及认证鉴权领域。其中,本发明的一种用户认证方法包括:获取用户认证请求;根据用户认证请求将对用户的认证操作分解成多个处理单元;根据处理单元的数量分配多个线程并行执行认证操作,每个线程执行一个处理单元;根据各个线程反馈的处理单元的处理结果确定认证结果。通过这样的方法,能够将对用户的认证操作分为多个处理单元,为单个用户认证请求分配多个线程,每个线程执行一个处理单元,从而提高了认证速度;同时,将复杂的认证过程拆解成单个处理单元能够缩短单个线程的占用时间,避免长时间占用单个线程造成的队列堵塞挤压,提高系统的业务承载能力。

Description

用户认证方法和装置
技术领域
本发明涉及认证鉴权领域,特别是一种用户认证方法和装置。
背景技术
目前在宽带认证鉴权领域,当收到来自用户的宽带认证鉴权请求后,会分配一个线程处理该请求,由线程顺序执行包括账号密码校验、有效期校验、余额校验、捆绑属性校验等步骤,线程处理完一个鉴权请求后,获取下一个鉴权请求接着处理。
由于认证鉴权为顺序执行,需要执行完最后一个步骤后才能够得到认证结果,效率低下,一旦遇到复杂业务流程就会持续占用该线程,处理时间过长,且进程池、线程池内资源不能够释放,降低系统的吞吐量;同时,由于用户在宽带认证过程中一旦遇到阻塞会反复请求认证鉴权,因此宽带认证鉴权需求量巨大,可能会导致报文队列堵塞和积压,降低系统的业务承载能力。
发明内容
本发明的一个目的在于提高宽带认证鉴权的效率和鉴权设备的承载能力。
根据本发明的一个方面,提出用户认证方法,包括:获取用户认证请求;根据用户认证请求将对用户的认证操作分解成多个处理单元;根据处理单元的数量分配多个线程并行执行认证操作,每个线程执行一个处理单元;根据各个线程反馈的处理单元的处理结果确定认证结果。
可选地,根据处理单元的数量分配多个线程并行执行认证操作,每个线程执行一个处理单元包括:通过多进程分层获取业务请求;根据处理单元的数量将各个进程分为多个线程,并行执行认证操作,每个线程执行一个处理单元;获取各个线程的处理结果,并释放线程。
可选地,根据处理单元的数量分配多个线程并行执行认证操作,每个线程执行一个处理单元还包括:多个线程通过基于任务的异步GDBM(GNU database manager,革奴数据管理)执行带多重异步的同步查询,获取查询数据;利用协议缓冲protobuf的反射机制,根据缓冲区的预定结构体将各个线程获取的查询数据填充到缓冲区中,以便根据查询数据确定认证结果。
可选地,根据处理单元的数量分配多个线程并行执行认证操作,每个线程执行一个处理单元还包括:若线程执行处理单元的时间达到预定时间阈值,则确定线程的处理结果为处理失败,释放线程。
可选地,根据各个线程反馈的处理单元的处理结果确定认证结果包括:若各个线程反馈的处理结果均为处理成功,则认证结果包括认证成功标识;若存在线程反馈的处理结果为处理失败,则认证结果包括认证失败标识和失败原因信息。
可选地,还包括:根据认证结果反馈用户授权信息。
通过这样的方法,能够将对用户的认证操作分为多个处理单元,为单个用户认证请求分配多个线程,每个线程执行一个处理单元,多个线程并行执行认证操作,从而提高了认证速度;同时,将复杂的认证过程拆解成单个处理单元能够缩短单个线程的占用时间,避免长时间占用单个线程造成的队列堵塞挤压,提高系统的业务承载能力。
根据本发明的另一个方面,提出一种用户认证装置,包括:请求获取模块,用于获取用户认证请求;认证分割模块,用于根据用户认证请求将对用户的认证操作分解成多个处理单元;并行处理模块,用于根据处理单元的数量分配多个线程并行执行认证操作,每个线程执行一个处理单元;认证结果确定模块,用于根据各个线程反馈的处理单元的处理结果确定认证结果。
可选地,并行处理模块包括:请求分层获取单元,用于通过多进程分层获取业务请求;多线程并行执行单元,用于根据处理单元的数量将进程分为多个线程,并行执行认证操作,每个线程执行一个处理单元;处理结果获取单元,用于获取各个线程的处理结果;线程释放单元,用于释放完成执行处理单元的线程。
可选地,并行处理模块还包括:数据查询单元,用于利用多个线程通过基于任务的异步GDBM执行带多重异步的同步查询,获取查询数据;数据填充单元,用于利用protobuf的反射机制,根据缓冲区的预定结构体将各个线程获取的查询数据填充到缓冲区中,以便根据查询数据确定认证结果。
可选地,校验结果获取单元还用于在线程执行处理单元的时间达到预定时间阈值时,确定线程的处理结果为处理失败;线程释放单元还用于在线程执行处理单元的时间达到预定时间阈值时,释放线程。
可选地,认证结果确定模块用于:当各个线程反馈的处理结果均为处理成功时,确定认证结果包括认证成功标识;当存在线程反馈的处理结果为处理失败时,确定认证结果包括认证失败标识和失败原因信息。
可选地,还包括:信息反馈模块,用于根据认证结果反馈用户授权信息。
这样的装置能够将对用户的认证操作分为多个处理单元,为单个用户认证请求分配多个线程,每个线程执行一个处理单元,多个线程并行执行认证操作,从而提高了认证速度;同时,将复杂的认证过程拆解成单个处理单元能够缩短单个线程的占用时间,避免长时间占用单个线程造成的队列堵塞挤压,提高系统的业务承载能力。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1为本发明的用户认证方法的一个实施例的流程图。
图2为本发明的用户认证方法中执行处理单元的一个实施例的流程图。
图3为本发明的用户认证方法的另一个实施例的流程图。
图4为本发明的用户认证装置的一个实施例的示意图。
图5为本发明的用户认证装置中请求分层获取模块的一个实施例的示意图。
图6为本发明的用户认证装置的另一个实施例的示意图。
具体实施方式
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
本发明的用户认证方法的一个实施例的流程图如图1所示。
在步骤101中,获取用户认证请求。在一个实施例中,用户认证请求中可以包括用户名、密码、用户种类等信息。
在步骤102中,根据用户认证请求,将对用户的认证操作分解成多个处理单元。处理单元可以是最小的处理单位,可以对认证操作进行逐步分解,直至无法再次分解,得到处理单元。在一个实施例中,根据用户的不同、用户认证请求的不同,认证操作可以包括账号密码校验、有效期校验、余额校验、捆绑属性校验、业务属性校验等中的一个或多个,因此处理单元的数量可能会不同。在一个实施例中,可以根据用户认证请求判断用户类型,确定需要对用户执行哪个或哪些认证操作。如对于先付费用户需要执行账号密码校验、有效期校验、余额校验等,进一步将对用户的认证操作分解成多个处理单元。
在步骤103中,根据处理单元的数量分配多个线程并行执行认证操作,每个线程执行一个处理单元。
在步骤104中,根据各个线程反馈的处理结果确定认证结果。在一个实施例中,若各个线程反馈的处理结果均为处理成功,则认证结果为认证成功标识;若存在线程反馈的处理结果为处理失败,则认证结果为认证失败。
通过这样的方法,能够将对用户的认证操作分为多个处理单元,为单个用户认证请求分配多个线程,每个线程执行一个处理单元,多个线程并行执行认证操作,从而提高了认证速度;同时,将复杂的认证过程拆解成单个处理单元能够缩短单个线程的占用时间,避免长时间占用单个线程造成的队列堵塞积压,提高系统的业务承载能力。
本发明的用户认证方法中执行校验请求的一个实施例的流程图如图2所示。
在步骤201中,通过多进程分层获取业务请求。在一个实施例中,分层分别获取多个请求队列的用户认证请求,且按照分层顺序为用户认证请求分配进程。当进程执行完当前的认证操作后,对下一分层中的用户认证请求执行认证操作。
在步骤202中,根据处理单元的数量将进程分为多个线程并行执行认证操作,每个线程执行一个处理单元,从而实现将线形处理的认证操作转化为任务矩阵的方式进行处理,提高认证效率。
在步骤203中,获取各个线程的处理结果,并释放线程。
通过这样的方法,能够按照确定的处理单元的数量为认证操作分配线程,保证每个线程执行一个处理单元,保证快速执行,提高执行效率;线程完成校验操作后随即释放,从而保证不会持续占用资源,在下一个认证请求到来时有足够的线程资源供分配。
在一个实施例中,需要从数据库中获取用户数据,以便根据用户数据执行认证操作。在一个实施例中,可以利用多个线程通过基于任务的异步GDBM执行带多重异步的同步查询,获取查询数据。通过这样的方法,能够实现利用多个线程进行用户多种数据的并发查询,提高了查询效率,避免因数据获取的过程降低用户认证效率。
在一个实施例中,当多个线程获取用户数据后,可以利用protobuf的反射机制,根据缓冲区的预定结构体将各个线程获取的查询数据填充到缓冲区中,以便根据查询数据确定认证结果。通过这样的方法能够实现数据的自动填充,也便于基于预定结构体执行认证,确定处理结果,从而进一步提高了认证效率。
在一个实施例中,利用基于任务的异步GDBM执行查询处理具体可以包括:
Figure BDA0001124212630000061
上述查询过程由不同线程分别执行,且并行处理,保证每个线程的执行效率。通过这样的方法,将原有的用户请求查询队列改变成了查询矩阵,由多个线程执行,提高了运行效率。当所有查询完成后,返回初始状态,保证在下一个用户查询请求到来时能够迅速提供服务,无需反复调用消耗资源。在一个实施例中,可以将常用数据缓存在内存中,次常用数据缓存在缓存中,不常用数据存放在数据库的文件内,从而能够进一步提高数据查询效率。
在一个实施例中,存储用户信息的数据库可以为多台硬件设备,不同设备之间互相连接,实现资源、信息的共享。在一个实施例中,可以根据用户认证请求的预定字段进行哈希运算,确定将用户分配到哪台硬件设备中执行认证操作,由ICE(InternetCommunications Engine,分布式对象技术)总线进行控制,从而便于多设备间的平衡使用,有利于维持用户认证的稳定运行。
在一个实施例中,可以基于protocolbuffer语言的反射机制自动合成认证结果消息。如通过以下:
Figure BDA0001124212630000071
的构造函数提供了处理请求标识和一个由结构体序列化好的缓冲区,通过反射将查询数据自动填充到缓冲区的对应字段,从而实现数据的自动填充,也便于基于预定结构体执行认证,确定处理结果,进一步提高了认证效率。
在一个实施例中,为了提高系统的稳定性,保证线程不会堵塞,可以设置预定时间阈值,若线程执行认证操作的时间达到预定时间阈值,则确定线程执行处理单元的处理结果为处理失败,释放线程。通过这样的方法,能够防止由于线程错误导致的持续占用线程,保证了系统的稳定性。另外,与现有技术中相比,由于线程对于一个用户认证请求只执行一个处理单元,执行时间相对固定,因此便于工作人员配置合适的预定时间阈值,保证系统运行的效率。
在一个实施例中,若各个线程反馈的处理结果均为处理成功,则认证结果包括认证成功标识。若存在线程反馈的处理结果为处理失败,则认证结果包括认证失败标识和处理失败的字段信息,根据认证结果能够确定认证失败,以及确定认证失败的原因。
通过这样的方法,能够便于识别和记录认证失败的原因,从而便于反馈给用户,帮助用户有针对性的进行错误排除,实现正常的接入网络。
本发明的用户认证方法的另一个实施例的流程图如图3所示。
在步骤301中,获取用户认证请求。在一个实施例中,用户认证请求中可以包括用户名、密码等信息。
在步骤302中,根据用户认证请求,将对用户的认证操作分解成多个处理单元。在一个实施例中,可以根据用户认证请求进行分析,将认证过程逐渐分解,直至分解为处理单元。
在步骤303中,根据处理单元的数量分配多个线程并行执行认证操作,每个线程执行一个处理单元。在一个实施例中,可以利用Lua脚本语言对Radius(RemoteAuthentication Dial In User Service,远程用户拨号认证系统)框架进行灵活编程配置,实现多线程的并行处理。
在步骤304中,根据各个线程反馈的处理结果确定认证结果。在一个实施例中,若各个线程反馈的处理结果均为处理成功,则认证结果为认证成功;若存在线程反馈的处理结果为处理失败,则认证结果为认证失败。
在步骤305中,根据认证结果返回授权信息。若认证成功,则向用户授权,允许用户使用网络;若认证失败,则不允许用户使用网络,同时,可以向用户返回全部的认证失败的原因。
通过这样的方法,能够利用多个线程并行处理用户认证中的多个处理单元,保证执行的效率;能够将失败的原因全部反馈给用户,帮助用户有针对性的进行错误排除,避免用户反复发起用户认证请求、不断发现新的错误导致的请求量急剧增加,进一步降低了系统的压力,保证系统的稳定性。
本发明的用户认证装置的一个实施例的示意图如图4所示。其中,请求获取模块401能够获取用户认证请求。在一个实施例中,用户认证请求中可以包括用户名、密码等信息。认证分割模块402根据用户认证请求,将对用户的认证操作分解成多个处理单元。在一个实施例中,可以根据用户认证请求进行分析,将认证过程分解,直至分解为处理单元。在一个实施例中,根据用户的不同、用户认证请求的不同,认证操作可以包括账号密码校验、有效期校验、余额校验、捆绑属性校验、业务属性校验等中的一个或多个,因此处理单元的数量可能会不同。在一个实施例中,可以根据用户认证请求判断用户类型,确定需要对用户执行哪个或哪些认证操作。如对于先付费用户需要执行账号密码校验、有效期校验、余额校验等,进一步将对用户的认证操作分解成多个处理单元。并行处理模块403能够根据处理单元的数量分配多个线程并行执行认证操作,每个线程执行一个处理单元。认证结果确定模块404能够根据各个线程反馈的处理结果确定认证结果。在一个实施例中,若各个线程反馈的处理结果均为处理成功,则认证结果为认证成功;若存在线程反馈的处理结果为处理失败,则认证结果为认证失败。
这样的装置能够将对用户的认证操作分为多个校验请求,为单个用户认证请求分配多个线程,每个线程执行一个校验请求,多个线程并行执行认证操作,从而提高了认证速度;同时,将复杂的认证过程拆解成简单的单个校验请求能够缩短单个线程的占用时间,避免长时间占用单个线程造成的队列堵塞积压,提高系统的业务承载能力。
本发明的用户认证装置中并行处理模块的一个实施例的示意图如图5所示。其中,请求分层获取单元501能够通过多进程分层获取业务请求。在一个实施例中,分层分别获取多个请求队列的用户认证请求,且按照分层顺序为用户认证请求分配进程。当进程执行完当前的认证操作后,对下一分层中的用户认证请求执行认证操作。多线程并行执行单元502能够根据处理单元的数量将进程分为多个线程并行执行认证操作,每个线程执行一个处理单元。处理结果获取单元503能够获取各个线程的处理结果。线程释放单元504能够释放完成执行处理单元的线程。
通过这样的方法,能够按照确定的处理单元的数量为认证操作分配线程,保证每个线程执行一个处理单元,保证快速执行,提高执行效率;线程完成校验操作后随即释放,从而保证不会持续占用资源,在下一个认证请求到来时有足够的线程资源供分配。
在一个实施例中,需要从数据库中获取用户数据,以便根据用户数据执行认证操作。在一个实施例中,并行处理模块包括数据查询单元,用于利用多个线程通过基于任务的异步GDBM执行带多重异步的同步查询,获取查询数据。
这样的装置能够实现利用多个线程进行用户多种数据的并发查询,提高了查询效率,避免因数据获取的过程降低用户认证效率。
在一个实施例中,并行处理模块还可以包括数据填充单元,能够在多个线程获取用户数据后,利用protobuf的反射机制,根据缓冲区的预定结构体将各个线程获取的查询数据填充到缓冲区中,以便根据查询数据确定认证结果。这样的装置能够实现数据的自动填充,也便于基于预定结构体执行认证,确定处理结果,从而进一步提高了认证效率。
在一个实施例中,为了提高系统的稳定性,保证线程不会堵塞,可以设置预定时间阈值,若线程执行认证操作的时间达到预定时间阈值,则处理结果获取单元503确定线程执行的处理单元的处理结果为处理失败,线程释放单元504释放该线程。
这样的装置能够防止由于线程错误导致的持续占用线程,保证了系统的稳定性。另外,与现有技术中相比,由于线程对于一个用户认证请求只执行一个处理单元,执行时间相对固定,因此便于工作人员配置合适的预定时间阈值,保证系统运行的效率。
在一个实施例中,若各个线程反馈的处理结果均为处理成功,则认证结果包括认证成功标识。若存在线程反馈的处理结果为处理失败,则认证结果确定模块确定的认证结果包括认证失败标识和处理失败的字段信息,根据认证结果能够确定认证失败,以及确定认证失败的原因。
这样的装置能够便于识别和记录认证失败的原因,从而便于反馈给用户,帮助用户有针对性的进行错误排除,实现正常的接入网络。
本发明的用户认证装置的另一个实施例的示意图如图6所示。其中,请求获取模块601、认证分割模块602、并行处理模块603和认证结果确定模块604的结构和功能与图4的实施例中相似。用户认证装置还包括信息反馈模块605,能够根据认证结果返回授权信息。若认证成功,则向用户授权,允许用户使用网络;若认证失败,则不允许用户使用网络,同时,可以向用户返回全部的认证失败的原因。
这样的装置能够利用多个线程并行处理用户认证中的多个处理单元,保证执行的效率;能够将失败的原因全部反馈给用户,帮助用户有针对性的进行错误排除,避免用户反复发起用户认证请求、不断发现新的错误导致的请求量急剧增加,进一步降低了系统的压力,保证系统的稳定性。
在一个实施例中,当话务员在接到用户故障报告时,能够利用本发明的装置或方法进行用户认证,同时获取多个认证错误,从而能够根据错误信息逐个对报错进行处理,也可以通过内置程序在后台对出现认证错误的类型分别进行解绑定、清除在线、同步速率等一键操作,确保用户仅通过一次故障申告即处理完所有认证报错的故障,大大提高了故障处理效率,提升了用户体验。
在另一个实施例中,当电信维护人员处理故障时,也可以通过本发明的装置或方法,根据报错信息对故障进行准确判断以提高故障处理效率,并且可以更好地分析用户拨号行为,带来了立体化的故障信息显示,提高了工作效率。
在一个实施例中,工作人员可以对用户认证装置进行配置,包括配置端口、线程、服务总线、调用入口,以及全局、个体、临时变量、参数等等。这样的装置应用起来更加灵活,且能够保证装置的可控性。
在一个实施例中,可以利用服务器性能测试工具Benchmark(基准)对用户认证装置进行测试,benchmark程序每创建十万个报文就会暂停,按回车后继续。通过查看icomet进程的内存占用,最终,得出如下数据:
Figure BDA0001124212630000121
可以看到,每一个连接大约占用了2.7KB的内存。此时,服务器内存占用率小,相对空闲,能够证明用户认证装置能够实现大并发低延迟的用户认证处理。
最后应当说明的是:以上实施例仅用以说明本发明的技术方案而非对其限制;尽管参照较佳实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解:依然可以对本发明的具体实施方式进行修改或者对部分技术特征进行等同替换;而不脱离本发明技术方案的精神,其均应涵盖在本发明请求保护的技术方案范围当中。

Claims (12)

1.一种用户认证方法,其特征在于,包括:
获取用户认证请求;
根据所述用户认证请求将对用户的认证操作分解成多个处理单元,包括:根据用户认证请求判断用户类型,确定需要对用户执行的认证操作,将对用户的认证操作分解成多个处理单元,所述处理单元包括查询计费状态、查询设备端口标识、查询用户区域、查询用户绑定信息、查询用户设备类型、查询用户分类、查询用户级别、查询用户所在区和查询用户状态;
根据所述处理单元的数量分配多个线程并行执行认证操作,每个线程执行一个所述处理单元;
根据各个线程反馈的所述处理单元的处理结果确定认证结果,其中,若存在线程反馈的所述处理结果为处理失败,则所述认证结果包括认证失败标识和失败原因信息。
2.根据权利要求1所述的方法,其特征在于,所述根据所述处理单元的数量分配多个线程并行执行认证操作,每个线程执行一个所述处理单元包括:
通过多进程分层获取业务请求;
根据所述处理单元的数量将各个所述进程分为多个线程,并行执行认证操作,每个线程执行一个所述处理单元;
获取各个所述线程的所述处理结果,并释放所述线程。
3.根据权利要求2所述的方法,其特征在于,所述根据所述处理单元的数量分配多个线程并行执行认证操作,每个线程执行一个所述处理单元还包括:
多个线程通过基于任务的异步革奴数据管理GDBM执行带多重异步的同步查询,获取查询数据;
利用协议缓冲protobuf的反射机制,根据缓冲区的预定结构体将各个线程获取的所述查询数据填充到所述缓冲区中,以便根据所述查询数据确定认证结果。
4.根据权利要求2或3所述的方法,其特征在于,所述根据所述处理单元的数量分配多个线程并行执行认证操作,每个线程执行一个所述处理单元还包括:
若线程执行所述处理单元的时间达到预定时间阈值,则确定所述线程的处理结果为处理失败,释放所述线程。
5.根据权利要求1所述的方法,其特征在于,
所述根据各个线程反馈的所述处理单元的处理结果确定认证结果还包括:
若各个线程反馈的所述处理结果均为处理成功,则所述认证结果包括认证成功标识。
6.根据权利要求1所述的方法,其特征在于,还包括:
根据所述认证结果反馈用户授权信息。
7.一种用户认证装置,其特征在于,包括:
请求获取模块,用于获取用户认证请求;
认证分割模块,用于根据所述用户认证请求将对用户的认证操作分解成多个处理单元,包括:根据用户认证请求判断用户类型,确定需要对用户执行的认证操作,将对用户的认证操作分解成多个处理单元,所述处理单元包括查询计费状态、查询设备端口标识、查询用户区域、查询用户绑定信息、查询用户设备类型、查询用户分类、查询用户级别、查询用户所在区和查询用户状态;
并行处理模块,用于根据所述处理单元的数量分配多个线程并行执行认证操作,每个线程执行一个所述处理单元;
认证结果确定模块,用于根据各个线程反馈的所述处理单元的处理结果确定认证结果,其中,若存在线程反馈的所述处理结果为处理失败,则所述认证结果包括认证失败标识和失败原因信息。
8.根据权利要求7所述的装置,其特征在于,
所述并行处理模块包括:
请求分层获取单元,用于通过多进程分层获取业务请求;
多线程并行执行单元,用于根据所述处理单元的数量将所述进程分为多个线程,并行执行认证操作,每个线程执行一个所述处理单元;
处理结果获取单元,用于获取各个所述线程的所述处理结果;
线程释放单元,用于释放完成执行所述处理单元的所述线程。
9.根据权利要求8所述的装置,其特征在于,所述并行处理模块还包括:
数据查询单元,用于利用多个线程通过基于任务的异步革奴数据管理GDBM执行带多重异步的同步查询,获取查询数据;
数据填充单元,用于利用协议缓冲protobuf的反射机制,根据缓冲区的预定结构体将各个线程获取的所述查询数据填充到所述缓冲区中,以便根据所述查询数据确定认证结果。
10.根据权利要求8或9所述的装置,其特征在于,
所述处理结果获取单元还用于在所述线程执行所述处理单元的时间达到预定时间阈值时,确定所述线程的处理结果为处理失败;
所述线程释放单元还用于在所述线程执行所述处理单元的时间达到预定时间阈值时,释放所述线程。
11.根据权利要求7所述的装置,其特征在于,
所述认证结果确定模块用于:
当各个线程反馈的所述处理结果均为处理成功时,确定所述认证结果包括认证成功标识。
12.根据权利要求7所述的装置,其特征在于,还包括:
信息反馈模块,用于根据所述认证结果反馈用户授权信息。
CN201610871046.XA 2016-09-30 2016-09-30 用户认证方法和装置 Active CN107885593B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610871046.XA CN107885593B (zh) 2016-09-30 2016-09-30 用户认证方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610871046.XA CN107885593B (zh) 2016-09-30 2016-09-30 用户认证方法和装置

Publications (2)

Publication Number Publication Date
CN107885593A CN107885593A (zh) 2018-04-06
CN107885593B true CN107885593B (zh) 2021-07-06

Family

ID=61769851

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610871046.XA Active CN107885593B (zh) 2016-09-30 2016-09-30 用户认证方法和装置

Country Status (1)

Country Link
CN (1) CN107885593B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109257834B (zh) * 2018-09-17 2021-08-20 广州市特沃能源管理有限公司 基于Thread协议的网状无线传感器网络的组网方法
CN111935716B (zh) * 2020-09-29 2021-02-19 统信软件技术有限公司 一种认证方法、认证系统及计算设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1503505A (zh) * 2002-11-21 2004-06-09 清华同方股份有限公司 一种网络信息认证和信息加密解密的设备及其实现方法
US20110239272A1 (en) * 2010-03-24 2011-09-29 Ebay Inc. Non-numeric personal identification
CN103019651A (zh) * 2012-08-02 2013-04-03 青岛海信传媒网络技术有限公司 复杂任务的并行处理方法和装置
CN103746806A (zh) * 2013-12-13 2014-04-23 福建星网锐捷网络有限公司 一种网页认证方法、装置及网络设备

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1503505A (zh) * 2002-11-21 2004-06-09 清华同方股份有限公司 一种网络信息认证和信息加密解密的设备及其实现方法
US20110239272A1 (en) * 2010-03-24 2011-09-29 Ebay Inc. Non-numeric personal identification
CN103019651A (zh) * 2012-08-02 2013-04-03 青岛海信传媒网络技术有限公司 复杂任务的并行处理方法和装置
CN103746806A (zh) * 2013-12-13 2014-04-23 福建星网锐捷网络有限公司 一种网页认证方法、装置及网络设备

Also Published As

Publication number Publication date
CN107885593A (zh) 2018-04-06

Similar Documents

Publication Publication Date Title
CN110297701B (zh) 数据处理作业调度方法、装置、计算机设备及存储介质
CN107493310B (zh) 一种云资源处理方法及云管理平台
CN107291547B (zh) 一种任务调度处理方法、装置及系统
CN106254144B (zh) 故障定位平台、故障定位方法及装置
CN108256118B (zh) 数据处理方法、装置、系统、计算设备以及存储介质
CN108845954B (zh) 压力测试方法、系统及存储介质
CN106649057A (zh) 一种服务器压力测试的方法及装置
CN107402926B (zh) 一种查询方法以及查询设备
CN108600034B (zh) 业务压力管理方法、装置、设备、系统及存储介质
CN106411558B (zh) 一种数据流量限制的方法及系统
CN103544103A (zh) 一种软件性能测试模拟并发方法及系统
US10560385B2 (en) Method and system for controlling network data traffic in a hierarchical system
CN110659131B (zh) 任务处理方法、电子装置、计算机设备及存储介质
CN113064744A (zh) 任务处理方法、装置、计算机可读介质及电子设备
CN103593293A (zh) 一种并行自动化测试方法
CN107885593B (zh) 用户认证方法和装置
CN113157411A (zh) 一种基于Celery的可靠可配置任务系统及装置
Zhong et al. Speeding up Paulson’s procedure for large-scale problems using parallel computing
CN112817748A (zh) 一种基于安卓虚拟机处理任务的方法、计算机设备
CN108733545B (zh) 一种压力测试方法及装置
CN110278101A (zh) 一种资源管理方法及设备
CN113626173B (zh) 调度方法、装置及存储介质
CN107092556B (zh) 测试方法、装置及设备
CN114185763A (zh) 动态分配方法、装置、存储介质及电子设备
CN109240914B (zh) 安全测试任务的监控管理方法及终端设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant