作者archerlin ()
看板java
标题Re: [问题] 传输档案大小跟记忆体的关系
时间Sat Jul 7 20:56:35 2007
※ 引述《[email protected] (IT工人)》之铭言:
: ※ 引述《[email protected] (╮(╯3╰)╭)》之铭言:
: : 请问一下
: : 一个java的网路程式
: : 如果要处理传输100M的档案
: : 是不是表示要给jvm (-Xmx) 至少100M的记忆体?
不一定,看你怎麽写的,不用设也能传成功,试试看便知。
只不过先allocate 100M "好像"会比较快传完吧...
: : 另外 如果给jvm的记忆体大小超过电脑的实体记忆体大小
: : jvm与os之间会自行以虚拟记忆体等其他方式达成吗?
是的,但这部分主要是看OS的技术,通常都会自己吃SWAP
(不过这部分我只有在Linux上测确定会自己吃SWAP,Windows不确定...)
: : 谢谢
: 可以收下来,就先存下来哦...
: 全部接完再存的话,就 memory 就要比较大
: 先存在 file 中吧
是阿
我比较喜欢把资讯存放的Object直接做Serialization後直接丢
只不过java在传送大量的档案还是很没效率 (应该是我不会用...)
例如我需要一次传个4G、6G的XML档案过去,JAVA常常就给我丢IO Exception了
可能我要再多研究Java NIO这一块吧,看有没有比较好的解决方案
现阶段的作法是......
写个cron job (crontab)定时定期用rsync把档案给送过去 XD
用rsync的好处除了快以外,由於他只同步档案彼此之间不同的部分内容
我那4G每次大概有一半是重复的吧,所以又更省时省力了,哈哈
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.31.168.236