Meskipun banyak situs web yang menggunakan ASP tidak menggunakan komponen sama sekali, dalam artikel ini, ASP diasumsikan sebagai jembatan antara klien internet dan komponen.
Layanan Divisi Asp dan Komponen
ASP paling umum digunakan untuk membuat file HTML atau XML untuk digunakan oleh klien di server, jadi kami terutama membahas skenario penggunaan ini. Ini menimbulkan pertanyaan umum: jika halaman ASP ada di server, maka apakah mereka termasuk bagian dari lapisan bisnis? Di dunia komponen, jawabannya biasanya tidak. Sementara ASP berjalan di server dan mungkin berada di ruang yang sama dengan server aplikasi, ini tidak menjadikannya bagian dari logika bisnis.
Dengan alat antarmuka pengguna yang tumbuh atau karena lebih banyak solusi bisnis-ke-bisnis diaktifkan, perbedaan yang jelas ini akan melunasi hadiah besar.
Karena itu, mari kita lihat beberapa kriteria divisi lapisan bisnis dan presentasi yang paling penting:
Pisahkan kode UI dari logika bisnis. Ini termasuk kode penulisan yang digabungkan ke UI, seperti menggunakan objek MTS yang menggunakan komponen internal ASP untuk memisahkannya dari kode logika bisnis, seolah -olah berada dalam DLL yang berbeda.
Transaksi terpisah dari halaman ASP. Transaksi ASP sangat baik dalam beberapa kasus, tetapi komponen dan aplikasi multi-tier mengubah ini. Komponen tidak boleh bergantung pada lapisan klien untuk mengelola transaksi dan semantik logika bisnis mereka.
Tempatkan komponen yang mewakili (komponen yang menggunakan permintaan dan respons) di mesin dan/atau proses yang sama dengan server web. Jika objek yang menggunakan objek komponen internal ASP ditempatkan pada mesin jarak jauh, semua panggilan ke komponen internal akan terjadi dalam formulir callback. Server COM+ yang memanggil klien IIS adalah server COM+, yang secara signifikan mengurangi kinerja dan memperumit konfigurasi keamanan. Objek tweak ini dapat ditempatkan di "aktivasi perpustakaan" yang ditandai COM+.
ASP ada di server, sehingga halaman ASP harus mematuhi aturan berbagi sumber daya dan ingatlah skalabilitas. Silakan lihat detail di bawah ini:
Dalam "sesi", manajemen harus mencoba menghindari status khusus pengguna.
Simpan ASP tanpa kewarganegaraan dan biarkan kumpulan sumber daya jika memungkinkan.
Metode operasi
Saat mengevaluasi apakah segmen kode milik logika bisnis atau lapisan presentasi, tanyakan pada diri sendiri, "Jika saya harus mengganti halaman ASP saya dengan aplikasi telepon tipe tombol, apakah kode itu masih berguna?" Jika jawabannya adalah "Ya", Anda dapat mencoba membaginya menjadi kode logika bisnis atau kode pembantu antarmuka pengguna.
Jika kode tidak dapat digunakan setelah mengubah klien, atau jika itu adalah penolong untuk membangun antarmuka pengguna, kode tersebut milik lapisan layanan representasi. Itu ada di halaman ASP, atau dalam komponen yang menggunakan komponen internal ASP. Itu bukan milik komponen objek bisnis.
Pahami perbedaan antara desktop dan klien ASP
ASP adalah klien khusus komponen, tidak seperti aplikasi Win32 tradisional tunggal di desktop. Perbedaan utama dirangkum sebagai berikut.
Manajemen Thread: ASP adalah klien multi-threaded. Ini berarti bahwa mungkin ada banyak kegiatan bersamaan yang berjalan bersama, mungkin menangani halaman ASP yang berbeda secara bersamaan. Ini berarti bahwa objek tidak dapat dibuat untuk secara salah mengklaim bahwa itu adalah satu -satunya pengguna yang secara eksklusif menempati sistem. Melakukan hal ini dapat menyebabkan reaksi yang tidak terduga, misalnya, untuk mengembangkan kebiasaan buruk menyimpan objek dalam sesi ASP atau variabel aplikasi.