下图表示 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。

uniGUI 应用程序体系结构(11)的更多相关文章

  1. 微信小程序0.11.122100版本新功能解析

    微信小程序0.11.122100版本新功能解析   新版本就不再吐槽了,整的自己跟个愤青似的.人老了,喷不动了,把机会留给年轻人吧.下午随着新版本开放,微信居然破天荒的开放了开发者论坛.我很是担心官方 ...

  2. 《算法》第四章部分程序 part 11

    ▶ 书中第四章部分程序,包括在加上自己补充的代码,二分图的判定和染色 ● 二分图 1 //+------------------------------------------------------ ...

  3. 第1章 .Net应用程序体系结构

    1. CLR:公共语言运行库,是每种.Net编程语言都使用的运行库 Windows 8为Windows Store应用程序引入了一个新的编程接口:Windows运行库. C# 6 具有许多小而实用的语 ...

  4. H面试程序(11): 判断字符串是否包含子串问题

    题目描述:                        如字符串str1为''abcdef'''                       字符串str2为'' bc''; 则字符串str1中含有 ...

  5. 微信小程序(11)--购物车

    今天记录一下购物车案例,实现购物车的全选,单选,数量加一减一,金额总数,以及清空购物车. <view class="main"> <!-- hasList 列表是 ...

  6. uniGUI学习汇总

    UniGUI之UniLabel(31) uniGUI之自定义JS事件动作ClientEvents(30) uniGUI之文件下载(29) uniGUI之FDQuery(28) uniGUI之UniPo ...

  7. [C++ Primer Plus] 第11章、使用类(一)程序清单——重载 P408

    程序清单11.4~11.6(运算符重载——添加加法运算符) //1.h class Time { private: int hours; int minutes; public: Time(); Ti ...

  8. C语言求1-1/3+1/5-1/7+...——小程序,大道理

    问题:用C语言编写程序求1-1/3+1/5-1/7+... 示例: #include <stdio.h> void main(){ ; ,a=; ){ sum=sum+n/a; n=-n; ...

  9. 最强CP!阿里云联手支付宝小程序如何助力双11?

    作为首次“全面上云”的双11,阿里云征服了每秒订单峰值54.4万笔的世界新记录.正是在阿里云的保驾护航下,即使访问量是平时的5到6倍,小程序也鲜少出现卡顿或者宕机的现象,“依靠阿里云,我们整个天猫双1 ...

随机推荐

  1. Java 线程高级

    1.volatile关键字:当多个线程操作共享数据时,可以保证内存中的数据可见,相较于syncronized是一种较为轻量级的同步策略, 注意:1.volatile不具有“互斥性” 2.volatil ...

  2. 2、基本方法(Basic Recipes)

    学习目录:树莓派学习之路-GPIO Zero 官网地址:http://gpiozero.readthedocs.io/en/stable/recipes.html 环境:UbuntuMeta-16.0 ...

  3. 吴裕雄 python 人工智能——基于Mask_RCNN目标检测(1)

    import os import sys import random import math import numpy as np import skimage.io import matplotli ...

  4. 吴裕雄 PYTHON 神经网络——TENSORFLOW 双隐藏层自编码器设计处理MNIST手写数字数据集并使用TENSORBORD描绘神经网络数据2

    import os import tensorflow as tf from tensorflow.examples.tutorials.mnist import input_data os.envi ...

  5. 原生js登录创建cookie

    原生js创建cookie,功能:点击登录按钮时,将用户名.密码存为cookie:页面再次加载时,自动读取cookie中的用户名.密码. <html><head><titl ...

  6. SpringMVC Controller 接收页面传递的中文参数出现乱码

    在Controller中接收到的POST参数如果是中文的话,显示为乱码.已知客户端传过来时编码为UTF-8. 问题产生分析: spring MVC中默认的编码格式为“ISO-8859-1”,因此造成乱 ...

  7. Java AQS 的胡言乱语修正版

    前言 适合读者:3 年以上经验的同学 谈到并发编程,基本上都会想到JDK 的 JUC 工具包,它包含 锁,并发工具类,原子类,线程池,还有阻塞队列,这是从网上找的一个大致的知识体系. 相信这些工具读者 ...

  8. 【笔记7-部署发布】从0开始 独立完成企业级Java电商网站开发(服务端)

    阿里云服务 购买 连接 购买域名 域名备案 域名解析 源配置步骤 资源地址 http://learning.happymmall.com/ 配置阿里云的yum源 1.备份 mv /etc/yum.re ...

  9. 安装pytorch

    安装cpu版本的 conda install pytorch-cpu torchvision-cpu -c pytorch 安装gpu版本的 conda install pytorch torchvi ...

  10. 关于 UIDatePicker 在iOS9 系统上的一个坑

    在使用 UIDatePicker时,在iOS9系统上上遇到一个很奇怪的问题,在其他系统版本中没发现,设置年月日格式显示的视图,在iOS9设备上出现中间月份无法显示的问题: 检查代码没问题,这个视图是使 ...