GraphEngine的核心 TSL

栏目: IT技术 · 发布时间: 6年前

内容简介:上次说过GraphEngine不是组件,也不是框架,也不是数据库管理系统,他是一个引擎。那么,GraphEngine到底是什么呢?要更好的理解,我们先看一张图上面那张图很有意思,中间的TSL简直是所有能力的核心,TSL在做三件事情

上次说过GraphEngine不是组件,也不是框架,也不是数据库管理系统,他是一个引擎。那么,GraphEngine到底是什么呢?要更好的理解,我们先看一张图

GraphEngine的核心 TSL

上面那张图很有意思,中间的TSL简直是所有能力的核心,TSL在做三件事情

  • 数据建模。理解我们的数据模型(Data Modeling)通过IDL让TSL理解 数据交换
  • 消息传递协议定义,通过ICE Slice规范实现数据的传递(Message Passing Modeling)
  • 消息交换规则定义,以Google Protobuf规范实现数据交换(Data Interchange Format Specification)

这样的好处是

  • 客户端和服务器不需要用同一种语言来编写
  • 传输数据量比传统的json、xml相比非常小、解析非常快
  • 数据通讯的时候无需序列化和反序列化

所以TSL是GraphEngine的核心。TSL一种声明性的编程语言,由于遵守了ICE Slice规范编译器可以将Slice定义编译转换为其他语言的数据类型和API。理论上支持支持C++, Java, C#, Python, Objective-C, Ruby, 和PHP。Slice只定义数据类型和接口,并不实现。TSL在C#中做了实现。

所以我们需要先确保安装了上篇要求的插件GraphEngineVSExtension.vsix插件,该插件支持TSL语言的编写,提示和编译为C#。

TSL语言非常接近C#,或者说TSL的所有语言规范和C#是一致的,因此

TSL中的保留关键字由三部分组成:所有C#关键字,TSL关键字和原始数据类型。

保留的TSL关键字

GraphEngine的核心 TSL

TSL内置类型

GraphEngine的核心 TSL

TSL的代码结构

脚本包含声明:TSL script inclusion statement

单元:Cell construct

枚举:Enum construct

结构:Struct construct

协议:Protocol construct

服务器:Server construct

代理:Proxy construct

这些代码结构里,Struct结构好像已经没有什么用处。我们用的最多的是cell代码结构。在之后的篇章我们会来看看代码怎么写。


以上所述就是小编给大家介绍的《GraphEngine的核心 TSL》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Pro Django

Pro Django

Marty Alchin / Apress / 2008-11-24 / USD 49.99

Django is the leading Python web application development framework. Learn how to leverage the Django web framework to its full potential in this advanced tutorial and reference. Endorsed by Django, Pr......一起来看看 《Pro Django》 这本书的介绍吧!

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

MD5 加密
MD5 加密

MD5 加密工具