5 bước tăng tốc ứng dụng web

Bạn đã đến thời hạn cuối cùng phải bàn giao sản phẩm ứng dụng web ASP.NET nhưng vẫn tồn tại một số vấn đề xung quanh tốc độ thực thi trang web? Mục đích của các nhà thiết kế là phát triển một ứng dụng web với sự quản lý bộ nhớ thích hợp và cách thức một máy chủ web điều khiển các yêu cầu. Nhưng ngoài mục tiêu này thì cũng không nên bỏ lỡ các cách giúp tăng tốc trang web khi phát triển các ứng dụng. Tôi sẽ phác thảo 5 bước giúp bạn tăng tốc nhanh chóng các ứng dụng web của mình.

1. Các đối tượng điều khiển truy cập dữ liệu thích hợp

Một cách để thực sự phá hủy bộ nhớ trên máy chủ đó là không điều khiển chính xác các đối tượng truy cập dữ liệu. Khi khởi tạo một đối tượng truy cập dữ liệu, điều quan trọng là bạn phải có cái nhìn về khoảng thời gian tồn tại của nó và khi đối tượng này trở nên không còn cần thiết nữa thì nó sẽ lấy gì để loại bỏ chính nó. Tôi thường thấy các nhà phát triển tạo ra, mở và sử dụng một DataReader nhưng không làm gì để bỏ nó. Hãy đảm bảo rằng các đối tượng truy nhập dữ liệu đều được quản lý; Điều này sẽ khiến bạn gặp phải một vấn đề lớn từ những thắc mắc tại sao các quy trình xử lý IIS liên tục tiêu tốn bộ nhớ cho đến khi hệ thống phải ngưng lại. Thực hiện một tìm kiếm nhanh bên trong giải pháp cho bất kỳ trạng thái của DataReader mới được tạo nào. Đối với mỗi trạng thái tìm được, hãy đảm bảo rằng DataReader đã được đóng và loại bỏ. Sử dụng khối try/catch/finally bao quanh DataReader hay dùng câu lệnh nếu có một ngoại lệ xuất hiện, khối cuối cùng sẽ xử lý đóng và sắp xếp DataReader.

Ví dụ sử dụng câu lệnh:

using (IDataReader reader = MySite.GetSearchResults())
{
//Consume the datareader
while (reader.Read())
{
//Do something with the data
}
)

Ví dụ khối try/catch/finally:

IDataReader reader;
try
{
reader = MyWeb.GetSearchResults();
while (reader.Read())
{
//Do something with the data
}
}
catch (Exception ex)
{
//Log the exception
}
finally
{
//Dispose the object if it exists
if (reader != null)
reader.Dispose();
}

2. Quản lý các vùng ứng dụng IIS

Khi xử lý một ứng dụng web sẽ có nhiều hơn một thành phần liên quan. Thông thường bạn có trang web chính, một hay nhiều dịch vụ web và một ứng dụng xử lý ảnh. IIS 6.0 cho bạn tạo ra nhiều vùng ứng dụng. Các vùng ứng dụng cho phép nhóm các ứng dụng được cung cấp bởi các quy trình xử lý riêng lẻ. Một trong số những lợi thế của việc phân chia những ứng dụng thành các vùng ứng dụng riêng lẻ đó là mỗi quá trình nhân công xử lý sử dụng một bộ nhớ của riêng mình. Không quan trọng bạn có bao nhiêu bộ nhớ trên máy chủ, một quá trình ASP.NET sẽ được tiến hành chậm dần cho tới khi bộ nhớ mà nó tiêu dùng lên tới 800-900 Mb.

3. Quản lý trạng thái ASP.NET

Có hiểu biết về các loại trạng thái khác nhau của ASP.NET là rất quan trọng để cải thiện tốc độ thực thi các ứng dụng. ASP.NET có nhiều trạng thái khác nhau, nhưng những trạng thái mà bạn cần phải đặc biệt chú ý là trạng thái ứng dụng, trạng thái phiên và các thông tin thuộc tính bởi vì mọi dữ liệu đều nằm trong bộ nhớ trên server. Tránh lưu trữ quá nhiều dữ liệu trong bất kỳ trạng thái nào trong ba cái trên trừ phi thật cần thiết. Nếu cần lưu trữ dữ liệu tại trạng thái phiên, hãy lưu trữ bất kì dữ liệu nào bạn cần, như các trường nhận biết hay các dữ liệu tĩnh thường xuyên được sử dụng. Nếu bạn muốn tìm hiểu sâu thêm thì có rất nhiều bài viết trên mạng thống kê tất cả sự khác nhau của các trạng thái ASP.NET. Mỗi kiểu trạng thái chỉ nên được sử dụng khi cần thiết. Hãy dành thời gian để học và hiểu thật kỹ chúng.

Trạng thái khác mà bạn nên chú ý là trạng thái “view”; trạng thái này ảnh hưởng tới máy khách. Nó được dùng để giữ gìn các giá trị trên trang hay điều khiển giữa các di chuyển qua lại trên máy chủ. Theo mặc định, trạng thái “view” được bật cho các trang ASP.NET. Không phải tất cả trang đều yêu cầu trạng thái “view”. Những trang web lớn có thể có một số lượng khổng lồ dữ liệu được lưu trữ. Một cách để biết chính xác trạng thái “view” như thế nào bạn hãy mở “View Source” từ trình duyệt web. Một khối lớn các dữ liệu mã hóa chính là trạng thái “view”. Bạn có thể đánh giá trang web bằng cách xác định liệu có cần trạng thái “view” hay không. Bạn có thể tắt trạng thái “view” cho toàn bộ trang, điều khiển người dùng. Nếu tắt trạng thái “view” trên một trang hay điều khiển, hãy chắc chắn rằng bạn đã kiểm tra trang web để biết rằng chúng vẫn tiếp tục hoạt động chính xác

4. Xóa các Style Sheet và Script File

Một cách nhanh chóng và dễ dàng để cải thiện tốc độ ứng dụng web là quay trở lại dọn đẹp sạch sẽ các file CSS Style Sheet và Script File của các mã và hàm không cần thiết. Thường thì các mẫu và hàm cũ vẫn còn tồn tại trong style sheet và script file trong thời gian cải tiến web. Nhiều website sử dụng CSS Style Sheet hay các Script File đơn cho toàn bộ website. Đôi khi, xem lại và dọn dẹp chúng có thể cải thiện tốc độ thực thi của trang web bằng việc giảm bớt kích thước trang. Nếu bạn tham chiếu tới hình ảnh mà không được sử dụng trên website thì thật là phí thời gian để tải chúng. Chạy một chương trình phân tích trang web bạn có thể nhìn thấy chính xác cái gì đang được tải và cái gì mất nhiều thời gian nhất để tải.

5. Thử tải trang web với hệ thống Visual Studio

Tải thử là rất quan trọng để phát hiện vấn đề thực thi và đo thời gian tác động. Visual Studio Team System (VSTS) bao gồm một công cụ tuyệt vời và đơn giản để tải thử ứng dụng web và đưa ra báo cáo. Sử dụng thuật tải thử thực hiện rất dễ chỉ qua một số bước cần thiết. Bắt đầu bằng việc tạo ra một hoặc nhiều web thử và định hình các thuộc tính trên mỗi web thử để mô phỏng người dùng. VSTS dùng Web Page Recorder cho phép bạn ghi một loạt các bước thực hiện trên website. Thiết lập các bộ đếm trên máy chủ sử dụng tốc độ màn hình. Sử dụng các bộ đếm để theo dõi các hoạt động đặc biệt trên máy chủ như các byte cá nhân, byte ảo và tỷ lệ phần trăm CPU. Nếu bộ nhớ bị lãng phí trong ứng dụng, bạn sẽ dễ dàng khám phá ra bằng cách kiểm tra bộ nhớ. Kết quả sẽ thay đổi phụ thuộc vào ứng dụng nào được tải, nhưng bộ nhớ máy chủ cần phải đạt đến một số lượng chắc chắn và ổn định. Hình dưới là một ví dụ của tải thử bằng VSTS.


VSTS kiểm tra quá tình tải web

Kết luận

Năm bước cải thiện tốc độ thực thi web trên là để cung cấp cho bạn các kết quả nhanh chóng mà không mất thời gian triển khai và làm việc vất vả. Tuy nhiên, nếu bạn quyết định thực hiện bất kỳ bước nào vào trong ứng dụng web của mình, hãy phân tích cẩn thận và nghiên cứu mỗi vùng dữ liệu để đưa ra quyết định chính xác. Tốt nhất là bạn nên đặt ra các yêu cầu cấu trúc âm thanh và lập kế hoạch trước khi bắt đầu. Hy vọng, những thủ thuật này hữu ích với bạn.

Thứ Ba, 27/11/2007 14:23
31 👨 1.036
0 Bình luận
Sắp xếp theo
    ❖ Tổng hợp