准备开发一个给各个部门发送消息的功能,请问大家用什么技术实现最好

crazy_boom 2022-06-28 22:58:28

d7或者xe10.3.3

想要实现的功能。总部选择各个部门 ,在消息框里 填写要发送的消息。点击发送后(可以选择 时间点发送 比如10分钟后 20分钟后)。消息发送后

各个部门的客户端程序上会有消息气泡显示。如果如果部门人员点击看了消息 和没看消息的 。总部都有通知反馈。都会有统计 这个消息哪个部门看了 哪个部门没有看到。  开始我是准备 发消息都写入到数据库里,但是考虑如果客户端都去定时去轮数据库 感觉对服务器的数据库压力加大了。所以考虑

别的方法。 

...全文
103 9 打赏 收藏 举报
写回复
9 条回复
切换为时间正序
请发表友善的回复…
发表回复

用socket

  • 打赏
  • 举报
回复
w000111 07-06

钉钉就是这样用的,

  • 打赏
  • 举报
回复
hj8090 06-29

如果要像QQ那样的即时通讯,就用ClientSocket(客户端)+ServerSocket(服务端),两端都自己写,服务端要难点(多线程+服务程序);
简单点就用数据库查询,优点是省了服务端的开发,而且相当稳定,如每隔1分钟查询一次,然后断开连接,没多大压力吧。

  • 打赏
  • 举报
回复
@hj8090 300多个终端 都每隔1分钟查询一次 服务器压力没有吗
  • 举报
回复
hj8090 06-30
@crazy_boom 适当延迟点时间间隔就可以了。这是最快速的方法。
  • 举报
回复
tanqth 06-29

简单方法就是弄一个服务器,各客户端连接到服务器,各消息都通过服务器中转。
再复杂一点,还是需要服务器,各客户端开放自己的通讯服务端口,服务器记录各客户端IP、端口,然后各客户端可以直接完成通讯。

然后,还有一种MQTT,他实际是一个消息服务器的。

  • 打赏
  • 举报
回复

这相当于即时通讯软件的一部分功能了,需要加一个服务器(业务量不大的话不需要物理上的服务器,只需要在你们现有的服务器上运行一个服务端软件即可),客户端启动的时候连接到服务端,这样服务端有消息之后可以直接推送给特定客户端,不需要客户端去轮询服务器。

  • 打赏
  • 举报
回复

不建议开发这种鸡肋功能(如果是高管要求的除外)。
如果要发送的消息是正式的,一般都由邮件群发。
如果消息不是正式的,大多会被忽略掉,或者拉个微信群就可以做到。

  • 打赏
  • 举报
回复
@墨梅无痕 拉个微信群发送的消息 能知道哪些人看了 哪些人没看吗
  • 举报
回复
相关推荐
发帖
Delphi

5124

社区成员

Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
帖子事件
创建了帖子
2022-06-28 22:58
社区公告
暂无公告