0 0

java 事件处理 队列 请教!3

      最近发现工程里面有一些重要的操作,一次请求要做很多事情,但是用户不需要等待所有的都完成再响应。如果通过后台线程去执行部分任务的话,如果服务器down掉,或者更新过程中重启的话,都会丢失这些任务。不知道大家在实际的工作中,是怎么处理这个问题的?我之前考虑将所有的任务当成放到一个队列里面,然后让所有的线程执行这些任务,不过问题一样,不知道怎么把这些任务持久化,放到mysql里面效率有点低。望大家多给写建议!

2011年12月22日 13:30

2个答案 按时间排序 按投票排序

0 0

补充:开源的MQ产品有ActiveMQ等比较常用

2011年12月22日 17:04
0 0

可以采用MQ,请求线程把任务包装成消息发送到MQ服务器后返回,MQ是进行存储的,只要消息发送成功,任务就不会丢失。
处理线程(池)是MQ的消费者,接收到消息后,解析成任务,执行。

2011年12月22日 17:03

相关推荐

    JAVA-GAME-SOURCE-CODE.rar_Java Game code

    3. **事件处理**:游戏通常涉及用户输入,如键盘和鼠标事件。Java提供了AWT和Swing库来处理这些事件,源代码可能会包含监听器(Listener)的实现。 4. **图形绘制**:在Java中,游戏画面通常是通过Java的图形库如...

    Java期末考试试卷及相关解释

    首先,Java基础知识部分可能包括语法特性,如变量声明、数据类型、运算符、流程控制(如if语句、switch语句、循环结构)、异常处理等。考生需要熟悉这些基本概念并能熟练编写相关代码。 其次,面向对象编程是Java的...

    Java面试考核目标.docx

    - **考核点**:掌握至少一种主流编程语言(如Java),熟悉其语法特点、数据结构、异常处理机制等。 - **考核基准**: - 初级:能够理解基本语法并编写简单的程序。 - 中级:能够熟练运用面向对象的思想进行编程...

    SL257lab实验答案

    源码通常是用编程语言如C、C++、Java或Python编写的,用于解决特定的计算问题或者实现特定的算法。对于初学者而言,阅读和理解这些代码能够帮助他们提高编程技巧,学习如何有效地组织代码结构,以及如何调试和优化...

    MQClient写的成品逻辑

    7. **错误处理和重试机制**:确保消息在失败时能够被正确处理,可能需要实现重试策略和死信队列。 8. **性能优化**:考虑消息批量发送、预取消息和缓冲策略来提高效率。 9. **安全性**:设置权限控制和身份验证,...

    QQ代码简单的

    4. **数据结构与算法**:为了高效地存储和检索用户信息、聊天记录等数据,需要理解并运用合适的数据结构(如链表、树、队列、哈希表等)和算法(如排序、搜索等)。 5. **安全与隐私保护**:QQ程序需要考虑用户的...

    深大课件_深圳大学_pickgne_

    在这些课件中,可能会讲解变量、控制结构(如循环和条件语句)、函数、类和对象、模块化编程、错误处理、调试技巧等基础知识。对于进阶内容,可能涉及数据结构(如数组、链表、栈、队列、树、图)和算法(排序、搜索...

    基础实验例程.rar

    1. **编程语言基础**:压缩包内可能包含了多种编程语言的基础实验,如Python、Java、C++或JavaScript。这些实验可能涵盖变量、数据类型、控制结构(如if语句、循环)、函数定义与调用等基础知识。 2. **算法与数据...

    软件设计师08年上半年试题

    2. **数据结构与算法**:数据结构的学习包括链表、栈、队列、树、图等,以及基本的排序和查找算法,如冒泡排序、快速排序、二分查找等。 3. **软件工程**:软件开发过程模型(如瀑布模型、敏捷开发)、需求分析、...

Global site tag (gtag.js) - Google Analytics