免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: duanjigang
打印 上一主题 下一主题

讨论一个高性能的查找方法 [复制链接]

论坛徽章:
0
11 [报告]
发表于 2010-11-10 17:56 |只看该作者
你这个要多测试一下,有可能IP地址和端口分布不一样,hash冲突不一样,最终的效果就不一样了。
...
dreamice 发表于 2010-11-10 17:53



    好,哈希算法我再研究怎么能更好,现在是在100个IP范围内随机选取,已经比较集中了。实际的数据可能比较分散。
多谢老江

论坛徽章:
3
金牛座
日期:2014-06-14 22:04:062015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:49:45
12 [报告]
发表于 2010-11-10 18:02 |只看该作者
回复 11# duanjigang


    嗯,通常情况IP分布非常广,可能造成冲突比较严重。
另外,也有一些极端情况,我遇到的,在做了nat的环境,IP数量非常少,这种情况,hash方法可以更简单。

论坛徽章:
0
13 [报告]
发表于 2010-11-11 10:20 |只看该作者
今早看了下,跑一晚上,有时候还是会出现暂时溢出。我只用了三个缓冲区。一个写,一个处理。
看样子得增加缓冲区的个数来平滑读写的瞬间速度差,再测试下是在不能完全处理掉溢出就上多个处理线程

论坛徽章:
3
金牛座
日期:2014-06-14 22:04:062015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:49:45
14 [报告]
发表于 2010-11-11 11:18 |只看该作者
回复 13# duanjigang


    难道是你内存管理出问题了?

论坛徽章:
0
15 [报告]
发表于 2010-11-11 11:24 |只看该作者
仰视你们

论坛徽章:
0
16 [报告]
发表于 2010-11-11 11:38 |只看该作者
回复  duanjigang


    难道是你内存管理出问题了?
dreamice 发表于 2010-11-11 11:18



    没,我现在把每次汇报的最大冲突链长度和最大查找次数打出来,发现还有很大的,不过最多上百万次查找次数在里面时,处理时间也就30几秒。
不知道好几百秒的是怎么引起的,查代码ing.........

论坛徽章:
0
17 [报告]
发表于 2010-11-11 11:40 |只看该作者
我是用N个缓冲区串成一个环形链表,读写线程在链表上转,链表长一点的话,只要处理的平均速度胜过填写速度,就能处理。N小的话,会被短暂处理慢影响丢包

论坛徽章:
3
金牛座
日期:2014-06-14 22:04:062015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:49:45
18 [报告]
发表于 2010-11-11 12:05 |只看该作者
仰视你们
liying_gg 发表于 2010-11-11 11:24



    咋了?鄙视我们

论坛徽章:
0
19 [报告]
发表于 2010-11-11 12:54 |只看该作者
回复 18# dreamice


    是仰视!搞算法很厉害。

论坛徽章:
3
金牛座
日期:2014-06-14 22:04:062015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:49:45
20 [报告]
发表于 2010-11-11 13:16 |只看该作者
回复  dreamice


    是仰视!搞算法很厉害。
liying_gg 发表于 2010-11-11 12:54



    看成鄙视了,吓一跳
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP