所谓的心跳查询

public class QueryManager {    private static Context context;    private static Intent intent;    private static boolean stopFlag;    private static Runnable runnableQueryService;    private static Handler queryHandler;
queryHandler .postDelayed(runnableQueryService, dylaySeconds*1000);//第一次调用延迟
queryHandler = new Handler(){    @Override    public void handleMessage(Message msg) {        super.handleMessage(msg);        String strJson = msg.getData().getString("data");        processServiceQueryData(strJson);        if(!stopFlag) {            queryHandler.postDelayed(runnableQueryService, 20 * 1000);        }    }};


QueryNewCountManager.runnableQueryService = new Runnable(){    @Override    public void run() {//调用服务进行一次查询        Intent intent = new Intent(context, QueryService.class);        if(queryHandler == null){            return;        }        QueryService.setHandler(queryHandler);        context.startService(intent);    }};
QueryNewCountManager.intent = new Intent(context, QueryFireCountService.class);
(handler)queryHandler --> (runnable)runnableQueryService --> (service)QueryService(带上queryHandler,查询完后,sendmessage 给 queryHandler)

queryHandler处理QueryService发来的service。然后重新调用runnableQueryService 。

如此反复进行心跳查询。


				
时间: 2024-08-26 23:51:16

所谓的心跳查询的相关文章

【HCIP Gauss】学习汇总-数据库管理-2

数据库管理目标:稳定 安全 数据一致性 系统高性能 数据库管理员 数据库管理范围 :数据库管理对象1.物理设计工作 2.物理实现工作 对象是指 :数据库里 存储和指向数据的各种概念和结构的总称 对象管理:增删查改对象的过程 基本数据库对象:表 索引 视图 序列 存储过程 命名规则 :t_标明 v_视图名 f_函数名 见名知意 数据库安全管理 1.防止未授权访问 2.防止安全漏洞不当的数据修改 3. 确保数据只提供给授权用户使用 广义范围:网络安全 .操作系统安全.数据管理系统安全 具体:身份验证

非结构化数据的存储与查询

当今信息化时代充斥着大量的数据.海量数据存储是一个必然的趋势.然而数据如何的存储和查询,尤其是当今非结构化数据的快速增长,对其数据的存储,处理,查询.使得如今的 关系数据库存储带来了巨大的挑战.分布存储技术是云计算的基础,主要研究如何存储.组织和管理数据中心上的大规模海量数据.由于面临的数据规模和用户规模更加庞大,在可扩展性.容错性以及成本控制方面面临着更加严峻的挑战[1]. 对于大量的半结构化数据(semi-structure data)和非结构化数据,对其存储和并发计算以及扩展能力而设计出了

互联网推送服务原理:长连接+心跳机制(MQTT协议)

互联网推送消息的方式很常见,特别是移动互联网上,手机每天都能收到好多推送消息,经过研究发现,这些推送服务的原理都是维护一个长连接(要不不可能达到实时效果),但普通的socket连接对服务器的消耗太大了,所以才会出现像MQTT这种轻量级低消耗的协议来维护长连接,那么要如何维护长连接呢: 在写之前,我们首先了解一下为什么Android维护长连接需要心跳机制,首先我们知道,维护任何一个长连接都需要心跳机制,客户端发送一个心跳给 服务器,服务器给客户端一个心跳应答,这样就形成客户端服务器的一次完整的握手

移动互联网消息推送原理:长连接+心跳机制(MQTT协议)

互联网推送消息的方式很常见,特别是移动互联网上,手机每天都能收到好多推送消息,经过研究发现,这些推送服务的原理都是维护一个长连接(要不不可能达到实时效果),但普通的socket连接对服务器的消耗太大了,所以才会出现像MQTT这种轻量级低消耗的协议来维护长连接,那么要如何维护长连接呢: 在写之前,我们首先了解一下为什么Android维护长连接需要心跳机制,首先我们知道,维护任何一个长连接都需要心跳机制,客户端发送一个心跳给 服务器,服务器给客户端一个心跳应答,这样就形成客户端服务器的一次完整的握手

Oracle 集群心跳及其参数misscount/disktimeout/reboottime

在Oracle RAC中,可以从多个层次,多个不同的机制来检测RAC的健康状况,即可以通过心跳机制以及一定的投票算法来隔离故障.如果检测到某节点失败,则存在故障的节点将会被逐出集群以避免故障节点破坏数据.本文主要描述了Oracle RAC下的几种心跳机制以及心跳参数的调整. 一.OCSSD与CSS    OCSSD是一个管理及提供Cluster Synchronization Services (CSS)服务的Linux或者Unix进程.使用Oracle用户来运行该进程并提供节点成员管理功能,一

为什么基于TCP的应用需要心跳包(TCP keep-alive原理分析)

TCP keep-alive的三个参数 用man命令,可以查看linux的tcp的参数: man 7 tcp 其中keep-alive相关的参数有三个: tcp_keepalive_intvl (integer; default: 75; since Linux 2.4) The number of seconds between TCP keep-alive probes. tcp_keepalive_probes (integer; default: 9; since Linux 2.2)

Android 心跳包心跳连接 如何实现android和服务器长连接呢?推送消息的原理

前言:现在的大多数移动端应用都有实时得到消息的能力,简单来说,有发送消息的主动权和接受消息的被动权.例如:微信,QQ,天气预报等等,相信好处和用户体验相信大家都知道吧. 提出问题:这种功能必须涉及client(客户端)和server(服务器),所以到底client如何和server实现实时连接通讯? 分析问题:这种功能实际上就是数据同步,同时要考虑手机本身.电量.网络流量等等限制因素,所以通常在移动端上有一下两个解决方案:1.一种是定时去server查询数据,通常是使用HTTP协议来访问web服

开源大数据查询分析引擎现状

引言 大数据查询分析是云计算中核心问题之一,自从Google在2006年之前的几篇论文奠定云计算领域基础,尤其是GFS.Map-Reduce.Bigtable被称为云计算底层技术三大基石.GFS.Map-Reduce技术直接支持了Apache Hadoop项目的诞生.Bigtable和Amazon Dynamo直接催生了NoSQL这个崭新的数据库领域,撼动了RDBMS在商用数据库和数据仓库方面几十年的统治性地位.FaceBook的Hive项目是建立在Hadoop上的数据仓库基础构架,提供了一系列

转 互联网推送服务原理:长连接+心跳机制(MQTT协议)

http://blog.csdn.net/zhangzeyuaaa/article/details/39028369 目录(?)[-] 无线移动网络的特点 android系统的推送和IOS的推送有什么区别 推送的实现方式 互联网推送消息的方式很常见,特别是移动互联网上,手机每天都能收到好多推送消息,经过研究发现,这些推送服务的原理都是维护一个长连接(要不不可能达到实时效果),但普通的socket连接对服务器的消耗太大了,所以才会出现像MQTT这种轻量级低消耗的协议来维护长连接,那么要如何维护长连