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

用户认证方法和装置 Download PDF

Info

Publication number
CN107885593A
CN107885593A CN201610871046.XA CN201610871046A CN107885593A CN 107885593 A CN107885593 A CN 107885593A CN 201610871046 A CN201610871046 A CN 201610871046A CN 107885593 A CN107885593 A CN 107885593A
Authority
CN
China
Prior art keywords
thread
processing unit
authentication
user
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.)
Granted
Application number
CN201610871046.XA
Other languages
English (en)
Other versions
CN107885593B (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

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执行查询处理具体可以包括:
上述查询过程由不同线程分别执行,且并行处理,保证每个线程的执行效率。通过这样的方法,将原有的用户请求查询队列改变成了查询矩阵,由多个线程执行,提高了运行效率。当所有查询完成后,返回初始状态,保证在下一个用户查询请求到来时能够迅速提供服务,无需反复调用消耗资源。在一个实施例中,可以将常用数据缓存在内存中,次常用数据缓存在缓存中,不常用数据存放在数据库的文件内,从而能够进一步提高数据查询效率。
在一个实施例中,存储用户信息的数据库可以为多台硬件设备,不同设备之间互相连接,实现资源、信息的共享。在一个实施例中,可以根据用户认证请求的预定字段进行哈希运算,确定将用户分配到哪台硬件设备中执行认证操作,由ICE(InternetCommunications Engine,分布式对象技术)总线进行控制,从而便于多设备间的平衡使用,有利于维持用户认证的稳定运行。
在一个实施例中,可以基于protocolbuffer语言的反射机制自动合成认证结果消息。如通过以下:
的构造函数提供了处理请求标识和一个由结构体序列化好的缓冲区,通过反射将查询数据自动填充到缓冲区的对应字段,从而实现数据的自动填充,也便于基于预定结构体执行认证,确定处理结果,进一步提高了认证效率。
在一个实施例中,为了提高系统的稳定性,保证线程不会堵塞,可以设置预定时间阈值,若线程执行认证操作的时间达到预定时间阈值,则确定线程执行处理单元的处理结果为处理失败,释放线程。通过这样的方法,能够防止由于线程错误导致的持续占用线程,保证了系统的稳定性。另外,与现有技术中相比,由于线程对于一个用户认证请求只执行一个处理单元,执行时间相对固定,因此便于工作人员配置合适的预定时间阈值,保证系统运行的效率。
在一个实施例中,若各个线程反馈的处理结果均为处理成功,则认证结果包括认证成功标识。若存在线程反馈的处理结果为处理失败,则认证结果包括认证失败标识和处理失败的字段信息,根据认证结果能够确定认证失败,以及确定认证失败的原因。
通过这样的方法,能够便于识别和记录认证失败的原因,从而便于反馈给用户,帮助用户有针对性的进行错误排除,实现正常的接入网络。
本发明的用户认证方法的另一个实施例的流程图如图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进程的内存占用,最终,得出如下数据:
可以看到,每一个连接大约占用了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 true CN107885593A (zh) 2018-04-06
CN107885593B 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)

Cited By (2)

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

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 福建星网锐捷网络有限公司 一种网页认证方法、装置及网络设备

Cited By (3)

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

Also Published As

Publication number Publication date
CN107885593B (zh) 2021-07-06

Similar Documents

Publication Publication Date Title
CN110197058B (zh) 统一内控安全管理方法、系统、介质及电子设备
WO2021057251A1 (zh) 灰度发布方法、装置、路由设备和存储介质
CN105100051B (zh) 实现数据资源访问权限控制的方法及系统
CN103581279B (zh) 面向第三方开发者的接入系统、方法及装置
CN109800160B (zh) 机器学习系统中的集群服务器故障测试方法和相关装置
CN107196900A (zh) 一种共识校验的方法及装置
US20140032174A1 (en) Techniques for distributed testing
CN106170763B (zh) 一种软件校验方法和装置
CN108268372A (zh) Mock测试处理方法、装置、存储介质和计算机设备
CN110049048B (zh) 一种政务公共服务的数据访问方法、设备及可读介质
CN110661829B (zh) 文件下载方法及装置、客户端和计算机可读存储介质
CN110362409A (zh) 基于多种类型的资源分配方法、装置、设备及存储介质
CN106997546A (zh) 一种订单处理方法及装置
CN107451853A (zh) 一种红包实时派发的方法、装置、系统及存储介质
CN110535654A (zh) 基于区块链的并行系统部署方法、装置和计算机设备
CN108833522A (zh) 一种确定节点可信的系统及方法
CN113595926B (zh) 基于数据中台的api数据传输方法、装置、设备和介质
CN110532025A (zh) 基于微服务架构的数据处理方法、装置、设备及存储介质
CN112131002A (zh) 数据管理方法及装置
CN105809031B (zh) 数据库审计的方法、装置及系统
CN107885593A (zh) 用户认证方法和装置
CN104639546A (zh) 多生物特征综合认证的方法、装置和系统
CN109729139A (zh) 访问请求转发方法、装置、设备及可读存储介质
CN108037984A (zh) 数据分析的资源管理方法、系统以及可读存储介质
CN114116356A (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