java如何实现html的实时采集,给个思路。谢了!
程序员文章站
2024-04-03 20:24:46
...
如题!
html页面会一直保持连接状态,我这边不是指的Keep-Alive,
Keep-Alive是需要后继请求的。
当html页面有更新时,不用后继请求并拿到更新数据过滤后入库。
类似socket!
当客户端发出信息时,服务器才会把这个信息输出,而不是向客户端无限循环状态。
如果php也能做到,php同时也给个思路。谢了!
html页面会一直保持连接状态,我这边不是指的Keep-Alive,
Keep-Alive是需要后继请求的。
当html页面有更新时,不用后继请求并拿到更新数据过滤后入库。
类似socket!
当客户端发出信息时,服务器才会把这个信息输出,而不是向客户端无限循环状态。
如果php也能做到,php同时也给个思路。谢了!
回复内容:
如题!
html页面会一直保持连接状态,我这边不是指的Keep-Alive,
Keep-Alive是需要后继请求的。
当html页面有更新时,不用后继请求并拿到更新数据过滤后入库。
类似socket!
当客户端发出信息时,服务器才会把这个信息输出,而不是向客户端无限循环状态。
如果php也能做到,php同时也给个思路。谢了!
tomcat7 可以websocket
(当然浏览器也要支持)
websocket
条件限制太多。。
所以你可以去查找下长轮询的方案。
长轮询简单起来说,就是发起一次ajax请求,如果服务器没有通知,就暂时不返回,一直到有数据或者连接超时。
一旦连接超时或者数据过来,处理完后马上发起下一次请求。
长轮询对于普通轮询的优点是不需要频繁建立连接,因为建立连接是非常耗费资源的,但同时又能达到实时的目的,而且对于浏览器不像websocket一样有特殊要求,所以是比较折衷的方案。
新浪微博在用长轮询的方案。
PHP应该很难做,java没啥问题。
可以通过实现Websocket实现你这个需求,后端往前端推。
Java的话,使用Netty来实现websocket更加简单。类似这样https://github.com/wjl327/SomeJava/tree/master/netty-5.x/src/main/java/com/wjl/websocket
看过socket.io的实现 用flash实现兼容 也是拼了