Mekanisme Cluster DOT
Bahasa DOT memperlakukan subgraf dan cluster secara berbeda. Untuk membuat sebuahCluster, pengenal subgraf Andaharusdimulai dengan awalancluster_. Ini adalah persyaratan sintaks wajib; jika Anda menghilangkan awalan ini, mesin tata letak akan memperlakukan kelompok tersebut sebagai pengelompokan logis sederhana tanpa batas visual atau pengisian latar belakang.
Mengapa Cluster Penting untuk Arsitektur
Cluster berfungsi sebagai ‘lingkup’ dokumentasi Anda. Dengan menempatkan komponen di dalam cluster, Anda menyampaikan kepada pembaca bahwa elemen-elemen ini berbagi lingkungan yang sama, zona keamanan, atau siklus hidup. Ini sangat penting untuk:
- Visualisasi Multi-Cloud:Mengelompokkan node berdasarkan VPC, wilayah, atau zona ketersediaan.
- Isolasi Mikroservis:Menunjukkan layanan mana yang termasuk dalam domain fungsional mana.
- Audit Keamanan:Menunjukkan secara visual komponen mana yang berada di dalam perimeter yang dilindungi (misalnya, cluster ‘DMZ’).
Konfigurasi Cluster Lanjutan
Cluster mendukung seluruh kumpulan atribut Graphviz, memungkinkan Anda menata sendiri wadah tersebut. Anda dapat menetapkan warna latar belakang, gaya batas, dan label deskriptif untuk memastikan cluster berfungsi sebagai bagian resmi dari dokumentasi.
digraph EnterpriseCloud {
// Pengaturan graf global
compound=true; // Diperlukan agar sisi dapat melintasi batas cluster
subgraph cluster_aws_vpc {
label = "VPC Produksi AWS";
style = filled;
color = abu-abu muda;
node [style=filled, color=putih];
"App_Server_01" -> "Database_Primary";
}
subgraph cluster_on_prem {
label = "DC Warisan Lokal";
style = putus-putus;
color = biru;
"Legacy_Mainframe";
}
// Sisi melintasi batas cluster
"App_Server_01" -> "Legacy_Mainframe" [lhead=cluster_on_prem];
} 
Praktik Terbaik Cluster Strategis
- Aktifkan
compound=true: Saat bekerja dengan kluster, selalu aturcompound=truepada tingkat teratas dari digraf Anda. Ini mengaktifkan atributlhead(kepala logis) danltail(ekor logis) atribut, memungkinkan Anda menggambar tepi yang dimulai atau berakhir tepat di tepi kotak kluster, bukan di dalamnya. - Pertahankan Hierarki Visual: Gunakan warna dan gaya secara konsisten. Misalnya, gunakan isian latar belakang lembut untuk kluster “Cloud” dan batas putus-putus untuk infrastruktur “Lama” atau “Sementara”. Ini memungkinkan pengguna untuk menelusuri diagram dan segera memahami gambaran arsitektur.
- Jangan Terlalu Banyak Bersarang: Meskipun Graphviz mendukung penyusunan kluster yang dalam (kluster di dalam kluster), usahakan batasi penyusunan Anda hingga maksimal dua atau tiga tingkat. Terlalu banyak penyusunan menyebabkan perhitungan rute tepi yang rumit, yang dapat membuat diagram sulit dipahami.
- Label Wajib Digunakan: Jangan pernah meninggalkan kluster tanpa nama. Kotak pembatas tanpa label bersifat ambigu; kluster yang diberi label berfungsi sebagai penanda konteks yang pasti untuk semua yang berada di dalamnya.
Menguasai sintaks kluster mengubah diagram Anda dari daftar sederhana node yang terhubung menjadi cetak biru arsitektur yang kaya dan peka konteks. Dengan menentukan batas dengan jelas, Anda memberikan kejelasan kepada pemangku kepentingan untuk memahami interaksi sistem yang kompleks.