"Concept Application Server and GyroGears an open source system to build cloud solutions" by Eduard...
-
Upload
eliberatica -
Category
Technology
-
view
648 -
download
3
description
Transcript of "Concept Application Server and GyroGears an open source system to build cloud solutions" by Eduard...
Concept Application Server(CAS)and
GyroGears
Eduard Șuicăwww.radgs.com
eduard (a) radgs.com
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)
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
Concept Application Server –System architecture
CAL= Concept Assembly Language
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)
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
How does CIDE look ?
Design view - glade
Remember, it’s on-line
• After installing CAS on your system, you just type in your browser:
concept://localhost/CIDE/cide.con
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
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).
Security
• Managed by an RSA/AES system, similar to TLS
• In about two months will switch to TLS
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
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
A sample application
• 20 min
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.
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
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
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)
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”);
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 !
Concept WKB(webkit browser)
Thank you, kind developers!