如何用文件做大容量缓冲区,实现同时读写?(类似生产者消费者) 最近做一个网络入侵检测系统,模块间需要传递的数据量很大,我们觉得应当使用文件做为缓冲但需要实现同时的高效读写,还请高人指点下!谢谢了! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 同时读写的缓冲要不就放在内存,要不就放在不同的文件。可以这样:整个读写包括写线程和读线程,写线程每分钟新建一个文件(如200912050957.buffer.tmp),将缓冲写进去,写完之后将其重命名(如200912050957.buffer);读线程则读取创建最早的已写完的文件(如 .buffer 文件),这样就可以实现用文件作为缓冲。当然还有一些细节比如应用重新启动后如何恢复读写等。 如果是linux,可以写在内核态,效率很高的。linux的netfilter机制就可以实现入侵检测。 那就有两个问题:1、磁盘读写速度能不能满足 200M/s?2、CPU 能不能处理的过来?如果其中一个做不到,那就要升级硬件,或者分流到多台机器去处理。 编译java源文件时,提示软件包找不到 Swing关闭面板的问题 为什么我的DES加密解密的结果不一样? string的lenth()函数为什么中文和英文字符返回的结果一样? Eclipse插件SQLExplorer连接mysql数据库,统计表中数据后,中文字段乱嘛! 怎样把 "20050102"字符串转换成 格式为yyyyMMdd的日期 ,下面的代码为什么不行? 高手帮忙推荐一下,哪个UML插件for eclipse好用,而且免费,不胜感激 大虾快来(100分) 为什么我的水平提高不呢? 关于radio的问题! 急求Java系统学习书籍 调用windows下的cmd指令运行.class文件
linux的netfilter机制就可以实现入侵检测。
1、磁盘读写速度能不能满足 200M/s?
2、CPU 能不能处理的过来?如果其中一个做不到,那就要升级硬件,或者分流到多台机器去处理。