`

关于消息实时接收的问题

    博客分类:
  • java
阅读更多
  •   系统有这样一个需求,我在服务器端 写入一条消息发送给用户,记录在Oracle表中-
  • ,客户端怎么能实时响应,也就是说,弹出一个像qq的消息框 ,客户端大概有200来人,且同时在线的,如果客户端每次查询数据库看有没有自己的消息,有就弹出来,这是不是对性能有影响呢,能不能用其他的方式写咯 ,很迷惘

 
分享到:
评论
8 楼 yanical 2010-10-21  
不用查数据库,数据库就当做一个消息的log就行了。
客户端和服务器一直保持连接,因为200人,所以没问题。
服务器有消息就通过连接发出去就ok了。
7 楼 robin_leung 2010-10-21  
comet
6 楼 waywin0512 2010-10-21  
你写消息的时候存入数据库或者应用中。对在线的用户发出消息提示。不在线的用户等他登录的时候查询一下是否有即时消息,有就给予提示。。
我建议还是即时查询数据库,写入消息的时候查一次,用户每次登录的时候查一次,这样就分开了,不会耗多大开销的
5 楼 rekoe.net 2010-10-21  
可以在客户端嵌套一个flash 用flash 做长连接 一直监听后,如果后台有数据 就发给flash  通过flash 再告诉js 然后通知给用户
4 楼 aws 2010-10-20  
这个不需要存入数据库,在Application里存着就行了
然后用ajax轮询或者推模式送到客户端
3 楼 greatghoul 2010-10-20  
在Application中放置一个Map,以及用户标识为键,值为一个消息列表,添加消息时,顺便在列表里面也添加一份,用户每隔一段时间读自己的列表,有东西的话,读一条删除一条。

用户没有上线就不用塞了。

只是个思路而已。
2 楼 navy0168 2010-10-20  
sandzhang 写道
客户端和服务端建立连接,然后有消息的时候主动发送给客户端,客户端收到消息立刻弹出显示

如果不要求非常即时的话也可以客户端不停的请求服务端,看是否有新消息,这种就可以建立在非连接基础上了


如果采用 线程的话,我客户端有几百号人,并且都是8小时在线的,隔几分钟就 连接一次数据库,看有没有记录,这会不会对性能有影响啊,关键就是我 也只能获取服务器端的 数据


1 楼 sandzhang 2010-10-20  
客户端和服务端建立连接,然后有消息的时候主动发送给客户端,客户端收到消息立刻弹出显示

如果不要求非常即时的话也可以客户端不停的请求服务端,看是否有新消息,这种就可以建立在非连接基础上了

相关推荐

    实时接收发送消息(接收消息线程阻塞,发送消息线程唤醒)

    在标题和描述中提到的“实时接收发送消息(接收消息线程阻塞,发送消息线程唤醒)”是一个典型的并发编程问题,涉及到线程管理和通信。以下是对这个主题的详细讲解: 1. **线程与并发**: - 线程是程序执行的最小...

    C#消息队列发送及接收

    接收消息时,我们首先设置队列的接收模式为`PeekLock`,这使得在处理消息时能锁定消息,防止其他接收者获取。`Receive`方法会返回一个`Message`对象,我们可以通过它访问消息内容。处理完消息后,调用`...

    android,Mqtt消息队列,接收发送消息

    以下是对`android,Mqtt消息队列,接收发送消息`这一主题的详细解释: 1. **MQTT协议原理**:MQTT是基于发布/订阅模型的,其中客户端可以作为发布者(发送消息)或订阅者(接收消息)。消息通过主题进行路由,每个...

    kafka 发送和接收消息

    消息中间件kafka 进行消息的分发和接收示例 应用中包含分通道发送和多线程接收

    头歌UDP Ping程序实现-客户端向服务器发送消息并接收消息.txt

    头歌UDP Ping程序实现-客户端向服务器发送消息并接收消息.txt头歌UDP Ping程序实现-客户端向服务器发送消息并接收消息.txt头歌UDP Ping程序实现-客户端向服务器发送消息并接收消息.txt头歌UDP Ping程序实现-客户端向...

    基于Springboot的一个后端服务,用于实时接收chatGPT的消息,并通过websocket的方式实时反馈给前端

    本项目是一个基于Springboot的一个后端服务,用于实时接收chatGPT的消息,并通过websocket的方式实时反馈给前端。本项目还可以助你将GPT机器人集成到钉钉群聊中,通过@机器人进行聊天交互。

    rabbitmq发送&接收消息

    【标题】:“rabbitmq发送&接收消息” 在IT行业中,消息队列(Message Queue)是一种常用的技术,用于处理异步任务、解耦系统组件以及缓解高并发时的系统压力。RabbitMQ是一款开源的消息代理软件,它基于AMQP...

    Spring+ActiveMQ消息队列+前台接收消息

    通过以上步骤,你可以成功地将Spring与ActiveMQ整合,实现后台消息的生产和消费,并在前台接收到这些消息。这种设计模式常用于大型分布式系统,如订单处理、日志收集、任务调度等场景,以提高系统的可靠性和响应速度...

    delphi 接收进程消息机制

    在 Delphi 开发环境中,进程间通信(IPC,Inter-Process Communication)是实现不同进程间交换数据的关键技术...通过对 `PeekMessage`、`PostMessage` 等 API 的熟练运用,可以实现实时监控和接收各种类型数据的目标。

    微信公众平台开发【接收消息】接收普通消息源代码

    小易Smalle博文微信公众平台开发【接收消息】接收普通消息http://blog.csdn.net/oldinaction/article/details/48000583所用示例源代码

    C#微信企业号接收和发送消息

    在本文中,我们将深入探讨如何使用C#编程语言与微信企业号进行交互,实现消息的接收和发送。微信企业号是一种为企业用户提供内部通讯和管理工具的服务,它允许开发者通过API接口进行定制化开发,实现自动化的工作...

    Android仿QQ消息通知栏新消息实时更新效果

    在Android应用开发中,实现类似QQ的消息通知栏新消息实时更新效果是一项常见的需求。这个功能不仅能够让用户在不打开应用的情况下获取到新消息,还能提供便捷的交互方式,如一键清除所有新消息。下面我们将详细探讨...

    一个VB6.0适用的异步消息发送接收处理模块.rar

    一个应用程序级的VB6.0消息处理模块,By 飞雪紫翼。此模块可以实现在整个应用程序中的异步消息传送,开发这个模块的本意是... VB消息接收窗口主要接收[MsgTypeNetWork]类型的消息,并在收到此类消息时显示一个MsgBox。

    socket通信以及发送消息接收消息

    包含socket简历通信连接, socket发送消息,接收消息。

    发送与接收消息(sendmessage)

    本文将详细解析标题“发送与接收消息(sendmessage)”所涉及的知识点,以及如何通过`FindWindow`找到窗口句柄,并结合`SendMessage`实现消息的发送和接收。 `SendMessage`函数的基本语法如下: ```cpp LRESULT ...

    C#微信企业号接收和发送消息.rar

    考虑到微信消息的实时性,建议使用异步编程模型来处理消息,以提高系统的响应速度。C#从.NET 4.5开始引入了async/await关键字,使得异步编程变得更加简洁和高效。 8. 错误处理和调试 在开发过程中,确保对可能出现...

    MFC发送消息与接收消息的例子

    在Windows编程中,MFC(Microsoft Foundation Classes)库提供了一种高效的方式来处理Windows API,包括发送和接收消息。本文将详细讲解如何利用MFC中的`PostMessage`函数来实现一个发送和接收消息的实例。 首先,...

    STM32串口空闲中断DMA接收不定长数据消息队列

    在本文中,我们将深入探讨如何在STM32微控制器中实现串口空闲中断与DMA(直接内存访问)相结合,以接收不定长的数据,并利用FreeRTOS操作系统中的消息队列进行处理。STM32系列是基于ARM Cortex-M内核的微控制器,...

    PB与其它应用发送和接收消息

    PB与其它应用发送和接收消息以及如何在自定义事件中接收

    微信实现消息发送与接收

    微信实现消息发送与接收的demo

Global site tag (gtag.js) - Google Analytics