Skip to main content

Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "Scout/Tutorial/4.0/cloud/Cloud Step-by-Step"

< Scout‎ | Tutorial‎ | 4.0
Line 1: Line 1:
{{ScoutPage|cat=Release 4.0}}
+
{{ScoutPage|cat=Tutorial 4.0}}
  
 
{{warning|This tutorial is still under cunstruction}}
 
{{warning|This tutorial is still under cunstruction}}
  
 +
== Introduction ==
  
=How to deploy your Scout Application to the Cloud =
+
Since the Lune Release Eclipse Scout supports dynamic scalable server applications. It's now possible to run several instances of the server application and place them behind a load balancer. For the synchronization between the server nodes it's necessary to use two additional external services. A Cache Service and a Message Queue. Eclipse Scout developers are able to implement synchronization service connectors by themselves or just use one of the default implementations for Memcached, Redis, RabbitMQ and AciveMQ published in the [http://marketplace.eclipse.org Eclipse Marketplace].
This tutorial describes how to deploy your Scout Application to a PaaS cloud.
+
  
== Enable Clustersync ==
+
== Preparation ==
Register the clustersynchroniztation service in the plugin.xml of your server application:
+
  
<service
+
First we create a new Scout "Hello World" application as described in the [[{{BASEPAGENAME}}/HelloWorld|Hello World tutorial]].
  class="org.eclipse.scout.rt.server.services.common.clustersync.ClusterSynchronizationService"
+
  createImmediately="false">
+
</service>
+
  
 +
== Add Cloud Support to your Application ==
  
== Overview Cloud Support on Marketplace ==
+
The second Step is to add the support of the cloud features to your application. Follow the [[{{BASEPAGENAME}}/add_cloud_support|instructions]].
There are a number of plugins available on the [https://marketplace.eclipse.org/content/cloud-support-eclipse-scout eclipse marketplace] to support running scout applications in the cloud. This section provides an overview of the available features and plugins.
+
  
== Messaging Services ==
+
== Deploy your Application into the Cloud ==
Service plugins for messaging and cachestore can be installed from the updatesite https://tools.bsiag.com/marketplace/cloud/4.0 or from the [https://marketplace.eclipse.org/content/cloud-support-eclipse-scout eclipse marketplace].
+
  
=== RabbitMQ ===
+
Finally you are able to deploy you eclipse scout server application to the cloud.
 +
How to do this on the example of Amazon Beanstalk you can find [[{{BASEPAGENAME}}/deploy_on_cloud|here]].
  
On the marketplace there is a service available for [http://www.rabbitmq.com/| RabbitMQ].
+
== Run your Application local ==
  
'''Update Targetplatform'''
+
If you want to test your application on your local machine you will fin the instructions [[{{BASEPAGENAME}}/local cloud|here]].
 
+
Add the feature to your target file:
+
 
+
<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="slicer" includeSource="true" type="InstallableUnit">
+
<unit id="org.eclipse.scout.rt.server.rabbitmq.source.feature.group" version="0.0.0"/>
+
<repository location="http://tools.bsiag.com/marketplace/cloud/"/>
+
</location>
+
 
+
'''Update Product File'''
+
Add the bundles to the product file.
+
 
+
org.eclipse.scout.rt.server.rabbitmq
+
com.bsiag.com.rabbitmq.client
+
org.apache.commons.io
+
org.apache.commons.pool
+
 
+
'''Update Configuration'''
+
Add the following settings to the config.ini file of the server.
+
 
+
#Message Queue
+
org.eclipse.scout.rt.server.rabbitmq.RabbitMQMessageService#host=
+
org.eclipse.scout.rt.server.rabbitmq.RabbitMQMessageService#user=
+
org.eclipse.scout.rt.server.rabbitmq.RabbitMQMessageService#password=
+
 
+
=== ActiveMQ ===
+
 
+
On the marketplace there is a service available for [http://activemq.apache.org/| ActiveMQ].
+
 
+
'''Update Targetplatform'''
+
 
+
Add the feature to your target file:
+
 
+
<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="slicer" includeSource="true" type="InstallableUnit">
+
<unit id="org.eclipse.scout.rt.server.activemq.source.feature.group" version="0.0.0"/>
+
<repository location="http://tools.bsiag.com/marketplace/cloud/"/>
+
</location>
+
 
+
'''Update Product File'''
+
Add the bundles to the product file.
+
 
+
org.eclipse.scout.rt.server.activemq
+
com.bsiag.org.apache.activemq.all
+
 
+
'''Update Configuration'''
+
Add the following settings to the config.ini file of the server.
+
 
+
#Message Queue
+
org.eclipse.scout.rt.server.activemq.ActiveMQMessageService#host=
+
org.eclipse.scout.rt.server.activemq.ActiveMQMessageService#user=
+
org.eclipse.scout.rt.server.activemq.ActiveMQMessageService#password=
+
 
+
== Cache Services ==
+
A cache service can be used to synchronize the ServerSession and other shared state on the scout server side.
+
 
+
=== Memcached ===
+
On the marketplace there is a service available using [https://code.google.com/p/spymemcached/| spymemcached]  to connect to a memcached cache.
+
 
+
'''Update Targetplatform'''
+
 
+
Add the memcached feature to your target file:
+
 
+
<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="slicer" includeSource="true" type="InstallableUnit">
+
<unit id="org.eclipse.scout.rt.server.memcached.source.feature.group" version="0.0.0"/>
+
<repository location="http://tools.bsiag.com/marketplace/cloud/"/>
+
</location>
+
 
+
'''Update Product File'''
+
Add the bundles to the product file.
+
 
+
org.eclipse.scout.rt.server.memcached
+
com.bsiag.net.spy.memcached
+
org.eclipse.scout.commons.log4j.bridge.fragment
+
 
+
'''Update Configuration'''
+
Add the following settings to the config.ini file of the server.
+
 
+
#Memcached
+
org.eclipse.scout.cloud.cachestore.MemcachedCacheService#host=
+
org.eclipse.scout.cloud.cachestore.MemcachedCacheService#port=
+
org.eclipse.scout.cloud.cachestore.MemcachedCacheService#username=
+
org.eclipse.scout.cloud.cachestore.MemcachedCacheService#password=
+
 
+
=== Redis===
+
On the marketplace there is a service available using [http://redis.io/| Redis] to connect to a redis cache.
+
 
+
'''Update Targetplatform'''
+
 
+
Add the redis feature to your target file:
+
 
+
<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="slicer" includeSource="true" type="InstallableUnit">
+
  <unit id="org.eclipse.scout.rt.server.redis.source.feature.group" version="0.0.0"/>
+
  <repository location="http://tools.bsiag.com/marketplace/cloud"/>
+
</location>
+
 
+
'''Update Product File'''
+
Add the bundles to the product file.
+
 
+
com.bsiag.redis.clients.jedis
+
org.eclipse.scout.rt.server.redis
+
org.apache.commons.pool
+
 
+
'''Update Configuration'''
+
Add the following settings to the config.ini file of the server.
+
 
+
#Redis
+
org.eclipse.scout.rt.server.redis.RedisCacheService#host=
+
org.eclipse.scout.rt.server.redis.RedisCacheService#port=
+
org.eclipse.scout.rt.server.redis.RedisCacheService#auth=true
+
org.eclipse.scout.rt.server.redis.RedisCacheService#password=
+

Revision as of 05:49, 5 August 2014

The Scout documentation has been moved to https://eclipsescout.github.io/.

Warning2.png
This tutorial is still under cunstruction


Introduction

Since the Lune Release Eclipse Scout supports dynamic scalable server applications. It's now possible to run several instances of the server application and place them behind a load balancer. For the synchronization between the server nodes it's necessary to use two additional external services. A Cache Service and a Message Queue. Eclipse Scout developers are able to implement synchronization service connectors by themselves or just use one of the default implementations for Memcached, Redis, RabbitMQ and AciveMQ published in the Eclipse Marketplace.

Preparation

First we create a new Scout "Hello World" application as described in the Hello World tutorial.

Add Cloud Support to your Application

The second Step is to add the support of the cloud features to your application. Follow the instructions.

Deploy your Application into the Cloud

Finally you are able to deploy you eclipse scout server application to the cloud. How to do this on the example of Amazon Beanstalk you can find here.

Run your Application local

If you want to test your application on your local machine you will fin the instructions here.

Back to the top