基于rfid的高并发数据处理模式研究

基于rfid的高并发数据处理模式研究

ID:21089663

大小:131.17 KB

页数:6页

时间:2018-10-19

基于rfid的高并发数据处理模式研究_第1页
基于rfid的高并发数据处理模式研究_第2页
基于rfid的高并发数据处理模式研究_第3页
基于rfid的高并发数据处理模式研究_第4页
基于rfid的高并发数据处理模式研究_第5页
资源描述:

《基于rfid的高并发数据处理模式研究》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、基于RFID的高并发数据处理模式研充刘中原戴雯惠苏州经贸职业技术学院机信学院摘要:目前基于RFID的技术广泛应用于工程中的各种场合,大部分的RFID应用中需要访问云数据,相对于RFTD数据的高速输出,网络访问的速度则要慢很多,采用常规的线性处理方式,程序会因为高速并发的网络调用处理不及会很快卡死,本文研宂了一种基于定时器和队列的数据处理模式,将高速数据经过排队后再进行时时的并发处理,获取了较好的稳定性和较高的效率。关键词:RFID;网络访问;队列;并发处理;基金:院级项目《基于身份证和二维码的景区云检票闸机的研发和应用》(编号:KY-ZR1611)RFID射频识

2、别是一种非接触式的自动识别技术,它通过射频信号自动识别目标对象并获取相关数据,识别工作无须人工干预,可工作于各种恶劣环境。RFID技术可识别高速运动物体并可同时识别多个标签,操作快捷方便。在一个典型的RFID应用场景屮,程序接收到RFID的数据输出以后,需要将数据进行网络比对并根据返回结果进一步处理,KF1D设备通过申口连接接入主机,数据输出一般都是毫秒级别的,而网络服务在云端,两者的速度对比就像高速公路中的10车道的瞬间变成单车道,如果任由司机自由通行,那么在这个汇聚点肯定是要堵车的,网络访问至少受到3个因素的限制:客户端的网络状况,干线的网络拥堵状况和服务器

3、端的带宽和处理能力,在有诸多不确定性因素的前提下,网络访问历来在任何系统中都是瓶颈,如果处理不好高速输出的RE1D数据和网络访问的瓶颈,程序会很快耗尽内存和CPU的资源而卡死,如果是在性能较高的PC上,一般程序会开始,而如果是在性能较低的嵌入式应用中,整个嵌入式系统则会瘫痪,因此,需要使用一种有效的数据处理方式来处理这种场景的应用,本文以性能较低的嵌入式系统作为研宄对象,研宄在性能有限的情况下如果更稳定和高效地处理并发数据和网路调用之间的关系。本文提出了一种基于定时器和队列的处理模型,定时器的实质是线程,主要用于处理网路请求,RFID设备传输过来的高速数据首先都

4、进入队列进行排队,由定时器对队列里面的数据进行线性处理,两者不直接产生调用关系,这样便冇效缓冲丫RFID的高并发网络调用所导致的机器性能耗尽问题,经过队列的数据调用变得有条不紊,同时在网络调用中1个时间只有一个网络调用存在,以有序方式进行的调用极大地提高了网路调用的效率和速度,即是欲速则不达的一种解决方案,整个数据处理模型如图1所示。数据I乂••河一数据,屮队列RTID数撕2RHD数裾3'RFID'^iKN队列力向RFlD数裾1RFID数裾1KFID数懇OO49RFID处理幼果讪知^/网络调用数据,图1队列一定时器数据处理模型下载原图KF1D设备通过申口连接主

5、机,主机可以是性能较高的工控机,亦可是性能有限的嵌入式单片机或者ARM,但不管是哪种设备,系统以满足最苛刻环境为实现目标,即使放到最低性能的处理单元中,处理速度只能是与处理单元的性能有关,不能出现死机的情况,按照这一标准,允许硬件以最快的速度上传数据,主机在串门数据的处理上采用每次收到数据后到读取到特定缓冲区屮的做法,且在一定时间内缓冲区不清空,这样可以有效保证数据的连贯性和完整性,不至于使一帧数据拆成2部分,但随着RFID读取数据的增加,缓冲区存满时需要釆用一定的策略进行清空,伹为了不妨碍数据的连贯和有效性,需要在串U数据暂停输出时清空缓冲区,为了能够捕获有效

6、的清空时机,串口在输出数据时,处理单元需要设置加锁,清空只能在非加锁的时候进行,同时为丫防止情况的时候串口有数据输出到缓冲区,设置清空锁,如果串口在数据输出时遇到清空锁即做一定的延时,这个延时的时间在串口接收数据来说是可以接收的,毕竟对于任何的系统都只是执行一句代码的吋间。定吋器是线程的一种,以并发方式和主线程并行运行,除单片机外,凡是具有任何嵌入式操作系统的处理单元都支持线程的运行,比如Linux,WinCE,Android,当然性能更高的工控系列更是不在话下,系统在设计中还是遵循满足最低性能的处理单元为原则,这样设计出的算法便具有最广泛的支持度,本文以ARM

7、为例进行性能设计,在单核的ARM处理芯片中,线程中的数据处理逻辑在进行最快速数据处理中,切忌使CPU全负荷运转,比如常见while循环,如果在while循环屮不做任何停顿,等于该线程独占整个性能开销,会导致别的线程分不到CPU的时间片,特别是当有RF1D数据需耍时刻进行处理时,这种做法更不可取,经过实践证明,较合理的做法是在线程循环中稍加停顿,给其他的线程留下被CPU的处理时间,即使是100ms的停顿,别的线程在CPU的时间片轮询屮便能得到处理机会,定时器的处理逻辑设计原则如图2所示。空余的CPU时间片1—线程处理逻辑i1钱程Idlei线程处理逻辑j1线程Idl

8、e1线程处理逻辑111钱

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。