`

无聊的优化

阅读更多

Knuth说过盲目的优化是罪恶的根源,这话一点不假,因为经理说“你这个动态返回太慢,要改进。” 于是开始了这两天

的优化历程。

 

  东西很简单,将一个地区分块,按照octree,使用16格分块,总共5层。建立索引。每次导入的线条都预生成

索引。 所以我要一个索引器。

 

   这个索引器没什么特别,普通的递归而已。 到最后开始存放索引的时候,问题出现了,:这个东西有些大,变成

文件有276m之大。在每次网络传输都占用了大量的时间。我的索引数据一开始存放在tokyo cabinet上。(因为

以前的测试结果还令人满意)。 可惜这么多的数据序列化和传输占用了大量时间,还是慢。于是想到了并行。

 

用executor将一些关键的任务分解,嗯,,似乎快了。快了至少有两倍。好像也达到目标了。

 

今天下午想想,有些不爽,想起以前曾经用过的db4o.于是拿出来试一下,不用并行,结果大跌眼镜:居然比优化过的方案

还快两倍。 仔细想想发现之前的优化极其无聊:这个索引基本上每个tenant只需要一个,用不着每次都从server拉下来。

再优化,网络的瓶颈还是摆在那里的。

 

不过并行计算还是有用的,中间有一步过滤使用executor在我的 dual core 2.5g上快了大约两倍。如果cores数量

上去,还可以更快。 我还考虑以后用scala的actor来代替现在的 executor方式重新实现一个。

分享到:
评论

相关推荐

    无聊建站系统源码下载

    【无聊建站系统源码解析】 “无聊建站系统”是一个基于Java开发的免费内容管理系统(CMS),专为快速、高效且安全地搭建各类...在实际使用中,深入学习这些技术将有助于你更好地定制和优化系统,满足个性化的需求。

    完整批处理 配置自动优化电脑 优化系统服务

    ::Distributed Transaction coordinator-无聊的东西。 sc stop msdtc sc config msdtc start= disabled ::DNS Client-DNS解析服务。。无聊~~ sc stop dnscache sc config dnscache start= disabled ::...

    下载煎蛋无聊图--简单Web浏览

    【标题】"下载煎蛋无聊图--简单Web浏览"是一个关于如何实现一个简单的网页浏览功能,特别是针对...通过阅读源码和理解整个工作流程,我们可以学习到如何构建类似的功能,并且可能还会发现一些优化和提升效率的技巧。

    udt无聊通信java实现修正

    这个"udt无聊通信java实现修正"项目,就是针对UDT的Java实现进行优化和修复的工作。 首先,原始的UDT可能存在一些问题或者不适应Java编程环境的地方,修正这部分代码是为了提高其在Java平台上的稳定性和效率。这...

    无聊的小例子-20170522

    8. **日志文件**:记录应用程序运行时的信息,帮助调试和优化。 由于压缩包中只提到一个名为“TEST”的文件,它可能是一个单独的Java源代码文件,一个测试文件,或者是一个包含上述多种类型的文件夹。如果是源代码...

    企业通过实施 ChatGPT 优化其运作方式的五种方法

    至少可以说,筛选大量数据以制作报告可能很繁琐、枯燥和无聊。但是通过正确的提示和输入,ChatGPT 能够识别经常逃脱人眼的数据趋势。探索性数据分析(EDA)可以通过输入一系列提示和命令在ChatGPT上有效地进行,从而...

    无聊发过ASP做的找茬游戏

    在这个"无聊发过ASP做的找茬游戏"中,我们可以探讨ASP技术在游戏开发中的应用,尤其是找茬游戏这一类型。 找茬游戏是一种常见的休闲娱乐游戏,玩家需要在两张看似相同的图片中找出细微差别。ASP可以用来实现这种...

    sql优化技术

    1. **查询优化**:优化查询语句是最基础的SQL优化手段。避免使用复杂的子查询,尽可能使用JOIN操作替代;减少SELECT字段数量,只获取必要的数据;使用索引提高查询效率。 2. **索引优化**:索引能加快数据检索速度...

    vb程序设计之无聊信息导入

    在VB(Visual Basic)编程环境中,我们经常需要处理与Excel相关的任务,比如“无聊信息导入”这个场景可能指的是从Excel文件中读取数据并导入到应用程序中。在VB中,可以利用Microsoft Excel Object Library来实现...

    mysql主从设计的原理及亿级数据优化

    2. **查询优化**:避免全表扫描,使用EXPLAIN分析查询执行计划,优化JOIN操作,减少子查询,以及合理使用LIMIT和ORDER BY。 3. **存储引擎优化**:InnoDB支持事务和行级锁定,适用于高并发环境;MyISAM适合只读或写...

    基于网络学习社区的教学资源优化与应用研调查问卷Word文档.doc

    **情感体验与原因**:这些问题旨在挖掘学生在学习过程中的心理状态,如“轻松愉快”、“无聊”或“紧张”,并探究这些感受背后的原因,例如学习资源的丰富性、学习内容的理解难度、与同学的交流机会等。 7. **学习...

    无聊时的小程序- -:图像灰度化处理

    标题中的“无聊时的小程序- -:图像灰度化处理”指的是一个小型的计算机程序,其主要功能是将彩色图像转换为灰度图像。在数字图像处理领域,灰度化是一种常见的预处理步骤,用于简化图像,降低色彩复杂性,以便进行...

    通过信息化优化课堂教学的调查问卷.doc

    5. 课堂气氛与能力培养:课堂气氛的描述(自由活跃、科学严谨有序、无聊沉闷、散漫无序)影响着学生的学习体验和效果。教师应创造一个既有利于知识传授又能培养分析解决问题能力的环境。 6. 教学效果与信息素养:...

    无聊到玩画板-易语言

    《无聊到玩画板-易语言》是一款基于易语言编程环境开发的应用程序,它具有趣味性和实用性,可以作为加载过程中的动态展示,增加用户等待时的互动体验。易语言是一种面向对象的、易于学习和使用的中文编程语言,旨在...

    高并发内存池未进行性能优化前的代码

    高并发内存池未进行性能优化前的代码

    无聊写的base32编码

    Base32编码是一种将二进制数据转换为可打印字符的编码系统,它与Base64类似...通过分析`base32.c`和`main.c`的代码,我们可以深入理解Base32编码的内部工作原理,并可能发现优化编码效率的方法或者解决实际问题的策略。

    无聊时候写的一个计算魔力宝贝制造用料的小工具;

    总的来说,这个“无聊时候写的一个计算魔力宝贝制造用料的小工具”是一个非常实用的游戏辅助软件,它借助.NET Framework 2.5的技术基础,为魔力宝贝玩家提供了便捷的制造材料计算服务。在享受游戏的同时,也大大提高...

    Java Web练手做的一个无聊网页小游戏,持续完善中.zip

    【标题】"Java Web练手做的一个无聊网页小游戏,持续完善中.zip" 是一个基于Java Web技术开发的小游戏项目,作者正在进行不断的优化和更新。这个项目对于初学者来说,是极好的实践平台,可以帮助他们提升Java Web...

    无聊的盒子前端:BoredBox Frontend

    它在生产模式下正确捆绑了React,并优化了构建以获得最佳性能。 最小化构建,文件名包含哈希。 您的应用已准备好进行部署! 有关更多信息,请参见有关的部分。yarn eject 注意:这是单向操作。 eject ,您将无法...

    我很无聊:是

    Svelte是一个现代的前端框架,它也基于JavaScript,但通过编译优化提供了更快的性能。 【压缩包子文件的文件名称列表】:"Am-I-Bored-main"可能是一个项目的主分支或初始版本,它包含项目的所有源代码、配置文件、...

Global site tag (gtag.js) - Google Analytics