Ruby 探针的基本实现原理

2015-05-14
阅读 2 分钟
3.6k
Ruby语言支持语法级别的系统,框架,甚至语言本身的方法复写,一般叫做元编程(meta programming), 此基础之上还有一些术语为mixin,方法的动态定义,运行时类改写等等,这些技术和机制可以让语言本身就能实 现其他语言需要字节码才能实现的功能,例如探针需要hook HttpRequest中的request方法,就可以通过下面的方式...

JAVA 异常对于性能的影响

2015-05-12
阅读 2 分钟
3.9k
在对我们的客户做技术支持时,我们常常会看到很多客户根本没意识到的异常。在消除了这些异常之后,代码运行速度与以前相比大幅提升。这让我们产生一种猜测,就是在代码里面使用异常会带来显著的性能开销。因为异常是错误情况处理的重要组成部分,摒弃是不太可能的,所以我们需要衡量异常处理对于性能影响,我们可以通过一...

NodeJS 异常处理 uncaughtException 篇

2015-05-09
阅读 2 分钟
5.5k
很多 NodeJS 的开发者在抱怨异常处理太麻烦,我们会通过一些列博客梳理一下 NodeJS 中常见的异常处理的手段。 和大多数编程语言一样,在 NodeJS 里可以通过throw抛出一个异常:

[译] NodeJS 错误处理最佳实践

2015-05-09
阅读 15 分钟
30.6k
NodeJS的错误处理让人痛苦,在很长的一段时间里,大量的错误被放任不管。但是要想建立一个健壮的Node.js程序就必须正确的处理这些错误,而且这并不难学。如果你实在没有耐心,那就直接绕过长篇大论跳到“总结”部分吧。

Python - 装饰器使用过程中的误区

2015-05-09
阅读 4 分钟
5.3k
大家都知道装饰器是一个很著名的设计模式,经常被用于 AOP (面向切面编程)的场景,较为经典的有插入日志,性能测试,事务处理,Web权限校验, Cache等。

Ruby 中的 Profiling 工具

2015-05-09
阅读 4 分钟
2.9k
内置的 profiler 实现的很简单,在 ruby2.2 中只有 150 行代码,大家可以看看它的实现profile.rb 。内置的 profiler 使用起来非常的方便,只需要加上-rprofile参数即可。例如:

Ruby 中的语句中断和返回

2015-05-09
阅读 4 分钟
2.6k
return,break,next 这几个关键字的使用都涉及到跳出作用域的问题,而他们的不同 则在于不同的关键字跳出去的目的作用域的不同,因为有代码块则导致有一些地方需要格外注意。

Python Tricks 若干

2015-05-09
阅读 2 分钟
2.8k
在开发 web 应用的时候经常会用到 json 字符串,但是一段比较长的 json 字符串是可读性较差的,不容易看出来里面结构的。 这时候就可以用 python 来把 json 字符串漂亮的打印出来。

为何响应时间常被测错

2015-05-09
阅读 2 分钟
2.3k
因此响应时间在性能监测和分析中扮演着核心角色。在虚拟化和云环境中,它们也是您能得到的最准确的性能指标。但很多情况下,人们却以错误的方式测量并解释响应时间。为此我们有充足的理由来讨论响应时间测量以及如何对其进行解释这一话题。下面我将讨论典型测量手段、相关的误解以及如何改善测量手段等问题。