This web application is for showing the current posted twitters on the Google map in near real-time, with user defined settings and category differentiated by colors.
- Ao Hong (ah3209)
- Siyuan Zhang (sz2476)
- Implemented with Java Web Development based on Tomcat Server.
- Utilized MySQL database to manage Twitter data and JDBC to access from Java programs.
- RESTful API is provided by Java Servlet.
- Real-Time Twitter Data is grabbed to Database with Twitter API and Database size is monitored by server.
- Twitter content is categorized into five categories: Tech, Sports, Movie, Music and Food. Each category is backed with dozens of keywords related.
- Designed and implemented based on HTML/CSS, JavaScript and Bootstrap.
- User is allowed to set Time Range and Category from webpage.
- Each category is marker with different color and an InfoWindow will show up with Twitter content when user click on the marker.
- Front-end JavaScript periodically made HTTP Get request to get selected data and update the markers.
####MySQL instance on AWS RDS
- statusId BIGINT NOT NULL UNIQUE
- userId BIGINT NOT NULL
- screenName varchar(20)
- content varchar(200)
- longitude DOUBLE
- latitude DOUBLE
- createDate datetime
- PRIMARY KEY (statusId)
- Create an Ubuntu 64-bit EC2 instance, Elastic Beanstalk with Tomcat 8 Server, RDS MySQL database, IAM user role and S3 for version storage.
- Deploy Java web application to Elastic Beanstalk.
- Set up the security group of the RDS instance and EC2 so that the webpage could be visited by public.
- Git clone source code.
- Link to AWS account with access key and secret key and connect with current development environment (All usernames and passwords should be written in Credentials.java).
- Create application and environment on AWS Elastic Beanstalk with Tomcat 8.
- Add Jars to build path and EC2 Tomcat lib file.
- Create Cassandra Database on AWS EC2.
- Create account in Twitter API and get access keys.
- Deploy project in AWS Elastic Beanstalk.