Saat ini, banyak situs web yang menggunakan ASP tidak menggunakan komponen sama sekali. Saat ini, editor Fooxin Technology Channel secara singkat menjelaskan layanan divisi antara ASP dan komponen. Saya harap Anda akan membantu Anda mempelajari pengetahuan ini.
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 memunculkan pertanyaan umum: Jika halaman ASP ada di server, 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.
Lingkungan Keamanan: ASP dilakukan oleh Internet Information Services 5.0 di situs web, dengan tiga tingkat isolasi: rendah, sedang dan tinggi. Bahkan situs web ini dapat memiliki pengaturan keamanan yang berbeda, memungkinkan atau menolak akses anonim, mengotentikasi pelanggan, dan banyak lagi. Semua pengaturan ini membuat sejumlah besar skema di mana akun pengguna yang berbeda akhirnya menggunakan objek Anda.
Pertumbuhan Mudah: Ini bukan masalah teknis, tetapi efek samping dari fasilitas yang disediakan oleh aplikasi web.
Secara tradisional, menambahkan basis pengguna ke aplikasi desktop membutuhkan perencanaan transfer yang cermat ke jumlah klien yang diketahui. ASP telah mengubah proses. Setelah berjalan dan berjalan, aplikasi dasar ASP-visual dapat dengan mudah dibuka untuk digunakan oleh semua karyawan, semua mitra bisnis dan semua pelanggan secara lokal atau di seluruh dunia.
Ini dapat dijelaskan dengan cara ini - email tunggal dengan hyperlink dapat menumbuhkan basis pengguna sepuluh kali lipat. Apakah aplikasi Anda siap untuk ini? Satu -satunya cara untuk mengetahui adalah melakukan pengujian kekuatan di situs web Anda untuk mendapatkan nilai yang diharapkan dari kinerja aktual.
Bagaimana Anda harus menggunakan objek dasar visual dalam ASP? Buat dan batalkan objek Anda di dalam lingkup halaman.
Artinya, buat halaman asp tanpa kewarganegaraan sebanyak mungkin, dan hanya bergantung pada variabel sesi atau aplikasi dalam keadaan sementara. Jangan menyimpan objek dalam variabel sesi atau aplikasi. Ini mengunci utas ASP ke sesi Anda, membatalkan semua nilai yang diharapkan untuk skalabilitas. Dengan kata lain, jumlah pengguna yang diproses oleh server web tidak akan melebihi lusinan pengguna. Jika Anda perlu menyimpan konten dalam suatu sesi atau aplikasi, buatlah data daripada objek.
Ada banyak pedoman lain yang harus diikuti. Kami menyarankan Anda membaca kolom "Servin’ It Up "yang ditulis oleh JD Meier di MSDN Voices. Kolom ini mencakup berbagai teknik, praktik, dan tip yang membantu mengembangkan aplikasi ASP yang dapat diukur dan dapat diandalkan dan komponen.
Jangan menyimpan referensi di objek VB dalam sesi atau aplikasi
Semua komponen Visual Basic 6.0 adalah "Unit Threads", yang berarti mereka semua berjalan dalam unit STA. Ini berarti bahwa jika suatu objek dibuat di utas, maka semua panggilan ke objek itu harus dilayani oleh utas yang sama. Banyak utas (dari pengguna situs web bersamaan) menggunakan instance yang sama dari objek STA, menyebabkan serangkaian kegiatan yang dapat menjadi hambatan dalam aplikasi.
Selain itu, menyimpan objek STA yang dibuat dengan server.CreateObject dalam ruang lingkup sesi dapat secara efektif menghubungi utas eksekusi ke pengguna saat ini, sehingga membatasi jumlah maksimum pengguna bersamaan dari aplikasi ke 20XN default (n = jumlah prosesor).
Metode operasi
Jika Anda mengikuti rekomendasi kami untuk membuat objek tanpa kewarganegaraan, Anda tidak perlu menyimpan referensi untuk penggunaan kembali klien dan menyimpannya dalam ruang lingkup aplikasi. Klien akan dapat membuat, menggunakan, dan membatalkan objek mereka sendiri secara mandiri. Ini mengurangi kebutuhan untuk menjaga objek khusus sesi karena mereka tidak mempertahankan keadaan khusus sesi.
Cara yang disarankan adalah membuat objek tanpa kewarganegaraan, yang mengakses database atau area penyimpanan lainnya (seperti cookie dan LDAP) bila diperlukan.
Jika Anda perlu menggunakan data sesi atau seluruh aplikasi, simpan data, daripada objek yang memproses data, di sini. Anda dapat membuat kelas yang merangkum pemrosesan nilai yang diinginkan.
Pelajari Konten Baru di IIS 5.0
Informasi Internet Server 5.0 Menambahkan banyak fitur baru. Perbaikan ini telah ditulis ke dalam artikel MSDN JD Meier: Gunakan ASP dalam IIS 5.0 (Bahasa Inggris).
Di atas adalah deskripsi singkat tentang layanan divisi antara ASP dan komponen yang dibagikan oleh editor saluran teknologi baru palsu. Saya harap Anda memiliki lebih banyak pengetahuan tentang aspek ini, yang akan membantu pengembangan ASP.