QAFE

Tag Archives: enterprise applications

Docker

Docker: what, why & how

Who are better suited to explain what Docker is then the creators of Docker themselves?

So here is how they describe Docker on their site: Docker is an open platform for developers and sysadmins to build, ship, and run distributed applications. Consisting of Docker Engine, a portable, lightweight runtime and packaging tool, and Docker Hub, a cloud service for sharing applications and automating workflows, Docker enables apps to be quickly assembled from components and eliminates the friction between development, QA, and production environments. As a result, IT can ship faster and run the same app, unchanged, on laptops, data center VMs, and any cloud.[1]

Containers vs. Virtual Machines

Now, how do containers differ from virtual machines and why should we prefer containers? As depicted in the image below, in the case of virtual machines, multiple guest OS’s are ran on top of the host OS using a (type 2) hypervisor. Every guest OS includes all necessary binaries and libraries.

In the case of containers, multiple containers are ran on top of the corresponding images on top of the host OS using a container engine*. All necessary binaries and libraries are included in the image and all containers created on top of a image will have these available.

This means that a container solution use far less disk space since there are not multiple full blown OS’s necessary. In addition even the binaries and libraries are shared between multiple containers created of the same image.

Another advantage of not having guest OS’s is boot time. The boot time of a virtual machine is for a significant part the boot time of the guest OS. While for containers the “boot” time is mainly the time it takes your application to start up.

container vs virtual machine

On the left a typical virtual machine setup is shown, including multiple guest OS’s on top of a hypervisor. On the right a similar container setup is shown, including multiple containers on top of two images (i.e. a MySQL and an App image) , using a container engine. [5]

Why use Docker?

Reproducible environment

  • Run tests in the same (or a very similar) environment as production.
  • Same environment e.g. every container has all the needed environment variables.
  • Update the environment once and ship the update to all team members e.g. via a Docker image or GIT (Dockerfile, etc.).
  • Automated deployments can be facilitated using Docker images.

Disposable environment

  • Run tests without the, normally necessary, clean-up afterwards, which saves time.
  • An environment to develop/experiment in for which it does not matter if it breaks.

Isolated environments

  • Run one application per environment i.e., no interference of (Oracle) products required by multiple applications.
  • Easily change where applications are hosted i.e. no tedious initial setup.
  • Save hosting costs by hosting multiple applications on the same machine.
  • Each container has its own filesystem. This allows you to run multiple applications that use the same filesystem location, which would otherwise interfere with each other.

Low resource usage

  • Especially in the case of a Linux host environment, since resources of the host operating system are reused. However, also on Windows/MacOSX with e.g. the Boot2Docker virtual machine, since it is very light weight.
  • Every container (instance) is only a small layer on top the image (blueprint).

Have the same resources available for all developers

  • Oracle offers official Oracle Linux Docker images, available on the Docker Hub [2].
  • Also, there are Docker images for Oracle WebLogic [3] and Oracle Coherence [4] which one could use and reduce the number of (difficult) installations.

Perform difficult tasks with only a few commands

  • Please, see the next section.

How to use Docker

First, one needs to describe how the Docker image should be build, i.e. specify the base image (e.g. Oracle Linux 6); environment variables; binaries and libraries that need to be installed; and configuration. This is done by means of a Dockerfile.

Next, the Docker image can be build using the build command, like this: docker build -t image-name /path/to/build-context/. In this case the build-context directory would contain the Dockerfile.

Finally, to create and run a Docker container use the run command, like this: docker run -p 8080:8080 -v /path/on/host:/mount-point/inside/container --name container-name image-name. The previous command uses the earlier created image called: image-name and creates a container called container-name. Additionally, port 8080 inside the container is forwarded to port 8080 on the host and a directory, called /path/on/host, on the host is mounted inside the container on the mount-point called /mount-point/inside/container.

References

[1] https://www.docker.com/whatisdocker/
[2] https://registry.hub.docker.com/u/library/oraclelinux/
[3] https://github.com/oracle/docker/tree/master/OracleWebLogic
[4] https://github.com/oracle/docker/tree/master/OracleCoherence
[5] http://patg.net/containers,virtualization,docker/2014/06/05/docker-intro/

* Docker container technology is, currently, based on the Linux OS. Docker containers can be run on Windows/MacOSX with e.g. the Boot2Docker virtual machine, which itself is very light weight.

Cassandra Summit Europe 2013

Rokesh Jankie and Hallo Khaznadar will speak at the Cassandra Summit on October 17th in London.

pasfoto_rokesh pasfoto_hallo

 

 

 

 

In their session, they will talk about how they combined DataStax and QAFE to process and analyze Call Data Records for a telecommunications provider.

The Cassandra Summit Europe brings industry professionals together to discuss the latest developments in Apache Cassandra. This year’s summit takes place from the 16th till the 18th of October, at the Barbican Center in London. Click here for more information.

QAFE 2013: The roller coaster ride continues!

First of all, the QAFE Team wishes you the best for 2013 and that your dreams will come true. We know what that feels like, because 2012 was like a dream come true for us.

To summarize 2012 for QAFE: It was a roller coaster ride! We’ve been to the Middle East, USA, South America and the Caribbean.

We have met many new (and potential) customers world wide and we opened a brand new office in Silicon Valley.

The 3 years of investments before 2012 were needed to make the impact we wanted to make in 2012. In the meantime, the products became more mature thanks to your feedback!

The focus for 2013 will be on scaling and overall quality. We want to make sure our customers not only get the best software products, but the best service as well.

Our mantra in case you didn’t know:

– Retain your investments made in the past;
– Reuse your technological skills and knowledge;
– Be future proof, don’t switch too much on your technology stack;
– Focus on your business: that’s your real driver!

For 2013 a much more mature development team and even stronger product line up are ready to continue this roller coaster ride in an even higher pace.

Feel free to join this amazing ride with us! As we closely watch markets trends and listen to customer feedback to continuously improve and evolve.

To get in contact with us, please use this form.

QAFE and Mobile Apps

Despite the fact that QAFE Apps already run in all browsers on all platfoms, we wanted to make a specific rendering engine for Mobile Devices. This way developers can further optimize User Experience for that particular (growing) group of users. One of the roadmap items was to have a native look and feel, on top of some other requirements:

  • Native look and feel for Android and iOS devices, with specific themes for specific devices.
  • Reuse the already written QAFE QAML code and just use another engine to render the application to an optimized for mobile version.
  • No stretched components. There are applications around that render perfectly on smaller devices, but when running on a tablet they get stretched out.
  • Device orientation: like reading ebooks on an iPad. When the iPad is in portrait mode the book is in single page, when reading in landscape mode, the book is in double page.

In our labs we are now testing the results for the upcoming release and it’s really cool. It makes mobile apps development faster and easier than it already was. And yes, datagrids, tiles, etc. are all supported. At your fingertips!

 

Keep following us on twitter/facebook/google+/this site for more information on this new feature.

 

If you want to learn more and or visit our labs, contact us anytime!

New QAFE Spring release, get 2.1 today!

What better way to celebrate spring than with a fresh QAFE release! Get the new edition for free here and discover all the new and enhanced features.

QAFE 2.1 Release Notes

Features QAFE Platform

  • Performance enhancement startup of QAFE
  • Data grouping in visual design (on top of visual grouping by means of named panels)
  • Introduction of Timer Events: to execute event when a timer expires
  • Cleaning up code and making code base smaller. Less dependency on thirdparty libraries.
  • Defaulting to Java 6.
  • WebService support directly to business-actions.
  • QAFE Connector Pack: Oracle Policy Automation connector.
  • Tested and verified against Oracle WebCenter.
  • Use of Less for styling applications (the C++ of CSS).
  • Upgrade of the default style.
  • Several Stability and Performance fixes

Features QAFE QAML Builder

  • QAFE One Click Application: Create Master-Detail (Detail, Detail..) screens in seconds!
  • Service Enabling for QAFE from Database and Java.
  • Visual design of event flow.
  • Visual design of Business Action flow.
  • Verification with Oracle Eclipse Enterprise Pack.
  • QAML Application Overview.
  • Integration of the QAML Generator functionality, so that QAML Builder is one complete environment.

Features QAFE Forms Modernization

  • Handling of ORA- error messaging (supporting wildcards).
  • Introduction of QAFE Oracle Forms Statistics to get insight in the complexity of forms.
  • Handling Forms 4.5 also by pre-analyses.
  • Many more improvements on layout and processing of data.
  • Validation of SQL Code against database before processing to correct layer in QAFE.

If you’ve downloaded earlier versions of QAFE, 2.1 is the release you will want to download today, simply go to http://www.qafe.com/free-trial for instant access!

This is it: new QAFE Training!!

Everything you always wanted to know about QAFE in 3 days! This is your chance! After this training you will be able to build applications from scratch, organize your project for reusability and deploy your applications (on virtually the same day you come up with a new  idea!).

More information – or to immediately reserve your place?

For more information, or direct reservation to secure your place for this great opportunity, mail training@qafe.com. We’ll contact you for further details.

 

 

Target audience

Developers: Java or Oracle developers. Web developers. Technical consultants.

Prerequisite

Understanding of basic XML. Preferably has some web development experience. Using Eclipse as an IDE would also be preferred. Level can vary from beginner to expert level developer.

Description

This course will focused on developing QAFE Applications from scratch using QAML and the QAML Builder tool. The developer will learn how the several tiers integrate with each other, how the data retrieval works, how to create business actions and services. Control statements will also handled. The course focus is to have the developers create applications instantly, starting out from simple, to complex, maintainable applications.

Topics

Presentation tier

  • Components
    • Styling
    • Conditional styling
  • Events
  • Built-ins
  • Control flow
  • Global events

Business-tier

  • Setup
  • Combining several services

Integration-tier

  • Setup
  • Input variable mapping

Resource-tier

  • Database resource
    • Statements
  • Java resource
  • Spring resource

Application Configuration

  • Simple application
  • Auto merge possibilities
  • Security
  • Multilingual support

Deployment/Tooling

  • QAML Builder

Duration

3 days, followed by a small theoretical exam on the last day in order to become a Certified QAFE Developer.

The course starts at 09:00AM until 04:30PM.

Trainers

Rokesh Jankie, Reyco Kha, Ravi Nair

Goal

Build applications from scratch, learn to organize your project for reusability, deploy your applications, understand the vision of QAFE.

Costs

1700 EUR (excl Taxes). Including three days of lunch, snacks, drinks, tea and coffee.

What you get

The software and a trial license on a memory stick to continue development after the course.

Location

The course will be held at

Qualogy B.V. Headquarters,

De Bruynkopsstraat 9,

2288EC, Rijswijk.

Phonenr: +31 70319500

Email:  training@qafe.com

If the number of attendees exceeds 10 persons, we are able to relocate to another location.

Dates

Every last week of the month, on Tuesday, Wednesday and Thursday.

If needed we can deviate from this.

More information – or to immediately reserve your place?

For more information, or direct reservation to secure your place for this great opportunity, mail training@qafe.com. We’ll contact you for further details.

 

 

LeWeb and QAFE: Social, Local and Mobile

In one of last weeks LeWeb Keynotes, Google’s Executive Board Member Eric Schmidt, talks about Social, Local and Mobile (see this link http://techcrunch.com/2011/12/07/schmidt-le-web-video/). Three major components for the next generation of applications. QAFE already includes two of those three.

GeoLocation
If turned on in the QAFE Platform, the QAFE Application requests GeoLocation information from the user. GeoLocation enables businesses to create lots of new kinds of smart web applications.

Mobile
Based on device detection QAFE opens windows in fullscreen and removes all unneccesary elements. As the internet is accessed by a growing number of Mobile Devices, we are continuously improving this part of QAFE to make sure our platform offers the best combination of UX and Performance.

Social is next
Discover what else is already included, if you register for a free trial on: http://www.qafe.com/free-trial/

Modern Enterprise Applications made easy

Do you want your system to still work with all popular browsers three years from now? Do you want to make your system available as an iPhone, iPad or Android app in the near future? You have come to the right place!

 

Until recently, developing a web application implied continuous building and rebuilding. QAFE puts an end to that. Because the presentation layer (the user interface) is kept separate from the business logic, the platform is able to make the underlying processes accessible to any web technology, be it Google Web Toolkit, Adobe Flex or HTML5. QAFE will ensure that you’re perfectly in sync with a continuously evolving world.

We like to think QAFE is a dream come true for developers. But the benefits reeped on an organizational level can even be bigger. This is because QAFE not only increases Application Development speed dramatically, it seemlessly integrates with áll traditional systems and databases.

Save time; big time!

When you develop a technology-independent application in QAFE, you are working in a future-proof environment. QAFE not only supports current Web2.0 platforms, like GWT and Adobe Flex, but also future ones. You don’t need to worry about the details. Thanks to QAFE, you can tackle the important tasks and ignore the fads.

Productivity boost

To increase the speed of development, we also have a wide range of tools to boost your productivity. So QAFE is great for business, fantastic for developers and, most importantly, it offers major relief for application users. It liberates your users from the “F5 refresh” syndrome, because your web application is dynamic, fetching and submitting data asynchronously, continuously.

Easily accessible: highly productive

Developers can get to work immediately.  Time-to-market is no longer a factor in the decision-making process. Quite the opposite: it becomes the deal-maker.

Open Source

Currently QAFE Engines are not yet Open Source. We are planning an Open Source Cummunity Edition though.

Open architecture

QAFE does not require you to adapt your organization’s current IT architecture. It Integrates seamlessly with existing databases and systems. Naturally, it goes both ways: QAFE also offers APIs that enable you to extend its open architecture.

Service Oriented Architecture

QAFE is the world’s first Web 2.0 application development platform that is entirely based on SOA principles.

Future-proof

As we mentioned in the first paragraph QAFE is presentation-technology agnostic: Google WebToolkit, Adobe Flex, you name it, you got it!

Register in 1 second & start your Free Trial today!