"Concept Application Server and GyroGears an open source system to build cloud solutions" by Eduard...

23
Concept Application Server(CAS) and GyroGears Eduard Șuică www.radgs.com eduard (a) radgs.com

description

This is a presentation held at eLiberatica 2009. http://www.eliberatica.ro/2009/ One of the biggest events of its kind in Eastern Europe, eLiberatica brings community leaders from around the world to discuss about the hottest topics in FLOSS movement, demonstrating the advantages of adopting, using and developing Open Source and Free Software solutions. The eLiberatica organizational committee together with our speakers and guests, have graciously allowed media representatives and all attendees to photograph, videotape and otherwise record their sessions, on the condition that the photos, videos and recordings are licensed under the Creative Commons Share-Alike 3.0 License.

Transcript of "Concept Application Server and GyroGears an open source system to build cloud solutions" by Eduard...

Page 1: "Concept Application Server and GyroGears an open source system to build cloud solutions" by Eduard Suica @ eLiberatica 2009

Concept Application Server(CAS)and

GyroGears

Eduard Șuicăwww.radgs.com

eduard (a) radgs.com

Page 2: "Concept Application Server and GyroGears an open source system to build cloud solutions" by Eduard Suica @ eLiberatica 2009

A traditional application server

• Often http-based (http requests)

• Unidirectional, because of the http protocol: only the client makes requests, server events being emulated (e.g.: by using timers)

• Caries the business logic in multi-tier architecture (this we will keep)

Page 3: "Concept Application Server and GyroGears an open source system to build cloud solutions" by Eduard Suica @ eLiberatica 2009

Concept Application Server

• concept:// based

• The concept:// protocol is bidirectional, enabling real time server events

• Caries the business logic in multi-tier architecture

• Also, can handle http://-based applications as a feature not as a purpose

• Cross-platform, open source, interoperable

Page 4: "Concept Application Server and GyroGears an open source system to build cloud solutions" by Eduard Suica @ eLiberatica 2009

Concept Application Server –System architecture

CAL= Concept Assembly Language

Page 5: "Concept Application Server and GyroGears an open source system to build cloud solutions" by Eduard Suica @ eLiberatica 2009

Interface level

• CAS exchanges messages with Concept Client

• Messages run from client to server and from server to client, similar to win32 messages

• concept:// is secured

• CAS is powered by Concept Programming Language (with hundreds of classes and thousands of helper functions)

Page 6: "Concept Application Server and GyroGears an open source system to build cloud solutions" by Eduard Suica @ eLiberatica 2009

Concept Programming Language

• Strict object-oriented

• Traditional syntax, similar with Java, C#, C++

• Hybrid interpreter/virtual machine

• Produces binary code OS-independent

• Exceptions, properties and all the typical things you’re used with

• Rich framework

• Has debugger and on-line IDE called CIDE (open source), written in Concept

Page 7: "Concept Application Server and GyroGears an open source system to build cloud solutions" by Eduard Suica @ eLiberatica 2009

How does CIDE look ?

Page 8: "Concept Application Server and GyroGears an open source system to build cloud solutions" by Eduard Suica @ eLiberatica 2009

Design view - glade

Page 9: "Concept Application Server and GyroGears an open source system to build cloud solutions" by Eduard Suica @ eLiberatica 2009

Remember, it’s on-line

• After installing CAS on your system, you just type in your browser:

concept://localhost/CIDE/cide.con

Page 10: "Concept Application Server and GyroGears an open source system to build cloud solutions" by Eduard Suica @ eLiberatica 2009

concept://…/CIDE

• Comes with tools like

– Design view with glade

– Syntax highlight and code completion with scintilla

– Team chat

– SQL Panel

– Integrated framework help

– a deployment system

– Integrated debugger and web-debugger

Page 11: "Concept Application Server and GyroGears an open source system to build cloud solutions" by Eduard Suica @ eLiberatica 2009

The internal messaging system

• CAS has an internal messaging system that allows a web application to communicate in real time with a concept:// application

• This is useful when we have a front-end traditional web application and a backend concept:// application. (for example orders from a website).

Page 12: "Concept Application Server and GyroGears an open source system to build cloud solutions" by Eduard Suica @ eLiberatica 2009

Security

• Managed by an RSA/AES system, similar to TLS

• In about two months will switch to TLS

Page 13: "Concept Application Server and GyroGears an open source system to build cloud solutions" by Eduard Suica @ eLiberatica 2009

GyroGears

• Automatically generate the application, the framework and the CIDE project

• Builds an abstract data layer (no direct access to the database is needed)

• Dramatically reduces the development time for cloud data-driven applications

• Reduces the bug probability

• Generates optimal code

Page 14: "Concept Application Server and GyroGears an open source system to build cloud solutions" by Eduard Suica @ eLiberatica 2009

GyroGears (cont)

• Handles complex data types like multimedia (video/audio streaming)

• Automatically generates reports

• Automatically writes the help pages based on language templates

• Can be installed for free but not open source(yet)

• Generates XML export/import interfaces

• Can create both concept:// and http:// applications

Page 15: "Concept Application Server and GyroGears an open source system to build cloud solutions" by Eduard Suica @ eLiberatica 2009

A sample application

• 20 min

Page 16: "Concept Application Server and GyroGears an open source system to build cloud solutions" by Eduard Suica @ eLiberatica 2009

A sample http:// application

By using GyroGears you can create complex http://-based application in no time.For this sample, about 10 to 14 hours of work were needed, mostly for the UI.

Page 17: "Concept Application Server and GyroGears an open source system to build cloud solutions" by Eduard Suica @ eLiberatica 2009

How it works

• The developer defines the entities and properties (similar to tables and columns), but more high level. Some data types are:

– multimedia – can keep and stream video/audio

– picture – can keep pictures, resize them, cache various sizes

– string types

– relations

Page 18: "Concept Application Server and GyroGears an open source system to build cloud solutions" by Eduard Suica @ eLiberatica 2009

How it works (cont.)

• The developer defines the behavior and restriction for a given data type

• Define the search fields, the indexed data (indexes are built using Xapian or Lucene)

• Generate advanced reports using an XML-style language

• Define basic activities and workflows

• Generate the CIDE project

Page 19: "Concept Application Server and GyroGears an open source system to build cloud solutions" by Eduard Suica @ eLiberatica 2009

GyroGears will generate

• The entire cloud application (concept:// and/or http://)

• Normalizing queues for videos

• Indexing queues for text

• The help pages for your application (in English, for any other language, you can create a template)

• Language tables (XML, for multi-lingual support)

• Reports

• XML schemas for export/import and “translation” scripts for importing from other applications

• Framework for traditional development (if necessary)

Page 20: "Concept Application Server and GyroGears an open source system to build cloud solutions" by Eduard Suica @ eLiberatica 2009

The Gyro-generated framework

• Additional layer for accessing the database (an abstract layer)

• Low bug probability

• Minimizes the development time (if used as an independent library)

• With many methods for accessing data, eg:

var []result=Company::GetByName(“RadGs”);

Page 21: "Concept Application Server and GyroGears an open source system to build cloud solutions" by Eduard Suica @ eLiberatica 2009

Fun things

• In Concept is easy to write virtually anything.

• For example, a browser using the webkit-gtklibrary.

• Or a PDF reader using the included popplerlibrary, or maybe a video database using ffmpeg …

• All is included in the Concept distribution, you just need to play !

Page 22: "Concept Application Server and GyroGears an open source system to build cloud solutions" by Eduard Suica @ eLiberatica 2009

Concept WKB(webkit browser)

Page 23: "Concept Application Server and GyroGears an open source system to build cloud solutions" by Eduard Suica @ eLiberatica 2009

Thank you, kind developers!