Yigo技术介绍(Yigo2.0)Yigo技术介绍(Yigo2.0)_第1页
Yigo技术介绍(Yigo2.0)Yigo技术介绍(Yigo2.0)_第2页
Yigo技术介绍(Yigo2.0)Yigo技术介绍(Yigo2.0)_第3页
Yigo技术介绍(Yigo2.0)Yigo技术介绍(Yigo2.0)_第4页
Yigo技术介绍(Yigo2.0)Yigo技术介绍(Yigo2.0)_第5页
已阅读5页,还剩62页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Yigo技术体系介绍Yigotechnicalsystemintroduction目录Yigo技术体系概述Yigo可视化设计核心概念Yigo平台功能介绍集成、性能和可扩展性总结Yigo是什么第五代计算机语言面向业务人员、大大减少代码编程工作量提供了一种用软件生产软件的方法基于Java平台,完全自主开发。开发应用系统不需要使用传统意义上的计算机高级语言编程。Yigo通过图形化描述业务模型,描述完成后,一键生成业务系统。Yigo既是一门新型的计算机开发语言,又具有平台特征。Yigo-图表化信息系统建模语言Excel是一个很好的公用办公工具,不需要太多的培训,使用者自己看工具的说明或图标就能理解使用方法,完成很多的功能操作和数据修改。图表化语言技术在建立应用系统的开发过程不是用代码coding,而是可视化的过程:支持对业务模型的快速实现和调整可视化设计、即时运行OfficeExcelYigo图表化建模Yigo的发展历史Yigo平台=J2EE+基于业务建模的快速系统构建+业务系统、网站、移动APP、微信的一体化集成+易于维护、调整和扩展的信息系统+完善的工作流+集成的ESB/接口服务

系统Yigo平台在技术层面支持管理信息系统对

单据、流程、微信/移动APP、接口、数据导入、可扩展性、可用性、可靠性、性能、安全性等各个方面的功能需求;从底层开始各个功能层面的

可配置、可调整,为保证项目顺利实施和后期功能扩展的可持续性提供了技术保障;业务模式在改变、用户习惯在改变、IT技术在进化,Yigo从根本上为信息系统的

快速实现和持续进化提供了合适的工具;使用Yigo平台作为项目实施的技术平台由业务顾问主导的软件设计与开发方式以博科公司的核心技术体系——Yigo为中心,构建灵活、高效、可扩展的管理信息系统以面向管理信息系统的管理描述语言为基础,通过可视化的设计工具,以业务需求描述驱动应用系统的快速实现系统的搭建和调整。Yigo的内涵和外延核心图表化信息系统建模语言与具体运行平台无关Yigo软件开发机器人可视化的模型设计/描述工具快速、自动化的应用创建和部署扩展运行环境APP集成和部署分布式运行环境扩展功能和应用集成CMS、数据交换、全文检索、…作为更多延伸应用的“模型层基本技术特征符合J2EE标准支持多种软硬件平台(Unix,Windows,Linux,…)支持主流J2EE应用服务器(WebLogic,WebSphere,JBoss,Tomcat,…)支持分布式部署(集群实现负载均衡和热备)B/S

+移动APP支持面向互联网的部署和应用支持各种主流浏览器(IE8+,Firefox,Chrome,…)和桌面操作系统

(Windows,Linux,…)支持多种移动平台面向服务,易于集成支持WebService的发布和调用支持HTTP服务、AJAX调用支持各种主流数据库Oracle、DB2、SQLServer、MySQL、…目录Yigo技术体系概述Yigo可视化设计核心概念Yigo平台功能介绍集成、性能和可扩展性总结“软件生产软件”Yigo摆脱传统方式固有的复杂、繁琐、充满缺陷和难以掌控的局面,从而实现相当高程度的自动化。”“系统建模修正/迭代企业管理DNA调研-三维建模-上线-修正-验收业务蓝图界面元素数据关系Yigo应用建模工具数据模型设计Yigo应用建模工具(2)数据定义数据定义可以独立设计,不依赖业务界面;一套数据定义可以为多个业务界面提供服务;独立性数据定义是可以包含多个数据表的复合结构不仅包含静态结构,而且包含必要的事件、校验等业务逻辑;数据之间的关系以数据对象为基础;领域对象模型Yigo应用建模工具(3)业务数据流设计–数据映射Yigo应用建模工具(4)数据映射通过数据对象之间的关系定义基于数据对象数据映射的定义以函数关系为基础以1-n的函数为基础Yigo应用建模工具(5)汇总和归集–数据迁移Yigo应用建模工具(6)数据迁移通过数据对象之间的关系定义数据迁移的定义以函数关系为基础,把所有的迁移合并成一种迁移以n-1的函数为基础基于数据对象Yigo应用建模工具(7)界面表单设计Yigo应用建模工具(8)面板边界面板流布局面板选项卡拆分面板网格面板线性布局面板自适应网格面板弹性流布局面板Yigo应用建模工具(9)控件Yigo应用建模工具(10)工作流Yigo应用建模工具(11)定义过程中需要完成的事情任务定义过程中完成哪些事情,以何种顺序路由Yigo应用建模工具(12)Yigo微语言通过脚本完成业务功能细节的控制和调整公式+控制

if-else,while,break,return,loop,self/parentJavaScript语法内置JSON支持功能可以使用原生开发进行扩展

(Java,JavaScript,ObjectC,…)目录Yigo技术体系概述Yigo可视化设计核心概念Yigo平台功能介绍集成、性能和可扩展性总结Yigo平台应用–快速实现业务系统功能通过可视化建模工具搭建完整的信息系统支持业务模型的快速规划、调整和测试典型的业务系统界面风格JavaFX本地客户端自动更新具备本地资源操作能力可以应用更高的安全控制措施Yigo平台应用–多种部署方式通过可视化建模工具搭建完整的信息系统支持业务模型的快速规划、调整和测试浏览器客户端,部署灵活支持通过CSS/JavaScript进行风格和布局的调整系统间集成比较方便支持各种主流浏览器和多种操作系统Yigo平台应用-原生APP应用通过Yigo建模工具设计移动应用与Yigo桌面应用共用相同的工具和运行平台一次配置,支持多平台AndroidiOSWinCE技术特点支持各种移动界面显示控件原生支持CSS,显示风格可调整客户端无状态多种数据访问方式Yigo原生协议定制的服务调用非Yigo后端格式数据访问

(JSON/XML)开放可集成支持根据客户要求定制/嵌入支持与原生开发代码的集成组件级集成定制公式集成Yigo平台应用-原生APP应用示例Yigo平台应用-报表和图表支持多种格式设计–汇总、单元格合并、列扩展支持色彩加亮、钻取/过滤、GIS集成等直观的数据展现支持打印格式的在线设计典型的表格式报表Yigo平台应用-报表和图表(2)支持多种格式设计–汇总、单元格合并、列扩展支持色彩加亮、钻取/过滤、GIS集成等直观的数据展现支持打印格式的在线设计支持打印格式设计Yigo平台应用-报表和图表(3)支持各类分析图表支持多种格式设计–汇总、单元格合并、列扩展支持色彩加亮、钻取/过滤、GIS集成等直观的数据展现支持打印格式的在线设计完整的安全控制机制数据加密支持采用SSL进行数据加密支持DLP,保证重要数据不被泄漏,包括DBA也无法获取针对多种攻击手段的防范措施SQL注入

–客户端参数和指令限制、参数化SQL语句跨站脚本–数据在展现前统一进行预处理(转义、危险指令过滤)兼容多种安全措施防火墙、入侵防范、DDOS、恶意代码防范、安全审计完整的安全控制机制(2)用户认证多种用户认证方式:DB,LDAP,AD,…增强认证手段CA认证,支持客户端电子证书USBKeyIP、Mac地址限制数据传输支持采用SSL进行数据加密基于角色的赋权用户因为具有某个角色而获

得相应权限用户可以同时拥有多个角色内建完整的权限控制体系菜单/功能权限单据和字段权限数据权限由管理员设置权限,对程序逻辑透明完整的安全控制机制(3)功能权限完整的安全控制机制(4)单据/字段级权限完整的安全控制机制(5)数据权限应用系统进一步扩展的“模型层”可靠的业务处理可靠的数据模型、业务模型和业务处理逻辑定义强大的可定制,在保证系统完整、自洽的业务结构的同时,支持业务功能快速迭代、调整和扩展前台系统与后台业务的一体化实现网站、APP与后台ERP、物流、财务管理等系统的一体化业务模型的快速规划、调整和测试数据模型、单据、业务流程等业务元素可以在Yigo设计器中快速创建用户可以基于快速创建/修改的业务模型操作执行具体业务并验证其合理性确定后的业务模型可以快速展现为前台页面或者移动APPYigo平台扩展–内容管理通过CMS构建的网站和移动应用通过CMS功能快速产生用于互联网访问的站点和页面模板

–页面框架和内容投放区域定义区块

–页面中具体各个部分内容的产生页面

–通过管理界面将区块投放到模板各个区域,产生用户访问的页面内置CMS系统,提供完善的网站展现和内容管理支持桌面浏览器和移动设备Yigo平台扩展–内容管理(2)内置CMS系统,提供完善的网站展现和内容管理支持桌面浏览器和移动设备CMS后台管理和设计功能Yigo平台扩展–前端页面修饰在Yigo配置的基础上通过简单的前端页面修饰实现用于手机、微信上的执行界面、以及图表统计等特殊显示的软件界面仅仅需要通过JavaScript重新定义页面显示样式,业务实现和测试可以通过设计器完成Yigo平台扩展–前端页面修饰(2)通过“前端页面修饰”实现的ERP产品首页“管理驾驶舱”Yigo平台扩展–前端页面修饰(3)通过“前端页面修饰”实现的同一张业务表单在微信访问时适合手机H5的展示效果目录Yigo技术体系概述Yigo可视化设计核心概念Yigo平台功能介绍集成、性能和可扩展性总结接口和数据集成基于muleESB构建支持可视化的接口设计和管理具有大量与ERP、财务、OA等系统的集成经验基于现实世界的数据集成(接口)需求设计和实现能够快速地解决项目中的数据集成问题能够很容易地进行扩展支持超过30种协议和技术不依赖于特定供应商的专有协议占用内存和磁盘资源少,无需专门的应用服务器图形化的管理和接口流程配置接口和数据集成(2)博科ESB产品:BokeDee基于开源项目“muleESB”

()使用XML文件进行配置,提供可视化配置设计工具以输入->格式转换->输出为基本单元通过服务之间的互相调用,构建接口数据的处理流程支持多种输入输出方式轮询:文件、FTP、HTTP、WebService、消息队列、数据库、邮件等;服务调用:HTTP服务,WebService服务,消息队列触发等;写入文件系统、FTP目录、发送邮件等;写入数据库或者消息队列;以输出数据作为参数,调用HTTP服务,WebService服务等;

支持多种数据格式的转换可处理CSV、XML、Excel、EDI等多种文件格式排序、分组、合并、筛选,以及其它定制操作通过“模板”定制输出文件格式内置数据交换中常用的业务处理组件基础数据查找、日志、多级切分等面对复杂运行环境,保证数据一致性数据库事务或者J2EE容器事务文件操作中采用"重命名"或者"目录移动"等辅助措施基于muleESB构建支持可视化的接口设计和管理具有大量与ERP、财务、OA等系统的集成经验接口和数据集成(3)数据交换管理控制台,及在线接口设计工具通过BokeDEE数据交换引擎的管理控制台,系统提供了图形化的操作界面,方便系统管理和运维人员根据业务需要快速完成数据交换服务和数据访问服务的定义和管理接口和数据集成(4)支持快速的接口服务定义在管理控制台中可以通过定义服务流程的方式,将服务的输入、输出、内部处理流程、路由节点等以图形化界面的方式进行定义接口和数据集成(5)基于后台业务模型,快速发布读/写接口服务在与交换中心管理后台集成后,通过数据交换引擎,可以快速的实现平台业务数据模型资源库的访问服务接口,包括基于标准规范流程的数据读取和数据提交接口和数据集成(6)内置大量接口服务模板基于实际业务需求整理和总结的多种标准接口实现模块,允许快速构建一个可运行的接口服务;支持自定义模板,方便企业和项目个性化配置。接口和数据集成(7)基于“模型层”的接口机制可以和其他ESB系统良好配合,通过SOAP等标准协议访问后台服务;通过接口服务的读/写操作同样受业务逻辑的管控——例如读取数据的权限控制、导入数据的后台逻辑校验等。分布式搜索引擎集成ElasticSearch是一个基于Lucene构建的开源、分布式、RESTful搜索引擎。设计用于云计算中,能够达到实时搜索、稳定、可靠、快速的使用效果,安装使用方便。支持通过HTTP使用JSON进行数据索引。ElasticSearch为网站、APP及业务系统提供强大的分布式搜索功能支持支持对业务对象及文件的实时搜索和全文检索支持多种中文分词的方式,可以根据实际需要进行定制代替数据库进行数据搜索,提高系统在大数据量查询场景下的性能,减轻数据库负担系统在集成ElasticSearch基础上的进一步扩展基于Yigo的业务模型,自动将变化的业务数据同步更新到索引支持使用汉语拼音及拼音首字母作为搜索条件支持“同义词”,支持对系统中的同义词进行管理支持使用SQL语法进行分布式搜索和查询,以代替普及率不高的索引查询语法支持数据权限控制,搜索结果只会包含有访问权限的数据分布式搜索引擎集成(2)支持与管理信息系统集成;支持与CMS前台页面集成;分布式搜索引擎集成(3)可以使用SQL语句来查询索引;易于集成、易于扩展包含ESB系统,支持数据交换和数据接口基于muleESB()、提供管理和在线设计界面包含单点登录系统基于YaleCAS实现(/cas)支持与各类J2EE系统的页面集成和程序集成支持JSP、Struts、Spring、Hibernate等流行J2EE技术支持跨系统/平台的页面集成和数据集成提供REST接口和对应的JavaScript库,实现与其他平台(PHP、ASP.Net、Python等)Web应用集成通过Java等语言可以开发平台的扩展功能提供SDK(开发包)和二次开发文档,支持通过Java开发等方式增强平台的功能易于集成、易于扩展(2)开放和完整的技术支持Yigo开发社区完善的文档,覆盖从简单使用到核心扩展各个层次提供入门培训源码共享协议-为客户和合作伙伴提供API源码易于集成、易于扩展(3)项目定制部分通常,项目中定制部分的Yigo设计模型和二次开发代码均完全开放给

客户,在随项目提供的设计工具的支持下,客户可以阅读、修改和运行产品和解决方案套件产品和解决方案套件是博科基于Yigo设计的针对不同业务系统和不同

行业的设计模型(以及必要的扩展代码),通常也可以开放给客户,允许

客户阅读了解和修改/扩展Yigo

SDK主要是以Java源代码方式提供,包括Yigo核心系统的API层、Yigo后台主要数据模型和对象模型,以及所有Yigo自带表达式函数的实现,这部分代码以SDK的形式提供给客户,允许开发人员阅读和调试,方便客户了解Yigo的设计思路、运行机制和扩展开发原理不开放的部分主要包括Yigo核心代码中授权控制和需要进行知识产权保护的模型解析、数据映射及流程引擎的核心代码,这部分代码仅仅以可执行的jar包方式提供,客户可以运行但不能阅读和修改源码的开放和共享所有源码均基于Java、Servlet、XML等公开技术实现,可以使用eclipse、IDEA等流行的IDE阅读和编辑,支持Maven、Gradle、Ant等主流构建工具。典型部署方式传统的多服务器负载均衡部署示例Yigo系统支持应用服务器层的负载均衡典型技术:代理服务器请求-转发机制通过增加应用服务器硬件满足性能需求应用层不会产生性能瓶颈(最终性能瓶颈会出现在数据库层)对于典型的OLTP系统,在并发请求小于5000/秒的情况下处理效率较高针对更大型的应用,Yigo支持多节点、分数据库的部署方式支持按照业务单元划分处理节点每个节点同时包含应用服务器和数据库,独立处理一定范围的事务业务节点一般会区分为:主数据、业务处理、报表等角色系统为用户提供统一的访问入口业务节点划分在系统中通过XML文件统一定义系统根据节点划分定义,自动完成需要的节点间数据流转,例如:

-主数据需要及时流转到业务处理节点

-业务数据需要及时收集转移的到报表服务器系统性能系统性能(2)系统性能(3)集群部署架构按功能切割按业务数据维度切割支持按照业务单元划分处理节点业务单元和处理节点在控制服务器上集中统一进行管理每个处理节点包含应用服务器和数据库,独立处理一定范围的事务处理节点一般会区分为以下多种角色:主数据、用户管理基础服务(文件存储、缓存)网络服务(CMS、论坛、博客、…)后台业务处理、报表分析系统为用户提供统一的访问入口系统根据节点划分定义,自动完成需要的节点间数据流转,例如:主数据需要及时流转到业务处理节点业务数据需要及时收集转移的到报表服务器分布式部署通过多节点、分数据库部署的实现对高并发和大数据量的支持分布式部署(2)Yigo分布式部署实现概要分布式部署案例案例:晟邦物流–系统部署南京晟邦物流有限公司专营电商物流后期配送和代收货款(COD)业务,是江、浙、沪、皖、三省一市代收货款和配送网络全境覆盖无盲区的专业配送公司。

目前,晟邦物流是天猫商超、当当网、1号店、酒仙网、好享购物、聚美优品、阳光保险、中粮我买网、飞牛网、拼好货商城、易果网、饿了么等电商在江、浙、沪、皖四地的主要配送代理商。370个用户并发访问从接单,入库,出库,到货,领货,配送反馈6个请求过程在5小时15分钟内的700万多次请求中,约有0.01%失败(失败原因是响应时间大于200ms造成的)TPS最大到400,最低200,平均370,超过目标值202完全满足双11的单量要求。分布式部署案例(2)在线用户数:最低1106并发;峰值3013并发。订单量:11月11日-11月15日期间订单合计约510万单。系统操作:仅TMS操作7000万次,整个系统操作超过10000万次。双11期间,系统整体运行稳定,服务器压力并未达到峰值,应用系统未出现bug以及其他异常情况;在不考虑操作员操作能力的情况下,当前构架下系统还有很大的承载空间,预计系统可以承受每天1500万订单的压力。案例:晟邦物流–双11实际业务量目录Yigo技术体系概述Yigo可视化设计核心概念Yigo平台功能介绍集成、性能和可扩展性总结总结:特点和优势简单高效消除了绝大部分代码,实施效率高有效避免代码开发引入的执行效率问题有效减小项目规模,节约管理成本易于学习和掌握安全、稳定可靠面向业务模型,避免因代码开发引入的Bug自主开发,仅依靠完全开源的系统软件就能运行在语言层面实现权限、流程等安全控制点用户可介

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论