freeswitch的一个性能问题】的更多相关文章

一个性能较好的web服务器jvm参数配置: -server//服务器模式-Xmx2g //JVM最大允许分配的堆内存,按需分配-Xms2g //JVM初始分配的堆内存,一般和Xmx配置成一样以避免每次gc后JVM重新分配内存.-Xmn256m //年轻代内存大小,整个JVM内存=年轻代 + 年老代 + 持久代-XX:PermSize=128m //持久代内存大小-Xss256k //设置每个线程的堆栈大小-XX:+DisableExplicitGC //忽略手动调用GC, System.gc()…
一个性能较好的web服务器jvm参数配置: -server//服务器模式-Xmx2g //JVM最大允许分配的堆内存,按需分配-Xms2g //JVM初始分配的堆内存,一般和Xmx配置成一样以避免每次gc后JVM重新分配内存.-Xmn256m //年轻代内存大小,整个JVM内存=年轻代 + 年老代 + 持久代-XX:PermSize=128m //持久代内存大小-Xss256k //设置每个线程的堆栈大小-XX:+DisableExplicitGC //忽略手动调用GC, System.gc()…
一个性能较好的webserverjvm參数配置: -server //服务器模式 -Xmx2g //JVM最大同意分配的堆内存,按需分配 -Xms2g //JVM初始分配的堆内存.一般和Xmx配置成一样以避免每次gc后JVM又一次分配内存. -Xmn256m //年轻代内存大小.整个JVM内存=年轻代 + 年老代 + 持久代 -XX:PermSize=128m //持久代内存大小 -Xss256k //设置每一个线程的堆栈大小 -XX:+DisableExplicitGC //忽略手动调用GC,…
前两年帮朋友 做了个网吧管理软件,采用动软的三层架构 sql语句生成的.最近因功能变更 要改动,而我这段正在做asp.net mvc +ef+autofac的一个电商网站.索性 就把原来的底层全重新了套用了我现在的架构 EF6.0+autofac+三层架构,上层的asp.net没有变.改完后发现交班页面打开巨慢. 跟踪EF生成的sql语句   发现生成的sql 有问题,查找的全表,而全表有近10万条的数据. 继续跟踪数据库的耗时查询 发现确实是这条语句占时间 为什么会这样呢,我在查询里做条件搜索…
今天,我在写C#代码时,突然发现一个最熟悉的陌生人 —— string.Format.在写C#代码的日子里,与它朝夕相伴,却没有真正去了解它.只知道在字符串比较多时,用它比用加号进行字符串连接效率更高(当然也更方便).可是却从来没有问过为什么? 在生活中也有类似的现象,与你朝夕相处.你最熟悉的人,你往往不会进一步去了解她(他),你已经习惯了她(他),你认为你已经太了解她(他)了...真的是这样吗?这值得去思考... 博问中的一个问题 —— StringBuilder,String.concat(…
我们经常看到一些 Java 性能优化的书或者理念,说不要在循环内定义变量,这样会占用过多的内存影响性能,而要在循环外面定义.接触 Java 这么久以来,相信很多 Java 程序员都被这种代码性能优化策略所误导. 看下面两个示例,示例1在循环外定义变量,示例2是在循环内定义变量. /** * 循环外定义变量 */ private static void outer() { Javastack javastack = null; for (int i = 0; i < 10; i++) { java…
前两年帮朋友 做了个网吧管理软件,采用动软的三层架构 sql语句生成的.最近因功能变更 要改动,而我这段正在做asp.net mvc +ef+autofac的一个电商网站.索性 就把原来的底层全重新了套用了我现在的架构 EF6.0+autofac+三层架构,上层的asp.net没有变.改完后发现交班页面打开巨慢. 跟踪EF生成的sql语句   发现生成的sql 有问题,查找的全表,而全表有近10万条的数据. 继续跟踪数据库的耗时查询 发现确实是这条语句占时间 为什么会这样呢,我在查询里做条件搜索…
使用JdbcTemplate的queryForList方法,返回特别慢,40多万结果集耗时超过6分钟.双核CPU,占用率始终在50%,内存逐渐增长至2G左右. 进行debug跟进去看,看到jdbcTemplate调用jdbc返回ResultSet只用了30秒左右,之后就一直耗在extractData方法里.该方法是用默认的RowMapper,先取得MetaData然后根据这个去生成Map. 对比方法: 1. 使用纯jdbc对比,手工码代码,直接调用Map的put方法逐个生成Map并填充数据.同样…
背景 最近在给一个物流系统做TiDB POC测试,这个系统是基于MySQL开发的,本次投入测试的业务数据大概10个库约900张表,最大单表6千多万行. 这个规模不算大,测试数据以及库表结构是用Dumpling从MySQL导出,再用Lightning导入到TiDB中,整个过程非常顺利. 系统在TiDB上跑起来后,通过Dashboard观察到有一条SQL非常规律性地出现在慢查询页面中,打开SQL一看只是个单表查询并不复杂,感觉必有蹊跷. 问题现象 以下是从Dashboard中抓出来的原始SQL和执行…
C++:只要你的代码正确,算法良好,你比较少关注性能问题,编译器会替你搞定绝大部分工作 C#:你的代码正确,算法良好,你还得用工具去分析优化性能,JIT为了快速工作,很多优化工作没有深入开展. 手工优化的代码,看起来比较丑陋. 并且,有那么一些东西,无法优化到和Native一样的性能 举例: 1.函数传递struct参数就无法内联,速度慢,单独传递struct成员变量就可以内联,速度快 2.操作符重载不内联,两个struct比较==,都是函数调用(OMG) 3.Math.Sin/Math.Cos…