Create new web app on AWS

2

Hello, I would like to develop an application with the following technologies: server-side Java, client-side React or Angular. The infrastructure must be scalable and reliable as well as better manage the requests of the various users. Currently our old platform (on another hosting) has about 40,000 users, sessions: 65,000 per month. (data taken from google analytics). I need help figuring out what type of instance to choose, load balancer, storage and if I need any other services. Other than that I would need to roughly figure out the monthly costs for all of these services (perhaps adding an automatic backup). A thousand thanks

asked 10 months ago557 views
2 Answers
0

To develop an application with server-side Java and client-side React or Angular, and ensure scalability, reliability, and efficient request management for your user base, you can consider using the following services and infrastructure components:

Server-Side Java:

Choose a cloud provider that supports Java applications, such as Amazon Web Services (AWS), Google Cloud Platform (GCP), or Microsoft Azure. Set up virtual machines or container instances to host your Java application. Consider using managed services like AWS Elastic Beanstalk, GCP App Engine, or Azure App Service to simplify deployment and scaling of your Java application. Client-Side Framework (React or Angular):

Develop your client-side application using React or Angular frameworks, depending on your preference and project requirements. You can host the client-side application as static files on a web server or leverage cloud storage options for efficient content delivery. Scalable Infrastructure:

Use an auto-scaling group or managed container service to automatically scale your server-side instances based on demand. Implement a load balancer to distribute incoming requests across multiple server instances for improved performance and reliability. AWS Elastic Load Balancer or GCP Load Balancer are popular options. Consider using a cloud-based database service with built-in scalability, such as AWS RDS, GCP Cloud SQL, or Azure Database for PostgreSQL, to store application data. Storage and Backup:

Utilize cloud storage services like AWS S3, GCP Cloud Storage, or Azure Blob Storage to store static files, media, and other data. Implement regular automated backups of your data to ensure data protection and disaster recovery. Services like AWS Backup can simplify the backup process. Monitoring and Logging:

Set up monitoring and logging solutions to gain insights into application performance, detect issues, and troubleshoot. AWS CloudWatch, GCP Stackdriver, or Azure Monitor are commonly used services. Cost Estimation:

Cloud provider websites usually offer pricing calculators that allow you to estimate the monthly costs based on your specific resource requirements. You can input details such as instance types, storage usage, data transfer, and backup requirements. Keep in mind that costs can vary depending on factors like usage patterns, region, service-level agreements, and any additional services you choose. Remember to regularly monitor your application's performance and usage patterns to optimize resource allocation and ensure cost-effectiveness.

To roughly figure out the monthly cost for your specific needs, you can use the following formula:

Monthly cost = Storage used * Price per GB/month + Backup cost Use code with caution. Learn more For example, if you need 1 TB of storage and your backup cost is $0.01/GB/month, then your monthly cost would be:

Monthly cost = 1 TB * $0.02/GB/month + $0.01/GB/month = $2.01/month Use code with caution. Learn more I hope this helps!

profile picture
answered 10 months ago
0

Hi, a (cost-)efficient option that comes to mind is to use AWS LightSail if you can containerize your Java application (to have full control on your application dependencies) with React components in the image as weel:

See:

AWS LightSail is heavily managed: you can create a website or application in just a few clicks. Then, automatically configure networking, access, and security environments.

You can scale as you grow—or migrate your resources to the broader AWS ecosystem, such as Amazon EC2. You will also leverage the security and reliability of AWS that comes pre-configured in the service.

Re. pricing, it is extremely simple and transparent: see https://aws.amazon.com/lightsail/pricing/ You can select your various blocks (compute, storage, database, etc.) in different sizes based on your application profile.

profile pictureAWS
EXPERT
answered 10 months ago

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.

Guidelines for Answering Questions