由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Programming版 - client往server发送不同类型数据怎么处理?
相关主题
Fair allocation的简单实现.net mvc & web api 架构 求建议和意见??
CORBA把web service+client 包装成一个桌面GUI 软件容易吗?
Zhaoce给我们讲讲CORBA和中间件吧ssh tunnel加密的问题
java里的corba是干嘛的 还有人用么?大部份 design pattern 是不需要的
有没有人觉得restful被高估了scala ts 的复杂
Python at Netflixjs 的typeof基本上是broken
谁给菜鸟科普一下?client side MVC如何从另一个IP访问自己的MySQL Server数据库?
akka stream选什么http client?怎么用python把这个data读进去,变成dict结构
相关话题的讨论汇总
话题: server话题: chat话题: client话题: user2话题: rmi
进入Programming版参与讨论
1 (共1页)
y**b
发帖数: 10166
1
java程序, client可以登录、聊天、画图,这些信息要送到server,
(server验证帐号,以及把聊天文本或绘出的图像发送给其他clients)。
1.请问client端这些不同类型、不同时段、长度随时变化的数据,应该
用什么格式的stream发送呢?
2.server一个while循环怎么接收、识别这些不同类型的数据呢?
3.client也要接收数据,while循环岂不会造成blocked?
4.一对sockets之间,能不能某个时段传一种stream格式,另一个时段
传另一种stream格式?
5.比如我一边画图(每画一笔就传送出去,其他用户能收到),一边接收
对方聊天文本,一定需要两个线程吗?这两个同时运行的线程能否同时
与server进行传输?
h***i
发帖数: 1970
2
用Ice或Corba吧

【在 y**b 的大作中提到】
: java程序, client可以登录、聊天、画图,这些信息要送到server,
: (server验证帐号,以及把聊天文本或绘出的图像发送给其他clients)。
: 1.请问client端这些不同类型、不同时段、长度随时变化的数据,应该
: 用什么格式的stream发送呢?
: 2.server一个while循环怎么接收、识别这些不同类型的数据呢?
: 3.client也要接收数据,while循环岂不会造成blocked?
: 4.一对sockets之间,能不能某个时段传一种stream格式,另一个时段
: 传另一种stream格式?
: 5.比如我一边画图(每画一笔就传送出去,其他用户能收到),一边接收
: 对方聊天文本,一定需要两个线程吗?这两个同时运行的线程能否同时

g*****g
发帖数: 34805
3
最简单的方法是不要做任何底层的序列化反序列化。
而是在server和每个client上起一个RMI Server,
直接远程调方法就得。
比如user1跟user2聊天,user1吊server的
chat(user2, msg)
server收到后,直接在user2的RMI上调用chat(msg)
user2显示即可。
画图啥的,调另一个方法名就是。
如果你非要用raw socket,简单的你就对没一种操作定义一个
可序列化的对象。比如Chat和Draw,然后在接收端
Object o = is.readObject();
if(o instanceof Chat) {
Chat data = (Chat)o;
chat(data.from, data.to, data.message);
} else if(o instanceof Draw) {
//deserialize Draw and call draw function
}
如果你做的是真实项目,而用户不在局域网内。RMI因为
firewall的原因,在client端起是不可行的。你做的

【在 y**b 的大作中提到】
: java程序, client可以登录、聊天、画图,这些信息要送到server,
: (server验证帐号,以及把聊天文本或绘出的图像发送给其他clients)。
: 1.请问client端这些不同类型、不同时段、长度随时变化的数据,应该
: 用什么格式的stream发送呢?
: 2.server一个while循环怎么接收、识别这些不同类型的数据呢?
: 3.client也要接收数据,while循环岂不会造成blocked?
: 4.一对sockets之间,能不能某个时段传一种stream格式,另一个时段
: 传另一种stream格式?
: 5.比如我一边画图(每画一笔就传送出去,其他用户能收到),一边接收
: 对方聊天文本,一定需要两个线程吗?这两个同时运行的线程能否同时

y**b
发帖数: 10166
4
多谢。java才看了两个星期,这个RMI只有个概念,还不会用,似乎很方便。
第二个方法我也想到了,虽然有点繁琐。
原意是做一个小画板,一个用户每画一笔其他用户都能看见,
一个用户画的时候其他用户不能画(mutex)。

【在 g*****g 的大作中提到】
: 最简单的方法是不要做任何底层的序列化反序列化。
: 而是在server和每个client上起一个RMI Server,
: 直接远程调方法就得。
: 比如user1跟user2聊天,user1吊server的
: chat(user2, msg)
: server收到后,直接在user2的RMI上调用chat(msg)
: user2显示即可。
: 画图啥的,调另一个方法名就是。
: 如果你非要用raw socket,简单的你就对没一种操作定义一个
: 可序列化的对象。比如Chat和Draw,然后在接收端

f*****Q
发帖数: 1912
5
俺当年流行xmlrpc,不知道现在还流行不。
g*****g
发帖数: 34805
6
不流行,这年头流行RESTful, hehe

【在 f*****Q 的大作中提到】
: 俺当年流行xmlrpc,不知道现在还流行不。
f*****Q
发帖数: 1912
7
狗一个。RESTful...

【在 g*****g 的大作中提到】
: 不流行,这年头流行RESTful, hehe
1 (共1页)
进入Programming版参与讨论
相关主题
怎么用python把这个data读进去,变成dict结构有没有人觉得restful被高估了
请教 cross two website Authentication 问题Python at Netflix
Help: DotNet Tcp Client/Server (转载)谁给菜鸟科普一下?client side MVC
java大概还有多久才能和C++一样快呢?akka stream选什么http client?
Fair allocation的简单实现.net mvc & web api 架构 求建议和意见??
CORBA把web service+client 包装成一个桌面GUI 软件容易吗?
Zhaoce给我们讲讲CORBA和中间件吧ssh tunnel加密的问题
java里的corba是干嘛的 还有人用么?大部份 design pattern 是不需要的
相关话题的讨论汇总
话题: server话题: chat话题: client话题: user2话题: rmi