ASP.NET Logo

Bagi seorang web programmer terutama ASP.NET programmer pasti menginginkan website yang dibangun bebas dari error dan aman. Selain bebas dari error dan aman, aspek yang harus diperhatikan juga saat pengembangan ASP.NET yaitu masalah performansi. Hal ini tidak terlepas bagaimana supaya website tersebut nyaman digunakan oleh penggunanya.

Berikut beberapa cara untuk membantu meningkatkan performansi ASP.NET

 

1. Kurangi penggunaan Session

Hindari penggunaan Session jika tidak benar-benar diperlukan. Secara default, pada page di ASP.NET statusnya ON, kita dapat menonaktifkannya pada halaman tertentu saja bukan harus setiap halaman yang ada. Berikut contoh kode yang digunakan :

<%@ Page language="c#" Codebehind="WebForm1.aspx.cs" AutoEventWireup="false"
Inherits="WebApplication1.WebForm1" EnableSessionState="false" %>

Selain cara diatas, dapat juga dengan mengedit file web.config dengan mengubah nilai mode <sessionState> menjadi Off

 

2. Output Buffering

Fitur ini sangat menguntungkan pengembangan ASP.NET dengan mengolah semua code, flow process di sisi server lalu menggunakan method Response.Flush untuk mengeluarkan data hasil olahan. Hal ini dilakukan agar komunikasi dengan server tidak terlalu sering dilakukan secara bolak-balik.

<%response.buffer=true%>

Lalu gunakan :

<pre><%response.flush=true%>

 

3. Hindari Validasi dilakukan di Server
Jika tidak diperlukan validasi menggunakan kode C#/VB, pergunakan javascript untuk validasi. Contohnya, pada kolom umur tidak perlu diperiksa di server karena pada sisi client juga bisa dengan memanfaatkan javascript/ajax sehingga tidak perlu bolak-balik ke server.

 

4. Repeater Control baik, penggunaan DataList, DataGrid, dan DataView controls kurang baik
Pada dasarnya ASP.NET merupakan platform yang sangat bagus, akan tetapi kebanyakan control yang ada menggunakan HTML yang cukup berat dijalankan. Repeater pada ASP.NET sangat bagus dalam performasi, walaupun akan menggunakan baris program yang lebih banyak, tetapi tidak terlalu menggunakan resource yang terlalu banyak.

 

5. Menggunakan HTTPServerUtility.Transfer daripada Response.Redirect

Konsep Redirect yaitu bolak-balik ke server, sebaiknya kode ini digunakan jika ingin mengarah ke server fisik lainnya. Jika masih di server yang sama, lebih baik menggunakan Transfer yang mana akan menghemat HTTP Request yang terjadi.

 

6. Nonaktifkan Tracing

Tracing fitur yang cukup membantu, tetapi apakah sering terlupakan saat sudah di-deploy di server production ? Jika belum, segera nonaktifkan fitur ini karena fitur ini tidak diperlukan lagi saat website sudah ada di server production.

<configuration>
<system.web>
<trace enabled="false" pageOutput="false" />
<trace enabled="false" requestLimit="10" pageOutput="false" traceMode="SortByTime" localOnly="true"/>
<compilation debug="false" />
</system.web>
</configuration>

 

7. Pergunakan Page.IsPostBack

Pastikan kode yang dibuat dieksekusi dengan seperlunya saja. Banyak yang melupakan fungsi Page.IsPostBack sehingga kode yang tidak perlu dijalankan juga diproses. Tentu ini akan menggunakan resource lebih.

 

8. Manfaatkan StringBuilder

StringBuilder.Append lebih cepat daripada String + String. Hal ini akan lebih efektif jika menggabungkan String yang berukuran besar. Jika ingin menggabungkan String kurang dari 3 kali, silakan saja menggunakan String + String, tetapi bisa juga dengan memanfaatkan fungsi String.Concat.

 

9. Hindari penggunaan Exception jika tidak diperlukan

Menggunakan Try Catch tetapi tidak menggunakan Exception yang terjadi sangat tidak disarankan. Untuk memproses exception dibutuhkan resource yang tidak sedikit. Jadi jika memang tidak diperlukan, hindari penggunaannya. Pastikan kode bersih, bukan memanfaatkan Try Catch tetapi tidak ada arti exception yang diperoleh.

 

10. Pergunakan Paging

Jika menggunakan Grid yang ada di ASP.NET, jangan lupa menggunakan Paging. Selain paging, pastikan juga tidak mengambil data untuk Grid secara keseluruhan, ambillah data sesuai dengan kebutuhan saja, tidak seluruhnya. Pergunakan cache jika memang diperlukan. Pembahasan cache juga dapat diperoleh dari tulisan sebelumnya(Memilih Antara Viewstate, Session, Application Variable, Cache, dan Cookies)

 

 

Demikian beberapa cara/tips untuk meningkatkan performansi ASP.NET, masih banyak sebenarnya cara lain. Mungkin akan dibahas pada tulisan berikutnya nanti.

 

 

 

(HMS)