小编Gra*_*ant的帖子

在性能开始降低之前,MySQL数据库有多大

MySQL数据库在什么时候开始失去性能?

  • 物理数据库大小是否重要?
  • 记录数量是否重要?
  • 任何性能下降是线性还是指数?

我有一个我认为是一个大型数据库,大约有15M的记录,占用了近2GB.基于这些数字,我是否有动力清理数据,或者我是否可以安全地继续扩展数年?

mysql database database-performance

292
推荐指数
12
解决办法
17万
查看次数

如何跟踪文件下载

我有一个在flash播放器中播放mp3的网站.如果用户点击"播放",则Flash播放器会自动下载并开始播放.

有没有一种简单的方法可以跟踪特定歌曲片段(或任何二进制文件)的下载次数?


播放链接是指向实际mp3文件的链接还是弹出播放器的一些javascript代码?

如果是后者,您可以轻松地在其中添加自己的日志记录代码以跟踪其命中数.

如果是前者,您将需要能够跟踪Web服务器日志本身并进行区分的内容.我的托管计划附带webalizer,它做得很好.

这是javascript代码,所以答案.

但是,知道如何使用其他方法跟踪下载(没有切换主机)会很高兴.

php apache logging analytics download

76
推荐指数
6
解决办法
2万
查看次数

合理优化的图表缩放

我需要制作一个具有优化的y轴最大值的图表.

我制作图表的当前方法只是使用所有图形的最大值,然后将其除以10,并将其用作网格线.我没有写.

更新注意:这些图表已更改.一旦我修复了代码,我的动态图就开始工作,使这个问题变得荒谬(因为这些例子不再有任何错误).我用静态图像更新了这些,但是一些答案引用了不同的值.记在脑子里. alt text http://i42.tinypic.com/nwzr5s.jpg 2月到目前为止,有12003到14003个入站电话.信息性,但丑陋.

我想避免看起来像猴子的图表想出y轴数字.

使用谷歌图表API有点帮助,但它仍然不是我想要的. 替代文字 数字很​​干净,但y值的顶部始终与图表上的最大值相同.此图表从0到1357进行缩放.我需要计算1400的正确值,这是有问题的.


我在这里抛出了rbobby对"好"数字的暗示,因为它解释得很好.

  • "漂亮"数字是具有3个或更少非零数字的数字(例如1230000)
  • 一个"漂亮"的数字与零数字相同或几个非零数字(例如1230不好,1200很好)
  • 最好的数字是3个零的倍数(例如"1,000","1,000,000")
  • 第二个最好的数字是多个3个零加2个零的数据(例如"1,500,000","1,200")

alt text http://i43.tinypic.com/21jc0no.png 我找到了使用Mark Ransom想法的修改版本获得我想要的结果的方法.

当得到刻度数时,Mark Ransom的代码确定了刻度之间的最佳间距.有时这个数字最终会超过图表中最高值的两倍,具体取决于您想要的网格线数量.

我正在做的是我用5,6,7,8,9和10个网格线(刻度线)运行Mark的代码,以找出哪些是最低的.值为23时,图表的高度为25,网格线为5,10,15,20和25.值为26时,图表的高度为30,网格线为5,10 ,15,20,25和30.网格线之间的间距相同,但它们中的更多.

所以这里只是简单地复制Excel所做的一些步骤,以使图表更加流行.

  1. 暂时将图表的最高值提高约5%(这样图表的最高点和图表区域的顶部之间总会有一些空间.我们希望99.9向上舍入到120)
  2. 找到5,6,7,8,9和10个网格线的最佳网格线位置.
  3. 找出这些数字中最低的.记住获取该值所需的网格线数.
  4. 现在您拥有最佳的图表高度.线条/条形图永远不会与图表顶部相对应,并且您具有最佳的刻度数.

PHP:

function roundUp($maxValue){
    $optiMax = $maxValue * 2;
    for ($i = 5; $i <= 10; $i++){
        $tmpMaxValue = bestTick($maxValue,$i);
        if (($optiMax > $tmpMaxValue) and ($tmpMaxValue > ($maxValue + $maxValue * 0.05))){
            $optiMax = $tmpMaxValue;
            $optiTicks = $i;
        }
    }
    return $optiMax; …
Run Code Online (Sandbox Code Playgroud)

algorithm math charts

32
推荐指数
1
解决办法
8315
查看次数

如何确定使用串行端口的进程?

我工作的公司生产的硬件通过串口与计算机通信.第三方公司编写与我们的硬件通信的软件.

有时我需要诊断我们的硬件.但是,第三方软件应用程序在Windows启动时连接到串行端口,阻止任何其他连接.我不知道这个应用程序/服务的名称,它并不总是相同的.

有没有办法:

  • 找到当前使用给定串行端口或的应用程序/服务的名称/ pid
  • 从另一个应用程序窃取串口连接.

vb.net最好,但我也会采用语言无关的答案.

vb.net serial-port

27
推荐指数
2
解决办法
7万
查看次数

Git/Mercurial(hg)意见

首先,让我说我不是一个专业的程序员,而是一个需要它并且必须学习的工程师.我一直独自工作,所以只有我和我的七个分裂的人物...我们作为一个团队工作:)我的大部分东西都是用C/Fortran/Matlab完成的,到目前为止我一直在学习git to管理一切.然而,尽管我没有任何无法解决的问题,但我从来没有对它"满意"......对于我不能做的一切,我必须查阅一本书.而且,一段时间以来,我一直听到很多关于Mercurial的好东西.
现在,我的一位同事将不得不在一个项目上与我合作(我几乎为他感到难过)并且他开始学习Mercurial(他说更喜欢它),我正在考虑自己的转换.

我们几乎只在Windows平台上工作(尽管我使用Unix工具和来自这个地区的东西管理相对比较好).

所以,我想知道,在一个描述的场景中,我对切换有什么问题.我听说Mercurial对于Windows用户来说对用户界面更加友好.

它如何处理存储库?它是否以与git相同的方式创建它们(只是工作目录中的一个子目录)并且我可以只复制整个项目目录(包括git repo)并将它们带到某个地方而无需额外的思考?(当我选择git/svn时,我真的很喜欢).

你有什么好书可以推荐(比如Pro Git,只适用于Mercurial).

有什么好方法可以将Mercurial实现到Visual Studio/GVim for Windows或Windows资源管理器中以便我可以相对轻松地工作(我想避免使用命令行来处理有关它的所有内容,例如在git shell中).

还有其他我应该注意的事情(拜托,请不要指出其他问题......他们只是给我一些信息,而且我不确定我应该把它当作什么重要,什么可以忽视).我正在努力减少一些时间,因为我无法花时间重新学习Mercurial,就像我为git做的那样.

我也听说过git是c项目,而mercurial是python ......速度上有明显的差别.git非常快......在工作的时候我会遇到一些等待.

注意:我所有的项目都是中间尺寸......主要是数值模拟... 10-15000行(中等大小?)

git mercurial

25
推荐指数
7
解决办法
4391
查看次数

如何制作一个不需要用户按[回车]进行选择的菜单?

我有一个Python菜单.那部分很简单.我正在raw_input()用来从用户那里获得选择.

问题是raw_input(和输入)要求用户Enter在做出选择后按下.有没有办法让程序在击键时立即采取行动?这是我到目前为止所得到的:

import sys
print """Menu
1) Say Foo
2) Say Bar"""
answer = raw_input("Make a selection> ")

if "1" in answer: print "foo"
elif "2" in answer: print "bar"
Run Code Online (Sandbox Code Playgroud)

有类似的东西会很棒

print menu
while lastKey = "":
    lastKey = check_for_recent_keystrokes()
if "1" in lastKey: #do stuff...
Run Code Online (Sandbox Code Playgroud)

python

24
推荐指数
2
解决办法
1万
查看次数

所有不同类型的版本控制有什么区别?

在被至少10个人告知之后,版本控制是一件好事,即使只是我,我现在有一个后续问题.

所有不同类型的版本控制之间有什么区别,是否有任何人都知道版本控制的指南非常简单易懂?

version-control

22
推荐指数
5
解决办法
1万
查看次数

如何在Subversion中制作标签?

我知道如何在subversion中使用标签.每次进入发布里程碑时,我都会创建一个标记.

我不太明白他们是如何工作的.

标签只是一个副本,是由我指定的修订版制成的吗?或者更像是一个参考,在内部颠覆只是说一个标签GO TO /trunk/project/ Revision 5或什么的.

创建tag(svn copy)的命令似乎意味着它是一个副本,但我看到其他人写道,subversion并没有真正复制任何东西.

假设我只转储存储库的HEAD修订版.除了标签,我不关心任何历史.这些标签是否与Head版本的其余部分一起转储?

最后,这一切只是编程魔术,我真的不想知道.

svn

14
推荐指数
1
解决办法
1万
查看次数

部署VB.NET应用程序的最佳方法是什么?

通常当我在构建VB.NET程序时使用ClickOnce但它有一些缺点.我从来没有真正使用过任何其他东西,所以我不确定我的选择是什么.

ClickOnce的缺点:

  • 由多个文件组成 - 似乎比管理一堆文件更容易分发一个文件而下载这些文件更容易下载.
  • 您必须再次为CD安装构建它(当最终用户没有互联网时)
  • 程序不会在程序文件中结束 - 它最终隐藏在一些应用程序catch文件夹中,使得快捷方式更加难以实现.

ClickOnce的优点:

  • 有用.奇妙的.它内置于VisualStudio 2008 Express中.
  • 使升级应用程序变得容易.

Windows Installer也会这样做吗?我知道它没有任何ClickOnce缺点,但知道它是否也有ClickOnce专业人员会很高兴.

更新:我最终使用Wix 2(Wix 3可用,但在我完成项目时,没有人有一个称职的教程).这很好,因为它支持了我(最终)需要的三件事.一个可选的启动窗口快捷方式,一个启动时安装程序完成选项,以及我的老板认为将保留的三段文本将使用点击错误的选项.

vb.net clickonce installer visual-studio

8
推荐指数
1
解决办法
1万
查看次数

如何在WiX中创建条件属性?(几乎像If-Then)

我有一个安装一些EXE文件的WiX项目.一个是'Main'可执行文件,其他是支持帮助诊断问题的程序.

主可执行文件是可选的,支持程序将自行运行.通常,最终用户将安装第三方程序而不是我的主要可执行文件.

在WiX安装程序结束时,我希望有一个"启动程序"复选框,一旦安装程序关闭,它就会运行程序.

我可以根据INSTALLLEVEL属性隐藏复选框,但这只会根据用户是选择"典型"还是"完成"安装而更改.我想根据是否安装了主要的可执行文件功能来隐藏它.

这样的事情是理想的:

<Feature Id='MainProgram' Title='MainExe'
         Description='This application stores and displays information from our hardware.'
         ConfigurableDirectory='INSTALLDIR' Level='4'
         AllowAdvertise='no'>
    <ComponentRef Id='MainExecutable' />
    <ComponentRef Id='SQLLibrary' />
    <ComponentRef Id='ProgramIcon' />
    <ComponentRef Id='RemovePluginsFolder'/>
    <Property Id='ShowFinalCheckbox'>1</Property> #<--This won't work, but I'd like it to.
</Feature>
Run Code Online (Sandbox Code Playgroud)

installer wix

4
推荐指数
1
解决办法
1万
查看次数