Cloud Computing Assignment 8.1

Develop a Cloud-Based Social Networking Application

Introduction

A cloud-based solution uses cloud services for hosting, storage, authentication, and scalability. In this example, we design a simple social networking application using Google App Engine on Google Cloud Platform.


1️⃣ Solution Overview

Application Name: CloudConnect

A basic social networking app where users can:

  • Register and log in
  • Create posts
  • View posts from other users
  • Like posts

2️⃣ Cloud Architecture

Frontend

  • HTML, CSS, JavaScript
  • Hosted on Google App Engine

Backend

  • Python (Flask) or Node.js
  • Deployed on Google App Engine

Database

  • Cloud Firestore (NoSQL database)
    OR
  • Cloud SQL (Relational database)

Authentication

  • Firebase Authentication

Storage (Optional for Images)

  • Google Cloud Storage

3️⃣ Architecture Diagram (Logical Flow)

Users → Web Browser → App Engine → Database

Cloud Storage


4️⃣ Implementation Steps

Step 1: Create Google Cloud Project

  • Go to Google Cloud Console
  • Create new project
  • Enable App Engine

Step 2: Create a Simple Flask App

app.py

from flask import Flask
app = Flask(__name__)

@app.route("/")
def home():
    return "Welcome to CloudConnect Social Network!"

if __name__ == "__main__":
    app.run()

Step 3: Create app.yaml

runtime: python39
entrypoint: gunicorn -b :$PORT app:app

Step 4: Deploy to App Engine

Install Google Cloud SDK and run:

gcloud app deploy

After deployment:

gcloud app browse

Your social app is now live on the cloud.


5️⃣ Features Implementation Plan

User Registration & Login

  • Use Firebase Authentication
  • Email/Password or Google Sign-In

Create Post

  • Store posts in Cloud Firestore
  • Each post contains:
    • User ID
    • Content
    • Timestamp
    • Likes count

View Posts

  • Fetch data from Firestore
  • Display in reverse chronological order

Like Feature

  • Increment likes field in Firestore

6️⃣ Cloud Service Mapping

FeatureCloud Service Used
HostingGoogle App Engine
DatabaseCloud Firestore
AuthenticationFirebase Authentication
Image StorageGoogle Cloud Storage
MonitoringGoogle Cloud Monitoring

7️⃣ Benefits of This Cloud-Based Solution

  • ✔ Auto-scaling
  • ✔ High availability
  • ✔ Secure authentication
  • ✔ Managed database (no server maintenance)
  • ✔ Pay-as-you-use

8️⃣ Future Enhancements

  • Real-time chat (using Firebase Realtime Database)
  • Notifications
  • User profile pictures
  • REST API integration
  • Microservices architecture

Conclusion

This cloud-based social networking solution uses Google App Engine for hosting and integrates managed cloud services such as Firestore, Firebase Authentication, and Cloud Storage. The architecture ensures scalability, security, and high availability without managing physical infrastructure.

This is an example of Platform as a Service (PaaS) where developers focus only on application logic while the cloud provider manages servers and scaling.

Spread the love

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top