性能测试工具:
1. ab。
2. python脚本。
3. jstack,jstat,btrace,jsoncole。
数据层面:
1. 避免n+1,无论后端数据访问的是mysql,mongoDB还是cache,都应该避免循环远程IO操作。
2. sql提前做explain,注意索引的建立是否合理。
3. mysql合理的配置,比如禁用query cache,合理的innoDB cache等。
4 经常删的表,定期做一下表维护。
jython代码:
1.避免在热方法中动态import,因为存在全局锁。
2.避免使用jython原生的json,使用性能更好的jackson。
3.静态的数据尽可能提前初始化。
Class A{
private static String someValue =null;
static {
someValue = initSomeValue()
}
public String getSomeValue(){
return someValue;
}
}
优于
Class B{
private static String someValue =null;
public String getSomeValue(){
if(someValue!=null){
return someValue
}else{
someValue = initSomeValue()
return initSomeValue
}
}
}
4. 使用spring redis client需要修改默认pool配置。
系统层面:
1. 关注TCP/IP connection的连接情况,尽量使用连接池。
2. 任何外部资源的调用都需要设置timeout。
3. 选择合适的框架,避免选用一些性能很差的开源框架,并做性能评估。
4. 合理的GC参数设置,如堆内存大小设置,NewRatio,UseParallelGC
5. 利用多线程提升性能,如考虑并行加载。
6. 利用Http cache和ETag节约网络开销,开启http gzip,模板字符串压缩。
7. 不要使用自动产生SQL的ORM框架。
8. 网络传输避免使用java自带的序列化。
最后:
1. 不要过于关注性能,比如Java反射其实没有网上宣传的那么慢,关键是找到系统的性能瓶颈。
2. 了解一些系统正常指标,如平均响应时间,TPS,GC时间等。知道什么数据是快,才知道什么数据是慢。
- 浏览: 2662872 次
- 来自: 杭州
文章分类
- 全部博客 (1188)
- webwork (4)
- 网摘 (18)
- java (103)
- hibernate (1)
- Linux (85)
- 职业发展 (1)
- activeMQ (2)
- netty (14)
- svn (1)
- webx3 (12)
- mysql (81)
- css (1)
- HTML (6)
- apache (3)
- 测试 (2)
- javascript (1)
- 储存 (1)
- jvm (5)
- code (13)
- 多线程 (12)
- Spring (18)
- webxs (2)
- python (119)
- duitang (0)
- mongo (3)
- nosql (4)
- tomcat (4)
- memcached (20)
- 算法 (28)
- django (28)
- shell (1)
- 工作总结 (5)
- solr (42)
- beansdb (6)
- nginx (3)
- 性能 (30)
- 数据推荐 (1)
- maven (8)
- tonado (1)
- uwsgi (5)
- hessian (4)
- ibatis (3)
- Security (2)
- HTPP (1)
- gevent (6)
- 读书笔记 (1)
- Maxent (2)
- mogo (0)
- thread (3)
- 架构 (5)
- NIO (5)
- 正则 (1)
- lucene (5)
- feed (4)
- redis (17)
- TCP (6)
- test (0)
- python,code (1)
- PIL (3)
- guava (2)
- jython (4)
- httpclient (2)
- cache (3)
- signal (1)
- dubbo (7)
- HTTP (4)
- json (3)
- java socket (1)
- io (2)
- socket (22)
- hash (2)
- Cassandra (1)
- 分布式文件系统 (5)
- Dynamo (2)
- gc (8)
- scp (1)
- rsync (1)
- mecached (0)
- mongoDB (29)
- Thrift (1)
- scribe (2)
- 服务化 (3)
- 问题 (83)
- mat (1)
- classloader (2)
- javaBean (1)
- 文档集合 (27)
- 消息队列 (3)
- nginx,文档集合 (1)
- dboss (12)
- libevent (1)
- 读书 (0)
- 数学 (3)
- 流程 (0)
- HBase (34)
- 自动化测试 (1)
- ubuntu (2)
- 并发 (1)
- sping (1)
- 图形 (1)
- freemarker (1)
- jdbc (3)
- dbcp (0)
- sharding (1)
- 性能测试 (1)
- 设计模式 (2)
- unicode (1)
- OceanBase (3)
- jmagick (1)
- gunicorn (1)
- url (1)
- form (1)
- 安全 (2)
- nlp (8)
- libmemcached (1)
- 规则引擎 (1)
- awk (2)
- 服务器 (1)
- snmpd (1)
- btrace (1)
- 代码 (1)
- cygwin (1)
- mahout (3)
- 电子书 (1)
- 机器学习 (5)
- 数据挖掘 (1)
- nltk (6)
- pool (1)
- log4j (2)
- 总结 (11)
- c++ (1)
- java源代码 (1)
- ocr (1)
- 基础算法 (3)
- SA (1)
- 笔记 (1)
- ml (4)
- zokeeper (0)
- jms (1)
- zookeeper (5)
- zkclient (1)
- hadoop (13)
- mq (2)
- git (9)
- 问题,io (1)
- storm (11)
- zk (1)
- 性能优化 (2)
- example (1)
- tmux (1)
- 环境 (2)
- kyro (1)
- 日志系统 (3)
- hdfs (2)
- python_socket (2)
- date (2)
- elasticsearch (1)
- jetty (1)
- 树 (1)
- 汽车 (1)
- mdrill (1)
- 车 (1)
- 日志 (1)
- web (1)
- 编译原理 (1)
- 信息检索 (1)
- 性能,linux (1)
- spam (1)
- 序列化 (1)
- fabric (2)
- guice (1)
- disruptor (1)
- executor (1)
- logback (2)
- 开源 (1)
- 设计 (1)
- 监控 (3)
- english (1)
- 问题记录 (1)
- Bitmap (1)
- 云计算 (1)
- 问题排查 (1)
- highchat (1)
- mac (3)
- docker (1)
- jdk (1)
- 表达式 (1)
- 网络 (1)
- 时间管理 (1)
- 时间序列 (1)
- OLAP (1)
- Big Table (0)
- sql (1)
- kafka (1)
- md5 (1)
- springboot (1)
- spring security (1)
- Spring Boot (3)
- mybatis (1)
- java8 (1)
- 分布式事务 (1)
- 限流 (1)
- Shadowsocks (0)
- 2018 (1)
- 服务治理 (1)
- 设计原则 (1)
- log (0)
- perftools (1)
最新评论
-
siphlina:
课程——基于Python数据分析与机器学习案例实战教程分享网盘 ...
Python机器学习库 -
san_yun:
leibnitz 写道hi,我想知道,无论在92还是94版本, ...
hbase的行锁与多版本并发控制(MVCC) -
leibnitz:
hi,我想知道,无论在92还是94版本,更新时(如Puts)都 ...
hbase的行锁与多版本并发控制(MVCC) -
107x:
不错,谢谢!
Latent Semantic Analysis(LSA/ LSI)算法简介 -
107x:
不错,谢谢!
Python机器学习库
发表评论
-
分布式事务处理学习总结
2014-11-19 13:09 2484其实大多数互联网应用对事务性要求都不高,更多的挑战在于更好的 ... -
python GIL-并发问题小结
2014-03-01 13:05 800参考文档: http://www.rubyinside. ... -
时间序列统计总结
2014-02-09 19:38 959时间序列统计总结: 1.时间序列可以简单通过以时间窗口为k ... -
python和linux命令交互方式总结
2014-01-09 10:11 1786python和linux命令交互有两种方式: 1. 直接 ... -
文件名fileName的处理总结
2013-12-10 15:23 978org.apache.commons.io.Filenam ... -
maven 小结(打包和单元测试)
2013-12-04 11:53 6891. 如何把一个jar和他依赖的包打包成一个 使用mave ... -
captcha记录
2013-10-22 14:33 11# -*- coding: utf-8 -*- path ... -
blog优化项目的总结
2013-10-16 15:39 728服务化的意义 一个页 ... -
进程无法退出总结
2013-10-16 15:09 924问题记录:jython 运行某个脚本不会退出,通过jstac ... -
记录一次bug解决过程
2013-09-29 18:10 12426前天使用jython全量build数据中间总会出现字符乱码问 ... -
线上快速检查命令
2013-09-23 16:21 768ps aux | grep mandala | grep ...
相关推荐
《微信读书iOS性能优化总结》 微信读书作为一款专注于阅读体验的应用,对于性能优化的重要性不言而喻。本文主要从发现问题、解决问题和预防问题三个方面,总结了微信读书在iOS平台上的性能优化策略。 首先,发现...
以下是对"sql server性能优化总结"的详尽解读: 1. **查询优化**: - **索引优化**:索引是提高查询速度的关键。正确创建非聚簇和聚簇索引,根据查询模式选择合适的覆盖索引,以及定期维护索引(如重建和重新组织...
### Hive性能优化总结 #### 一、Hadoop与Hive计算框架特性引发的问题 Hadoop作为大数据处理平台,其核心优势在于能够高效处理大规模数据集。然而,在具体的应用场景中,尤其是在Hive作为数据仓库使用时,仍存在...
简单的整理了一些Oracle性能优化方面的知识。 供大家参考学习。
DPDK概述和性能优化总结
MySQL 5.6 性能优化总结 MySQL 5.6 是一个高性能的关系型数据库管理系统,然而随着数据库规模的增长和复杂度的增加,性能问题开始浮现。因此,性能优化成为 MySQL 数据库管理员和开发者的首要任务。本文将总结 ...
【Android APP性能优化总结】 Android应用的性能优化是开发者必须关注的重要环节,它关系到用户体验、应用评分以及用户留存率。在移动设备上,尤其是在竞争激烈的App市场中,快速响应和流畅的操作是留住用户的关键...
MySQL性能优化总结.pdf
本文将基于"swift-iOS性能优化总结"的主题,详细探讨内存管理、UI流畅性、网络请求、GPU优化、电量消耗控制、App包体积减小、启动速度提升以及Instruments工具的高级使用技巧等方面的知识点。 首先,我们来关注内存...
MySQL 性能优化总结 MySQL 性能优化是数据库管理和开发人员需要掌握的重要技能。性能优化的目标是让查询更快,减少查询所消耗的时间。为了达到这个目标,我们需要从每一个环节入手,包括连接、配置优化、索引优化、...
### Ext性能优化总结 在多年的Ext项目开发过程中,积累了丰富的经验与技巧,下面将这些关键的知识点进行详细的阐述,希望能为同行提供有价值的参考。 #### 一、架构优化:One Page One Application模式 在传统的...
Oracle性能优化总结[定义].pdf
### Java代码性能优化总结 Java代码性能优化是一个广泛的领域,涉及多个方面,包括但不限于内存使用、循环效率、算法优化、集合框架使用等。本总结旨在汇总35个常见的Java代码性能优化技巧。 #### 1. 使用final...
在这份来自3-SDCC-2016杭州互联网应用架构峰会的《体系化性能优化总结》中,张荣华作为蚂蚁金服数据服务平台部的大数据服务架构师,分享了自己在性能优化方面的经验与见解。首先,文档中探讨了性能优化的必要性,从...
### 35个Java代码性能优化总结 #### 前言 代码优化是软件开发中的一个重要环节,尤其在Java这样的大型应用开发中更是至关重要。合理的优化不仅能够显著提高应用程序的性能,还能降低资源消耗,提升用户体验。本文将...
关于ORACLE的性能优化总结PPT,涉及到ORACLE体系结构、索引、数据字典、执行计划等。
Mysql基础性能优化思维导向图 (其中包括:mysql基础、mysql性能优化、mysql锁机制和主从复制) 文件名称:MySQL基础与性能优化总结.xmind
性能优化是IT领域中至关重要的一个环节,它涵盖了操作系统、网络、数据库以及应用程序等多个层面,旨在提高系统的响应速度、吞吐量以及资源利用率。以下是对这些方面进行详细讲解: 首先,针对操作系统层面的优化,...
Oracle性能优化是数据库管理的关键环节,旨在提升数据库处理速度,减少资源消耗,从而提高整体应用系统的性能。以下是对标题和描述中提及的几个关键知识点的详细说明: 1. **优化器的选择**:Oracle数据库提供了三...