Posts

Showing posts with the label Elastic Beanstalk

Using AWS Elastic Beanstalk as a guide for application configuration

Image
PaaS services fit in that world in between serverless and roll-your-own infrustructure.  AWS Elastic Beanstalk is a PaaS service exposes their their service usage to teach you the right way to deploy web applications. The EB team eats their own AWS dogfood and generates a full featured environment via a generated CloudFormation template that you can examine and leverage. For this example we will deploy Apache Tika document parser as a service. We'll leverage a previous blog article PaaS Document Parsing With Tika and EBS for the instructions.  A shortened version is below Topology Discussion This diagram shows the components deployed to make an autoscaling web application that leverages Elastic Beanstalk , IAM, ALBs and other AWS goodness. Resources and Services Elastic Beanstalk uses these services to provision and deploy a simple no-database web application like the Apache Tika Parser.  We use the CLI to upload the configuration which Elastic Beanstalk the...

Almost PaaS Document Parsing with Tika and AWS Elastic Beanstalk

Image
The Apache Tika project provides a  library capable of parsing and extracting data and meta data from over 1000 file types.  Tika is available as a single jar file that can be included inside applications or as a deployable jar file that runs Tika as a standalone service. This blog describes deploying the Tika jar as an auto-scale service in Amazon AWS Elastic Beanstalk.  I selected Elastic Beanstalk because it supports jar based deployments without any real Infrastructure configuration. Elastic Beanstalk auto-scale should take care of scaling up and down for for the number of requests you get. Tika parses documents and extracts their text completely in memory. Tika was deployed for this blog using EC2 t2.micro instances available in the AWS free tier. t2.micro VMs are 1GB which means that you are restricted in document complexity and size. You would size your instances appropriately for your largest documents.   Preconditions An AWS account. AWS ac...