高性能建站系统

标签: 性能 系统 | 发表时间:2014-08-17 14:03 | 作者:mrcuiliodng
出处:http://www.iteye.com

首先是从三方面来提高的,应用层面,服务器端层面,数据库层面。
一、应用层面
1、采用freemaker或者velocity来做页面静态化,提高网站的访问速度。

二、服务器端
1、对于一些不经常增删改的数据做缓存,比如memcached,redis,mongodb
2、对于图片的话,采用fastDFS来做图片的分布式服务器,加快图片的存储与读取。
3、对于安全方面,采用数据库事务来保证数据的安全性能。
4、能尽量少的使用锁来处理,因为锁有时候会带来一系列的连锁反应。
5、做负载均衡,通过nginx+tomcat组合给服务器端分流。
6、通过队列来做一些数据的信息暂存,来减缓线程对服务器的压力。
7、采用并发的集合类,例如ConcurrentHashMap,CopyOnWriteArrayList等。
8、考虑程序的可扩展性和可移植性。
9、数据的一致性问题,需要考虑java concurrent包
10、适当的使用一些高效算法。
11、内存一致性:内存操作(如共享变量的读写)的 happen-before 关系。只有写入操作 happen-before 读取操作时,才保证一个线程写入的结果对另一个线程的读取是可视的。synchronized 和 volatile 构造 happen-before 关系,Thread.start() 和Thread.join() 方法形成 happen-before 关系。
12、JVM的内存模型以及JVM的垃圾回收机制,一直垃圾回收器的合理使用,新生代和老年代的合理分区。

三、数据库层面
1、给数据库字段做索引,能够加快查询速度,不是所有的索引都能够加快查询速度的,前提是对于查询多于增删改的数据。
2、给数据库表做表分区,能够加速查询的速度。
3、分库分表,通过分区分表能够加快查询速度。
4、根据explain命令对于sql语句进行解释执行计划分析。
5、对表进行分区,分区查询会加快速度的
6、oracle的话。需要选择合适的选择器,根据实际需要,选择基于成本的选择器,或者基于基于规则的优化器
7、in和exists,还有not in和not exists的用法区别,以及适用场合
8、做master-slave,进行读写分离,给数据库通过分流来减小压力。
9、对于sql语句进行优化.



已有 0 人发表留言,猛击->> 这里<<-参与讨论


ITeye推荐



相关 [性能 系统] 推荐:

高性能建站系统

- - 互联网 - ITeye博客
首先是从三方面来提高的,应用层面,服务器端层面,数据库层面. 1、采用freemaker或者velocity来做页面静态化,提高网站的访问速度. 1、对于一些不经常增删改的数据做缓存,比如memcached,redis,mongodb. 2、对于图片的话,采用fastDFS来做图片的分布式服务器,加快图片的存储与读取.

linux 系统性能指标

- - 非技术 - ITeye博客
近段时间,再忙着找实习,经常被问到的,关于linux系统性能的指标,比如对于一台linux机器来说,怎么监控它的CPU,内存,负载等情况;怎样算高负载,具体的依据是什么. 等等这类问题,下面就好好总结一下这方面知识吧~. 由于能力有限,可能总结的不是很全面,不是很正确,有错漏的,欢迎大家帮忙指出,谢谢.

Linux 和 Android 系统性能分析

- - CSDN博客综合推荐文章
作为一名Linux 或 Android 平台的系统工程师,在开发系统新功能外,主要工作就是优化系统性能,使系统上以最优的状态运行,但是由于硬件问题、软件问题、网络环境等的复杂性和多变性,导致对系统的优化变得异常复杂,如何定位性能问题出在哪个方面,是性能优化的一大难题, 从系统入手,阐述由于系统软、硬件配置不当可能造成的性能问题,并且探讨检测系统故障和优化性能的一般方法和流程.

前端性能监控系统ShowSlow

- - CSDN博客Web前端推荐文章
作者:zhanhailiang 日期:2014-11-14. ShowSlow是开源的前端性能监控系统,提供了以下功能:. 前端性能指标数据收集功能:ShowSlow原生提供了数据收集工具. DOM Monster!,但也支持通过YSlow,PageSpeed等第三方工具将性能数据上报给服务端完成收集(其服务器端提供了针对多达8种不同工具上报的数据收集器dommonster,dynatrace,events,har,metric,pagespeed,webpagetest,yslow);.

Linux系统和性能监控

- - zzm
CPU性能表现如何一般从三个方面来衡量:运行队列、利用率和上下文切换. 正如前文所提及的,性能表现的好坏和基线数据(或预期)是密不可分的. 对大部分系统而言,一些基本的性能预期如下:. 运行队列——每个处理器运行队列中不应该超过1-3个线程. 例如,一个双核的系统中,运行队列长度不应该超过6. (译注:即一个系统的load average值不应该大于核数的4倍.

高性能消息系统——Kafka

- - 互联网 - ITeye博客
引用官方原文: “Kafka is a distributed, partitioned, replicated commit log service.”. 它提供了一个非常特殊的消息机制,不同于传统的mq. 官网:https://kafka.apache.org.     传统的MQ,消息被消化掉后会被mq删除,而kafka中消息被消化后不会被删除,而是到配置的expire时间后,才删除.

系统性能监控之 Swap Space

- - Darktea
对线上服务器进行性能监控时, 需要关注各种性能指标, 从各个方面来对系统性能进行监控. 例如, 系统负载, cpu 占用, 内存占用, 网络带宽等. 其中 Swap Space 的使用状况也是值得关注的一项, 本文对在 Linux 环境中监控 Swap Space 的相关内容进行了总结.. 一, 首先简单的介绍一下什么是 Swap Space.

性能优化的方法和技巧:系统

- tiod - 弯曲评论
从系统层次去优化系统往往有比较明显的效果. 但是,在优化之前,我们先要问一问,能否通过扩展系统来达到提高性能的目的,比如:. Scale up: 用更强的硬件替代当前的硬件. Scale out: 用更多的部件来增强系统的性能. 使用更强的硬件当然和优化没有半点关系,但是如果这是一个可以接受的方案,为什么不用这个简单易行的方案哪.

构建高性能的微博系统(QCon Beijing 2011演讲)

- zou guangxian - Tim[后端技术]
QCon网站提供此演讲下载的PDF是老版,大约有30%的内容改变,已经通知Update. Slideshare文档在对方网站可浏览及下载,但是下载只提供Mac OS Keynote格式,PDF格式太大未提供(上传转换1小时未完成),有需要可以到QCon Beijing官网下载. Similar Posts:QCon Beijing qconbeijing全部演讲资料下载.

构建高性能高并发Java系统

- scourgen - ITeye博客
异步通信显然可以更快的返回响应. 从实际经验看,对高吞吐服务器更大的好处是,系统中的某一服务出现问题后往往出现雪崩似的服务宕机. 这很多都是由于采用同步通信,需要等待其他服务同步通信结束后,其占用资源才能得到释放. 而这些资源往往是socket连接、线程、数据库连接等比较重的资源. 如果你真的需要他,可以用个mock同步.