❶ 要用java做个C/S模式的多客户端的小程序,求问怎么在服务器端实现消息的转发
方法一: 客户端需要登录 用户发送的消息 后台自动在最前面加上#要接收消息的用户的名字# 在后台解析
方法二: 每个用户(线程)在产生的时候 多产生一个随机数(可以用synchronized new Date().getTime()),叫做ThreadId 然后制作一个线程的Map,key是ThreadId,value是该Thread
❷ 怎么实现服务器给android客户端主动推送消息
采用MQTT协议实现Android推送功能是一种解决方案。MQTT是一个轻量级的消息发布/订阅协议,是实现基于手机客户端的消息推送服务器的理想解决方案。
常见的解决方案实现原理:
1、轮询(Pull)方式:客户端定时向服务器发送询问消息,一旦服务器有变化则立即同步消息。
2、SMS(Push)方式:通过拦截SMS消息并且解析消息内容来了解服务器的命令,但这种方式一般用户在经济上很难承受。
3、持久连接(Push)方式:客户端和服务器之间建立长久连接,这样就可以实现消息的及时行和实时性。
(2)服务器如何高效消息转发扩展阅读:
推送消息注意事项:
1、支持第三方推送内容,是要客户端和服务器都支持的,客户端和服务器都导入推送SDK。
2、服务器推送内容,可以精确指定推送时间,推送的具体接收人,用户群,位置。
3、即推送的维度可以使时间,位置,人群。
4、极光使用了两种不同的通知方式,一种是推送通知,一种是推送消息。
5、如果要使用androidpn,则还需要做大量的工作,需要理解XMPP协议、理解Androidpn的实现机制,需要调试内部存在的BUG。
参考资料来源:网络-服务器
参考资料来源:网络-Android客户端
参考资料来源:网络-信息推送
❸ 怎样实现服务器间转发网站内容,类似代理
dnspod 或者可以用代码直接跳转到2号机
❹ java如何通过服务端转发消息实现客户端相互发送消息啊
客户端随机个数据端口(建立监听),登录的时候传到服务端,保存在数据库或缓存中;消息来的时候就向该该端口发送数据。
❺ 如何实现Netty框架中服务器端的消息推送
通过客户端是嵌入式编程,通过自定义的tcp通信协议进行连接的,这样就可以实现消息推送。现在市面上的消息推送软件有很多,但是相比较来说,深圳极光的就不错,功能也是有很多的,具体功能如下:❻ 如何实现消息推送功能
?可以用第三方软件极光推送来实现。对于定制化需求较强的,或者想拥有自己推送平台的开发者,极光提供全功能的私有云方案。❼ netty服务器在接收消息后,怎么向另一台服务器传递消息
第一种,netty服务器接收到消息后,在channelRead方法里可以在起一个客户端,通过这个客户端向另一台服务器传递消息。第二种,创建一个消息中转的类,这个类可以接收消息,然后创建一个netty客户端再将消息中转类的消息传递给另一台服务器。两种都可以,只是第一种是内置客户端,个人觉得第二种更灵活,不过我在做的时候采用的是第一种方法。
❽ 服务器怎么把信息精准发送到指定电脑
楼上各位说得都对,再加上端口(即程序)答案就完美了!
因为大部分电脑的IP地址都是随时动态变化的,服务器和用户都不知道也感觉不到,这个时候就需要客户端电脑上的程序主动连接服务器,才能进行通信。
❾ SMTP是如何如何转发邮件的呢
电子邮件在Internet上发送和接收的原理可以很形象地用我们日常生活中邮寄包裹来形容:当我们要寄一个包裹时,我们首先要找到任何一个有这项业务的邮局,在填写完收件人姓名、地址等等之后包裹就寄出而到了收件人所在地的邮局,那么对方取包裹的时候就必须去这个邮局才能取出。同样的,当我们发送电子邮件时,这封邮件是由邮件发送服务器(任何一个都可以)发出,并根据收信人的地址判断对方的邮件接收服务器而将这封信发送到该服务器上,收信人要收取邮件也只能访问这个服务器才能完成。
1. 电子邮件的发送
SMTP是维护传输秩序、规定邮件服务器之间进行哪些工作的协议,它的目标是可靠、高效地传送电子邮件。SMTP独立于传送子系统,并且能够接力传送邮件。
SMTP基于以下的通信模型:根据用户的邮件请求,发送方SMTP建立与接收方SMTP之间的双向通道。接收方SMTP可以是最终接收者,也可以是中间传送者。发送方SMTP产生并发送SMTP命令,接收方SMTP向发送方SMTP返回响应信息。
连接建立后,发送方SMTP发送MAIL命令指明发信人,如果接收方SMTP认可,则返回OK应答。发送方SMTP再发送RCPT命令指明收信人,如果接收方SMTP也认可,则再次返回OK应答;否则将给予拒绝应答(但不中止整个邮件的发送操作)。当有多个收信人时,双方将如此重复多次。这一过程结束后,发送方SMTP开始发送邮件内容,并以一个特别序列作为终止。如果接收方SMTP成功处理了邮件,则返回OK应答。
对于需要接力转发的情况,如果一个SMTP服务器接受了转发任务,但后来却发现由于转发路径不正确或者其他原因无法发送该邮件,那么它必须发送一个“邮件无法递送”的消息给最初发送该信的SMTP服务器。为防止因该消息可能发送失败而导致报错消息在两台SMTP服务器之间循环发送的情况,可以将该消息的回退路径置空。
2. 电子邮件的接收
电子邮件协议第3版本(POP3)
要在因特网的一个比较小的节点上维护一个消息传输系统(MTS,Message Transport System)是不现实的。例如,一台工作站可能没有足够的资源允许SMTP服务器及相关的本地邮件传送系统驻留且持续运行。同样的,要求一台个人计算机长时间连接在IP网络上的开销也是巨大的,有时甚至是做不到的。尽管如此,允许在这样小的节点上管理邮件常常是很有用的,并且它们通常能够支持一个可以用来管理邮件的用户代理。为满足这一需要,可以让那些能够支持MTS的节点为这些小节点提供邮件存储功能。POP3就是用于提供这样一种实用的方式来动态访问存储在邮件服务器上的电子邮件的。一般来说,就是指允许用户主机连接到服务器上,以取回那些服务器为它暂存的邮件。POP3不提供对邮件更强大的管理功能,通常在邮件被下载后就被删除。更多的管理功能则由IMAP4来实现。
邮件服务器通过侦听TCP的110端口开始POP3服务。当用户主机需要使用POP3服务时,就与服务器主机建立TCP连接。当连接建立后,服务器发送一个表示已准备好的确认消息,然后双方交替发送命令和响应,以取得邮件,这一过程一直持续到连接终止。一条POP3指令由一个与大小写无关的命令和一些参数组成。命令和参数都使用可打印的ASCII字符,中间用空格隔开。命令一般为3~4个字母,而参数却可以长达40个字符。
因特网报文访问协议第4版本(IMAP4)
IMAP4提供了在远程邮件服务器上管理邮件的手段,它能为用户提供有选择地从邮件服务器接收邮件、基于服务器的信息处理和共享信箱等功能。IMAP4使用户可以在邮件服务器上建立任意层次结构的保存邮件的文件夹,并且可以灵活地在文件夹之间移动邮件,随心所欲地组织自己的信箱,而POP3只能在本地依靠用户代理的支持来实现这些功能。如果用户代理支持,那么IMAP4甚至还可以实现选择性下载附件的功能,假设一封电子邮件中含有5个附件,用户可以选择下载其中的2个,而不是所有。
与POP3类似,IMAP4仅提供面向用户的邮件收发服务。邮件在因特网上的收发还是依靠SMTP服务器来完成。
[电子邮件地址的构成]
电子邮件地址的格式由三部分组成。第一部分“USER”代表用户信箱的账号,对于同一个邮件接收服务器来说,这个账号必须是唯一的;第二部分“@”是分隔符;第三部分是用户信箱的邮件接收服务器域名,用以标志其所在的位置。