下圖表示 uniGUI 服務器的內部結構。 每個 uniGUI 服務器都有一個ServerModule的副本, 每台服務器創建一次, 同時根據用戶活動動態創建和銷毀多個Session。 uniGUI Session包含一個稱為MainModule(多個)的專用DataModule , 它為每個Session自動創建。 它還包含一個名為MainForm的窗體, 它是 Web 應用程序的主要入口點。 如果項目包含 LoginForm,它將在MainForm之前激活, 以提供可靠和安全的用戶登錄方式。 如預期的那樣, 每個Session可以包含幾個附加的DataModules 和窗體。
每次用戶打開 Web 應用程序的新實例時, 服務器都會創建一個新的Session。 Session將保持活動狀態, 直到用戶注銷、關閉瀏覽器/選項卡或超時。 每個Session都保持運行的 Web 應用程序的完整狀態, 以便 uniGUI Session稱為狀態。 您可以將每個Session視為您的 Web 應用程序的專用副本, 它與服務器地址空間中的其他Session共存, 但與所有其他對話隔離。 服務器使用唯一的 "" Session id "創建每個Session, 它用於正確地將客戶端請求與Session關聯 (Session id 始終是 AJAX 請求的一部分)。
如果 uniGUI 應用程序只是一個 isapi 模塊, 則正在運行的服務器將實例化一個 isapi 處理程序。 如果沒有 Web 服務器, 則運行的服務器將啟用其內部 web 服務器。 在這兩種情況下, 對活動 Web 服務器的所有請求最終都將轉到正確的Session。