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())
{
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
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.