技术笔记:X+(xPlus)部署指南

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS MySQL,高可用系列 2核4GB
简介: 技术笔记:X+(xPlus)部署指南

1. 关于“X+”


2. 平台组成


3. 应用设计规范


4. 应用界面示例


5. 平台部署准备工作


6. 服务器软件安装


7. Web Service安装


8. X+用户登录与鉴权


9. X+应用的部署(快速篇)


10. BizXML自动化工具


11. 开发者模式


12. X+Logic表格逻辑规则引擎


13. X+之NOSQL支持


14. X+与IOT


15. X+应用的部署(专业篇)


1. 关于“X+”


“X+”是一套集开发环境与运行环境于一体的轻量级5S(Simply)软件平台,旨在将各种应用的个性化定制、部署及使用等简单化,适用于互联网+、大数据、云计算、BI、O2O、CRM、OA、ERP、知识库、企业信息化、呼叫中心、智慧城市、数字工厂、智能车间等应用软件的开发和个性化定制,同时它还是跨平台、安全、高效并支持应用专属定制的SOA软件应用运行平台,很好的解决了应用多样化、个性化、差异化问题,其应用界面、数据关系、业务逻辑均可按照用户的需求在线修改,定制的应用无需调整即可兼容电脑APP、手机APP、Web浏览器等方式访问。稳定好用、符合用户习惯、跨平台用户体验相同、易个性化定制。


平台以软件开发和应用设计相分离的核心思想,以简化软件应用的设计开发及个性化需求定制为目标,提供高效稳定的跨平台软件应用的快速个性化定制平台,依托该平台:软件应用设计无需专业的软件开发人员即可完成,并可随时随地修改调整如应用逻辑、显示界面等等,既大大降低软件应用的开发难度,还缩短应用上线周期,也大幅减少开发成本,其极大的灵活性极大的方便应用最大限度的贴合业务/客户需求。


平台以C/S架构为主(提供PC、手机客户端)、B/S架构为辅(提供兼容的Web Service),提供涵盖但不限于数据采集、分析处理、执行的多媒体信息通信功能,方便各类信息通过PC、手机、平板电脑及各类软硬件(如传感器)信息输入采集,传送至服务器通过算法仓库进行处理后进行显示或驱动相应执行元件输出或驱动硬件执行。


平台特点:


1. 业务运行平台,即可以承载大量不同行业不用类型的多用户差异化业务应用(不同于一个平台只能提供单一应用);


2. 定制灵活简单,超强个性化能力,无需软件开发人员参与便能快速按需定制应用,应用设计类似于WORD、PPT之类文档编辑保存发布,同时节约应用开放成本和开发周期达90%;


3. 跨平台一次定制,多平台设备兼容,即所定制的应用同时支持客户端、浏览器,无需单独为手机/平板电脑等设备单独定制APP;


4. 兼容性强,经测试可以在目前所有PC、智能终端上运行良好,无用户人群限制,最大限度保证用户便捷;(Windows2000以上任何版本,Android2.3以上(含64位),Web:IE8及以上及其他浏览器)


5. 该平台同时融合了多媒体通信,并且开放简单易用的类COM第三方软硬件接口,方便各类硬件如传感器、马达等以及软件融入系统;


6. 稳定高效,响应速度快,即使WEB访问其高执行效率及独特的响应机制给用户客户端的用户体验;


整个平台内核采用C++开发,保证了系统得稳定高效。//代码效果参考:http://www.jhylw.com.cn/310137035.html


2. 平台组成


1、 平台标准规范:BizXML,定义“X+”的界面、数据关系、业务逻辑等,“X+”系统的服务端、客户端、Web服务引擎等遵循该规范并按照该规范处理显示页面执行业务逻辑等;


2、 C/S服务端:“X+”服务器软件,处理客户端的登录及各种请求,配合客户端处理应用逻辑、与数据库通信,并通过接口与第三方软硬件通信、调用AI等引擎及各种算法等;


3、 C/S客户端:Windows客户端、Android客户端等,处理用户登录,根据“X+”应用规定显示界面及处理相应的业务逻辑,通过接口与第三方软硬件通信等;


4、 B/S引擎:“X+”Web服务引擎cgi,提供web方式使用“X+”应用,解析应用的BizXML脚本,处理用户通过浏览器访问及各种请求,处理应用逻辑、与数据库通信,并通过接口与第三方软硬件通信、调用AI等引擎及各种算法等;


5、 类Com接口,开放给第三方软硬件、算法等,实现诸如传感器、马达、AI接口引擎、物联网设备等交互;


6、 表格逻辑xLogic:基于Table的业务逻辑,方便应用逻辑设计,简化逻辑的设计与执行,“X+”的服务端、客户端、Web服务引擎均支持;


7、 BizTool自动化工具,根据数据库表结构自动生成结构化SQL语句、关联页面控件生成应用代码BizXML,可实现0代码应用设计,并提供逻辑调试等;


8、 xLogic逻辑设计测试工具xLogicDesiner,提供可视化表格逻辑的编辑设计调试等。


3. 应用设计规范


“X+”的界面、数据关系、业务逻辑等遵循BizXML标准,请参考


4. 应用界面示例


1) 电脑客户端:


2) 手机客户端


3) 电脑浏览器访问


4) 手机浏览器访问


5. 平台部署准备工作


软件下载


服务器软件:


3UCS Server(Window2000及以上,含Win10)安装程序里打包了X+服务器软件,3UCS命名//代码效果参考:http://www.jhylw.com.cn/394029395.html

其为智能业务平台,对应的执行程序为i3ubi.exe,配置文件为i3ubi.ini,傻瓜式安装即可,安装完成后需自行完成数据库等参数的配置。

下载地址:


软件应用资源包:


WebService的支持采用的是CGI方式,亦打包在3UCS Server安装程序里,需Apache之类HTTP Server配合提供服务。


下载地址:


客户端


下载地址:


【3UCS XOne】


【3UCS NISU】


Android客户端(Android2.3及以上,含64位)


下载地址:


iOS客户端:应该在2020年发布请关注下载页面:


6. 服务器软件安装


(工作于C/S(客户机/服务器)模式)


3UCS命名其为智能业务平台,对应的执行程序为i3ubi.exe,配置文件为i3ubi.ini,傻瓜式安装即可,安装完成后需自行完成数据库等参数的配置。


管理界面可:管理初始帐号:3ucs,无密码,主要是配置数据库部分,其他的不用管。


7. Web Service安装


提供X+对web浏览器的支持,采用CGI方式,需Apache等支持,经测试主流浏览器访问均正常(IE8及以上、firefox……


参见安装目录下help/install(of BizXML for web).htm


(Apache下载地址:)


8. X+用户登录与鉴权


用户登录时系统依照下述顺序逐一鉴权至成功,一旦成功即返回忽略后续鉴权方式:


1、i3ubi配置的【SQL】用户鉴权


2、i3ubi配置的【AltAuthSql】用户鉴权


3、xrulelayout.xml(layout目录,使用xLogic查看编辑修改)基于domain的用户鉴权及Anoymous页面


自带应用与账号登录【为安全起见,请及时修改这些账号的初始密码】


服务器安装完成后在3UCS Server安装目录下的Layout/demo文件夹会有默认应用“Example5.xml”,使用账号“6178”密码“6178”登录默认使用的就是该应用。


同时可能还默认安装了“layout\demo\btsqlite.xml”、“layout\demo\btmssql.xml”、 “layout\demo\btmysql.xml”三个应用,默认配置的账号分别是“6179”、“6176”、“6177”,密码均为“123456”,SQLite数据库应该默认安装成功,如果您需要测试MSSQL、MySQL(MySQL还需要安装ODBC驱动,下载地址则需要您自行安装数据库并配置好数据库连接,这三个数据库版本都带有BizTool自动化工具,您可以使用他们来生成您想要的应用页面。


下列图例分别为6178、6179、6177、6176成功登录后显示的界面:


需要注意的是应用的根文件(如“btmysql.xml”)需要您配置数据库相关参数,例如:


MySQL


localhost


mylayout


utf8


NO_BACKSLASH_ESCAPES


i3u


i3u


……


……


9. X+应用的部署(快速篇)


添加应用:将新的应用解压至某个文件夹,例如将应用“test”的文件解压至安装目录下“layout/test”,应用的根文件为“test.xml”,那么我们可以在默认应用的用户管理里添加账号“6170”,对应的应用(窗体布局)为“layout/test/test.xml”,,使用6170账号登录便呈现的是“test”。


您也可以用户鉴权全部交由您自己的应用来完成,这时您需要注意:


1) 使用xLogic(xLogicDesigner)打开3UCS Server安装目录下“layout/xrulelayout.xml”编辑并编译规则保存为原文件,下图示将所有未添加的用户的应用设置为layout/ucin/mylayout.xml:


2) 如需鉴权需在前述…………配置类似语句(需返回“password”: select u.user_password as Password,u.user_code,r.role_layout as layout,r.case_owner,u.bizdep,u.bizrole,u.active,r.role_purview as purview from userlogin as u left join bizrole as r on u.bizrole=r.role_id where user_name='%{UserName}'


3) 使用应用的用户不应该出现在前述“用户管理”里。


【 注:本处为快速简单部署,实际项目部署应该是单应用或单类型数据库,可按照专业部署指南来实施。】


10. BizXML自动化工具


自动根据数据库结构生成BizXML应用代码


参考:


11. 开发者模式


3UCS XOne客户端提供了xPlus的“开发者模式”,开发者可以在该模式启用后查看控件应用代码、控件属性、参变量及事件触发序列等,也可以在线修改属性来调整修改UI或业务逻辑逻辑等。


开启“开发者模式”需在服务端设置,i3ubi.ini有两个参数需配置“Secret”,“Developer”,也可以通过web方式修改()。


保密:secret,默认为true,即客户端不能查看应用代码,也不可以开启开发者模式修改调试应用


开发者:developer,是否开启或何种方式开启开发者模式,默认关闭,值为“1”开启代码查看,值为字符串(密码MD5值,可以通过XOne的“Get MD5”菜单生成)则输入授权码与该值匹配才可以开启开发者模式(可编辑),该可以是纯密码(授权码),亦可以是登录名+密码,也可以是登陆用户的sessionId(每个用户每次登录的sessionId都不一样,可在服务端log日志查到)。


参考:


12. X+Logic表格逻辑规则引擎


x+Logic介绍及 Designer可视化编辑/设计工具


参考:


13. X+之NOSQL支持


3UCS NoSQL


NoSQL是基于google的LevelDB二次开发的时序数据库,并提供SQL语法支持。


ID为记录插入的时间ms(毫秒)值,score为ID的分钟值即Value(ID)/6000。


iot数据库拥有key“topic”,immsg数据库拥有key“recvfrom”“sendto”


查询语句类似于MySQL语句,默认倒序查询,select 【columns】 from 【table】 where 【where】 order by order limit 【limitstr】 key 【keystart】 score 【score】


limit的offset可略去即limit 0,100;limit 100;limit ,100都合法,都是取前100条记录


score可以指定score_start,score_end;例如score 0,100000;score 10000;score ,1000000均合法,另外可以使用时间值来设置score,例如score 1 hour ago 表示查询一小时前的;score ,1 hour ago表示查询现在至一小时前的记录;score 2021-05-01表示查询2021-05-01之前的记录


示例:


select from iot;


select from iot where topic='xxx';


select from iot limit 0,100 score ,4 week ago


select %{dev_data【columns】} from iot where topic='%{dev_data【dev_type】}/%{dev_data【dev_id】}/%{dev_data【data_id】}/%{dev_data【data_param】}' limit 0,100 score ,4 week ago


select from iot limit 100 score now();


select from iot where topic='%{mqtt_topic}' limit 0,100 score now(),2021-05-05 20:10


select from iot where topic='devices/desoutter01/sys/61/detail' and key='%{YU5A4A554012100410003818643410}'


14. X+与IOT


3UCS IOT


IOT 支持包括但不局限于MQTT(包括MQTTSN)、Modbus、Open Protocol、PLCS12、OPC、OPC UA、Serial Port、MTConnect、SNMP、PROFINET、NC-LINK等协议,并提供接口方便动态增加其他未知协议。


MQTT端口默认配置为TCP/UDP:998(MQTT/MQTTSN);web socket:996;


【MQTT】(3UCS xPlus配置文件i3ubi.ini之MQTT节)


# MQTT section (tcp ports)


mqtt_iface = eth0


mqtt_port = 998


mqtt_tls_port = 997


mqtt_ws_port = 996


mqtt_ws_tls_port = 995


# MQTT-SN section (udp port)


mqttsn_iface = eth0


mqttsn_port = 996


其它协议如Modbus、Open Protocol、PLCS12等都在daq.conf文件配置,采用的xml格式。示例如下:


相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
数据可视化 算法 定位技术
SWMM从入门到实践教程 01 SWMM软件介绍
SWMM(Storm Water Management Model)是一款用于城市暴雨径流模拟和城市雨水管理的计算机软件。SWMM软件最初由美国环保局(EPA)开发,现在已经成为一个广泛使用的软件,用于设计、规划和管理城市排水系统。
|
机器学习/深度学习 存储 人工智能
Gradio入门到进阶全网最详细教程[一]:快速搭建AI算法可视化部署演示(侧重项目搭建和案例分享)
Gradio入门到进阶全网最详细教程[一]:快速搭建AI算法可视化部署演示(侧重项目搭建和案例分享)
|
3月前
|
设计模式 监控 算法
成为工程师 - 搭建系统先搭建框架
成为工程师 - 搭建系统先搭建框架
|
5月前
|
数据可视化 BI OLAP
技术经验分享:DundasBI简介
技术经验分享:DundasBI简介
42 0
|
5月前
|
NoSQL Linux Shell
技术笔记:linux系统开发基础
技术笔记:linux系统开发基础
39 0
|
5月前
|
XML 图形学 C++
技术经验分享:ASSIMP概述
技术经验分享:ASSIMP概述
85 0
|
小程序 JavaScript 前端开发
小程序云开发全套实战教程(最全)
小程序云开发全套实战教程(最全)
130 0
|
运维 安全 Linux
【运维知识进阶篇】手把手教你搭建OpenVPN(保姆级教程)(一)
【运维知识进阶篇】手把手教你搭建OpenVPN(保姆级教程)
10460 1
|
运维 Linux 网络安全
【运维知识进阶篇】手把手教你搭建OpenVPN(保姆级教程)(二)
【运维知识进阶篇】手把手教你搭建OpenVPN(保姆级教程)(二)
5450 0
|
IDE Serverless API
阿里云云开发实践笔记【1】
阿里云云开发实践笔记
210 0