网站性能优化,首要数据库优化

12/3/2015 1:06:01 PM

网站性能优化,首要数据库优化

数据量很少的情况下,数据库读取方式基本看不出有何不同,平时都是用框架或在程序中来实现读取。而这个问题,到了数据量较多时,性能将会大大降低。

而在读取时,最有效的方式是用存储过程,原生读取再处理。当数据量大时,使用存储过程读取,你会感觉到飞一般的提升。

由于当前很多框架都有很多查询和处理数据的方式,这些通过在业务简单时实用,如在数据量大和涉及到复杂数据业务操作时,性能将会大大折扣或使系统异常慢或导致崩溃。

存储过程

create PROCEDURE [dbo].[i_proc_archives]
@Id int,
@TypeId int
AS
BEGIN
SELECT TOP(1) id,title FROM tb_article WHERE ID<@Id and [type]=@TypeId ORDER BY ID DESC
SELECT TOP(1) id,title FROM tb_article WHERE ID>@Id and [type]=@TypeId ORDER BY ID ASC
SELECT [type_id],[type_name] FROM tb_type WHERE [type_id]=@TypeId
update tb_article  set clicks = (case when clicks is null then 1 else clicks+1 end) where id=@Id
end