
性能
wwwsq
这个作者很懒,什么都没留下…
展开
-
通过调试工具解决电脑卡顿问题
通过调试工具,我们可以确定性的解决电脑卡顿问题,就像我们有方法可以搞定服务器的性能问题一样。原创 2020-10-28 15:26:48 · 958 阅读 · 1 评论 -
[C#] 不同类型的对象之间快速拷贝(比反射快十倍)
/// <summary>/// 在两个不同的类型之间,快速的拷贝/// </summary>public static class FastCopy{ static Action<S, T> CreateCopier<S, T>() { var target = Expression.Parameter(typeof(T)); ...原创 2018-01-18 23:32:40 · 2841 阅读 · 1 评论 -
[C#] 网站程序ASP.NET的性能诊断 - CPU分析
微软提供了标准的CLR性能分析类库https://github.com/Microsoft/clrmd如何获取clrmd编译后的dll方法一在nuget里面搜索clrmd可以很方便的下载方法二估计有些同学和我一样喜欢手动挡,那么我这里提供一个下载dll的地址。项目里面只要引用这个dll就能对CLR进行分析诊断了。https://raw.githubusercontent.com/wsq003/cl原创 2017-08-01 16:36:48 · 2500 阅读 · 0 评论 -
[C#] Parallel.For的线程数
Parallel.For会自动判断同时运行多少个线程,但你也可以进行干预。原创 2015-03-08 00:36:48 · 9971 阅读 · 2 评论 -
[C#] WebClient性能优化
C#的WebClient需要修改默认设置,否则性能太差了。原创 2015-03-07 23:25:12 · 9094 阅读 · 1 评论 -
[C++] Linux下的itoa函数
上篇文章说到linux需要itoa函数,下面我就提供一份跨平台的itoa函数。 //return the length of result string. support only 10 radix for easy use and better performanceint my_itoa(int val, char* buf){ const int radix = 1原创 2010-01-05 17:13:00 · 17652 阅读 · 31 评论 -
Java NIO的性能
最近调研了一下mina和netty框架的性能,主要是想了解java nio在单机能支持多少长连接。首先,mina的qq群有同学反映说单机支持3w长连接是没问题的其次,http://amix.dk/blog/post/19456 netty号称可以单机处理十万个以上的长连接然后,http://groovy.dzone.com/articles/512000-concurrent-websockets原创 2013-09-05 17:30:01 · 2107 阅读 · 2 评论 -
慎用curl测网站速度
curl的计时功能也许不够准确。原创 2013-07-04 16:53:20 · 10058 阅读 · 0 评论 -
[php] 如何处理好autoload
在有了诸如apc之类的cache之后,php的autoloader成为了需要认真考虑的性能点。也许应该让require_once()函数直接带上个参数,指明磁盘stat()的调用间隔。这可以简单但是有效的提高性能。原创 2013-07-11 15:30:50 · 2613 阅读 · 0 评论 -
[Java] HttpClient有个古怪的stalecheck选项
打开stale check会让每次http请求额外消耗15毫秒。而且stalecheck选项缺省是打开的。这有必要吗????在局域网里面调用web api service的时候会死人的。原创 2013-07-05 16:53:09 · 3544 阅读 · 0 评论 -
函数memstr
大家用了memchr、strchr、strstr之后,有没有想要一个叫memstr的函数?从内存里面找特定的字符串?glibc里面没有提供memstr,我这里提供一个吧。验证过的可靠版本://find 'substr' from a fixed-length buffer //('full_data' will be treated as binary data buffer)//retur原创 2013-04-12 10:09:39 · 13353 阅读 · 0 评论 -
虚函数和函数指针的性能比较
1: load [object_reg + #VFToffset], table_reg2: load [table_reg + #deltaOffset], delta_reg3: load [table_reg + #selectorOffset], method_reg4: add object_reg, delta_reg, object_reg5: call method_reg虚函数的原创 2012-06-18 03:42:06 · 3119 阅读 · 1 评论 -
[C++] 关于gdb断点的真相
gdb的断点是基于信号(signal)实现的在某个地址增加一个断点,实际上就是修改那个地址的代码,把原来的代码替换成INT 3指令,同时让gdb捕获这个signal并做相应的处理:包括执行被替换掉的指令,并跳转回来。因此,只要断点不被走到,那么断点就不会影响程序的运行效率;因为程序的其他地方都没改变,该怎么运行还是怎么运行。gdb在遇到断点之后可以做很多事情包括:停下来等用户处理自动继续自动执行一原创 2011-12-29 11:22:46 · 4338 阅读 · 0 评论 -
[C++] tcmalloc的尴尬
专用的‘对象池’可以比通用的‘内存池’性能高两个数量级。通过宏定义(DECL_MEM_POOL, IMPL_MEM_POOL)可以很快速的为class增加pool能力,还可以在单线程的环境下去掉锁。真正要性能的程序不会整天去分配内存。性能要求没那么高的程序glibc就够了。所以,tcmalloc是一个很尴尬的东西。ps:tcmalloc据说可以用来优化mysql(让mysql加载tcmalloc来原创 2011-12-16 10:36:12 · 3012 阅读 · 0 评论 -
[Linux] 服务器性能调优(CPU绑定)
我们都知道单进程、异步IO应该可以获得最优通讯性能。但现实里我们常常发现这种模式常常达不到预期的效果。这可能是由于网卡在和你的应用程序抢CPU。cat /proc/interrupts 看看你的网卡是几号中断,都在哪个CPU上工作?通常你的网卡应该工作在CPU0上面。(如果不是,可以把它绑到CPU0上面去)cat cat /proc/cpuinfo看看你有几个CPU,是多少核的。假设是双CPU*四原创 2011-11-03 17:26:55 · 4736 阅读 · 0 评论