Use caching in Windows Azure for Java web application - java

I am deploying a web application developed in Java over Microsoft Windows Azure.
How to use caching in Windows Azure for Java web application at configuration level?
I don't want to write any code for caching. If there is a way to enable caching for particular folder or particular content type.

Have you taken a look at this. There is a section on configuring the cache.

Related

Solr 5+ on Azure

How can we host Solr 5+ as a Java app on Azure? I am following this article https://azure.microsoft.com/en-in/documentation/articles/web-sites-java-get-started/ to create a Java app in Azure.
However, Since Solr 5, Java Servlet (Tomcat) is inbuilt into the Solr install files, and it is an executable file!
Any idea, how to get it working on Windows Azure infrastructure that scales well when needed.
There's an MS OpenTech project that runs Solr on Azure inside a Worker Role. It's been created for Solr 4.x but you should be able to modify it to work with the latest version.
https://github.com/MSOpenTech/Windows-Azure-Solr
If you want something that's easier to set up, you can get a pre-configured Linux image that includes Solr from VM Depot. This can be deployed easily to Azure:
https://vmdepot.msopentech.com/List/Index?sort=&search=solr
As I know, you can create an template Ubuntu VM contains Solr to install Solr 4.0.0/4.8.1/4.9.0 on the Azure new portal, as the follow picture.
If you have to install Solr 5+, I suggest you can create the Azure VM and follow the solr offical getstart document to do it.
On Azure, there is a cloud search-as-a-service solution called Azure Search that allows you to easily add a robust search experience to the application using a simple REST API or .NET SDK without managing search infrastructure and becoming an expert in search.
I recommend you can try to use the Azure Search to realize your needs. Please move to https://azure.microsoft.com/en-us/documentation/articles/search-what-is-azure-search/ to know it.

How to upload Servlet/JSP website through Amazon Web Services?

I am working on a Servlet/JSP project and I want to host it on aws.amazon.com. I have already signed up for Amazon Web Services and after signing in this page opens up and I have no idea what to do or which option to select.
I think AWS provides a lot of customization with a lot advanced technical options to choose from, but this is difficult for beginners who just want to make their site running.
My project will use these:-
JSP/Servlets
CSS
MySQL
Struts2
Tomcat WebServer
I would suggest these approaches to study:
Elastic BeanStalk - This is AWS simply hosting model. If you're not IT savy you should pursue this approach
EC2 with MySQL RDS - In this case you'll create a Virtual Machine(s) (EC2) install Tomcat and other dependencies and deploy your app. You'll then use RDS to store your data (which is MySql as a service)
EC2 only - YOu'll do the same as 2. but install your own instance of MySql. There may be AMI's offered that you can provision that will meet your application requirements.
Other reading:
Route53 if your going to use AWS for your domain records
Elastic Load Balancing if your going to need High Availability
Elastic Block Store if you want persistent disks accross VMs
Network Security Groups to secure your VMs (for 1. and 2.)
Virtual Private Cloud for additional security
CloudFormation if you want to automate provisioning
There are many articles on: AWS Architecture
There is a eclipse plugin for Amazon web services.
The AWS Toolkit provides an AWS Java web project template for use in Eclipse. The template creates a web tools platform (WTP) dynamic web project that includes the AWS SDK for Java in the project's classpath. Your AWS account credentials and a simple index.jsp file are provided to help you get started. The following instructions assume you have installed both the Eclipse IDE for Java EE Developers and the AWS Toolkit plug-in. For more information, see Setting Up the AWS Toolkit for Eclipse.
Also check this & this
I would recommend 1st approach using Beanstalk to deploy your jsp application. There you are going to leverage all the advantages of AWS like load balancing, auto scaling, ddb and DW support and many other technologies. With Beanstalk you setup dev environment on your local machine and deploy the changes in AWS and once setup is done you are done...
May be you will need to spend some time on migrating from MySQL but that will be work on longer duration when you are going to have lot of users.

Clarification on How to access the Java+ Xml application in PHP based web portal

I Require a clarification on one Technical Implementation to check its feasible or not.
I have one VPS server which has a Java Environment and I have one more dedicated server which doesnot have a Java Environment where i have built my PHP based web application,
In the VPS environment I am planning to implement the XML based application using the Observer pattern with java and DOM Parsers and make that application available at say for example
123.124.125.65/XML_Works/Sample,xml file
Now My doubt is that: 1)is it possbile to access this application in dedicated Server where the java environment is not there.
2)if yes, then is it possible to access that java + XML application in IFrame in PHP based web portal.
1) No JVM = no java running on that machine
2) The most common solution I saw (and am using) is to externalize the java functionality you want as a web service or servlet and package it as a .war
Then use some web container such as tomcat to load that war and use a connector to connect calls to tomcat to your PHP server.
So the configuration I use is, Java as war, Tomcat as web container, Apache as PHP server and mod_jk connector for communication between servers.
Note that the mod_jk connector also supports other web servers.

Java application on windows server possibility?

I'd like to know if it is possible to have this application (neo4j) running on windows server 2008 alongside an asp.net mvc application. Reason for this, I need to access the graph database (neo4j) which provides a RESTful service from my mvc application. How would I go about setting up this architecture?
According to the website you linked to the application is self-contained (no Tomcat etc required). So just installing the Windows package and following the instructions here (for starting the service) should suffice.

Run Java EE app on EC2

Can anyone point me to the steps/resources that describe:
How to deploy a Java EE app on amazon-EC2
Maintain changes to the meta-data of the app server (deploy new applications) after an instance reboot (probably using amazon-ebs)
First check this out if you haven't already ran through it:
http://docs.aws.amazon.com/gettingstarted/latest/awsgsg-intro/intro.html
it'll give you an idea of how it all works.
With regard to running a Java EE app on EC2, you have a couple of choices - but they generally come down to the following recipe:
Start an instance
Install a Java EE application server (tomcat/glassfish/websphere/...)
Install your application (war/ear) into the application server
Now you can bundle the above into an ebs ami, or you can write a script (bash/sh/tcl) which applies those changes when your instance starts (which i prefer). The scripts allow you to modify what gets installed/started/moved around without having to rebundle your instance.
There's some great resources here: http://developer.amazonwebservices.com/connect/kbcategory.jspa?categoryID=100
Hope that helps.
How to deploy a Java EE app on amazon-EC2
You still deploy to an application server so it isn't really different. If you have more specific questions, please clarify. But have a look at Running JEE applications on Amazon EC2 and How to deploy a java web application on an ec2 instance.
Maintain changes to the meta-data of the app server (deploy new applications) after an instance reboot (probably using amazon-ebs)
If you use Amazon EBS, then you don't need to worry, Amazon EBS volumes are off-instance storage that persists independently from the life of an instance.
The Amazon AWS's newly Launched Elastic BeanStalk is here to resolve you concerns.
You can deploy Java EE apps on Amazon Ec2 instances via Bean Stalk. All you need to do is create a new applications and create a environment in it and add you WAR file for deploying, AWS has its own version of Tomcat 6/7 with open JDK which can be customized to Sun JDK if required.
Therefore Amazon offers complete Deployment tool to start using your app by just deploying in BeanStalk. BeanStalk offer Auto Scaling & Elastic Load balancing and a lots more to customize your application Environment.
If you start an ebs-booted instance, you do not need to care about persistency after a reboot (see http://aws.amazon.com/about-aws/whats-new/2009/12/03/amazon-ec2-instances-now-can-boot-from-amazon-ebs/)
Concerning the deployment of Java EE, I don't see any difference to deploying it on a non-virtual OS.
Boxfuse supports deploying Java EE applications using either Tomcat, TomEE Web Profile or TomEE Plus to AWS with a single command
boxfuse run mytomeeapp-1.0.war -env=prod
This will create an image, provision all necessary AWS infrastructure and launch the instances. It supports blue/green zero downtime updates with Elastic IPs and ELBs.
You can find a tutorial here: https://boxfuse.com/blog/javaee-aws.html
You don't have to worry about maintaining changes to the meta-data as all instances are immutable and contain all necessary app server info.
Disclaimer: I am the founder and CEO of Boxfuse

Categories