Cải thiện tốc độ và hiệu suất web ASP.NET-phần 4

Tiếp theo các phần trước, hôm nay mình xin tiếp tục giới thiệu một số các thủ thuật khác khi code và sử dụng tài nguyên trên web ASP.NET
 

31. Nên sử dụng HttpServerUtility.Transfer().

Phương thức này không liên quan đến việc chuyển hướng trang web(redirection). Thay vì việc gửi một redirect message quay trở lại trình duyệt(browser), ASP.NET chỉ đơn giản là bắt đầu một trang mới. Nên sẽ tiết kiệm được thời gian load.
 
 

32. Nên hạn chế việc dùng nhiều biến Session.

Session dùng để lưu trữ thông tin của người dùng hoặc phiên làm việc hiện tại. Nó giúp bạn trong việc kiểm tra và lấy thông tin từ người dùng đó. Nhưng nếu lượng truy cập hiện tại của web lớn thì các bộ nhớ dành cho việc lưu trữ thông tin trong session sẽ lớn và dễ gây nghẽn mạng hoặc request time out. Và để lấy được thông tin từ biến session bạn phải convert hoặc tuần tự hóa dữ liệu(serialization) trong các collection được lưu trữ. Điều này sẽ làm giảm hiệu suất thực thi và tăng thời gian load của trang.
 
 

33. Vài lưu ý trong việc build ứng dụng web aspnet.

Build ứng dụng trong chế độ Release Mode, luôn precompile ứng dụng trước khi chạy, hạn chế hoặc có thể bỏ không dùng chế độ Debug Mode. Với việc build ứng dụng như thế này bạn sẽ có thể kiểm tra lỗi, triển khai ứng dụng nhanh hơn, import đầy đủ các dll ...
 
 

34. Hạn chế sử dụng quá nhiều ASP.NET Server controls.

Sử dụng nhiều các aspnet server controls sẽ tăng thời gian và bộ nhớ của server để sử lí các controls đó.
 
 

35. Hãy sử dụng các transaction hợp lí.

Dùng các transaction sẽ giúp bạn giữ vững được tính toàn vẹn của dữ liệu tiết kiệm được thời gian nếu có 1 transaction 1 tập hợp các transaction bị hỏng nó sẽ hủy toàn bộ những transaction đó mà không cần phải thực hiện đến transaction cuối.
 
 

36. Luôn sử dụng try-catch-finally.

Sử dụng khối bắt lỗi này bạn có thể giảm được các lỗi truy xuất và sử lí dữ liệu cũng như ngắt kết nối và giải phóng dữ liệu sau khi đã sử dụng xong.
 
 

37.Sử dụng thuộc tính HttpResponse.IsClientConnected.

Thuộc tính này sẽ giúp bạn kiểm tra việc client vẫn còn đang giữ kết nối với server hay không trước khi server xử lí việc truy xuất hoặc thao tác dữ liệu.
 
 

38.Tối ưu hóa vòng lặp.

Vòng lặp for là vòng lặp được sử dụng nhiều nhất trong các loại vòng lặp. Trong vòng lặp for có hai loại là for và foreach. Nhưng cách sử dụng 2 loại này là khác nhau. Vòng lặp for đối với các Ilist hoặc các mảng có index thì sẽ nhanh hơn foreach. Còn foreach dành cho các IEnumerable hoặc các collections không đánh index.
 
 

39. Hãy sử dụng Control.DataBind() thay vì dùng Page.DataBind().

Về lý thuyết thì 2 phương thức này đều Bind dữ liệu vào controls. Chỉ khác Control.DataBind thì sẽ bind dữ liệu và chính control đó còn Page.DataBind là bind dữ liệu vào các controls con nằm trên trang. Và việc dùng Page.DataBind cần phải khai báo rõ ràng. Như vậy với Control.DataBind bạn có thể chủ động hơn trong việc bind data.
 
 

40. Sử dung Repeater để hiển thị dữ liệu chỉ đọc.

Nếu bạn chỉ hiển thị dữ liệu không thôi mà không thao tác dữ liệu thì nên sử dụng Repeater thay vì dùng Gridview hay DataList.

 

Related Post


Xử lý tìm kiếm trong website Asp.Net
Friday, March 14, 2014
Trong bài này mình sẽ làm môt ví dụ nhỏ về tìm kiếm trong website Asp.net. Tìm kiếm chuyên sâu với CSDL khổng lồ đòi hỏi rất nhiều thuật toán và kỹ thuật xử lý dữ liệu rất phức tạp, tuy nhiên để làm một chức năng tìm kiếm nhỏ áp dụng cho website với dữ liệu vừa phải thì không khó...
Cải thiện tốc độ và hiệu suất web ASP.NET-phần 3
Thursday, March 13, 2014
Hai phần trước mình đã giới thiệu cho các bạn một số cách để tăng tốc và cải thiện hiệu suất cho web ASP.NET. Hôm nay mình xin tiếp tục giới thiệu một số các thủ thuật khác khi code và sử dụng tài nguyên trên web ASP.NET
Search

Đăng ký nhận bài mới


Category

Blog Archive