0% found this document useful (0 votes)
4 views16 pages

Chapter 2

Utility Computing is a model where users pay for computing resources on-demand, similar to utilities like electricity. It offers benefits such as cost savings, scalability, and managed infrastructure, but has limitations like internet dependency and data security concerns. Elastic Computing allows automatic scaling of resources based on demand, enhancing performance and cost efficiency, while AJAX enables asynchronous data exchange for interactive web applications.
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views16 pages

Chapter 2

Utility Computing is a model where users pay for computing resources on-demand, similar to utilities like electricity. It offers benefits such as cost savings, scalability, and managed infrastructure, but has limitations like internet dependency and data security concerns. Elastic Computing allows automatic scaling of resources based on demand, enhancing performance and cost efficiency, while AJAX enables asynchronous data exchange for interactive web applications.
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

Chapter 2:

Definition:

Utility Computing is a computing model where resources like storage,


processing power, and networking are provided on-demand and users pay only
for what they use, just like electricity or water.

It follows the “Pay-as-you-go” model.

💡 Why is it called “Utility”?

Just like electricity, you:

 Don’t pay upfront for a power plant


 Just pay for how many units (kWh) you consume

Similarly, in utility computing:

 You don’t buy your own server


 You pay for how many GBs or hours of CPU usage you consume

✅ Key Characteristics:

Feature Description
On-demand
You can get computing resources whenever you need them
access
Pay-per-use
You are charged only for the resources used
pricing
Scalable
Easily scale up/down based on workload
resources
Managed by You don’t need to manage the infrastructure (provider handles
provider everything)

✅ Examples of Utility Computing:

Service What it does


Amazon EC2 (AWS) Rent virtual servers by the hour/second
Google Cloud Compute Pay for CPU, memory, and storage per
Engine use
Virtual machines you pay for based on
Microsoft Azure VMs
usage

📦 Benefits of Utility Computing:

 💰 Cost-saving – No need to buy expensive hardware


 ⚡ Scalability – Easily adjust resources as needed
 🔒 Reliability – High availability and automatic backups
 🧑‍💻 No maintenance hassle – Provider handles everything
❌ Limitations:

 🌐 Requires Internet – Can’t access services without internet


 📉 Performance depends on provider
 🔐 Data security concerns – Since data is stored off-premise

Sure Priyanshi! Let’s break down Elastic Computing in the simplest way possible, just like
how you'd write in your exam. 📝

☁️Elastic Computing – Explained

✅ Definition:

Elastic Computing refers to the ability of a system to automatically scale (increase or


decrease) its computing resources like CPU, memory, and storage based on current
demand.

In simple words:

“Grow when needed, shrink when not — automatically.”

💡 Why is it important?

Because in real-world applications:

 Sometimes there are high demands (e.g., a big sale or product launch)
 Sometimes there’s low traffic (e.g., midnight hours)

Elastic computing adjusts resources automatically to save cost and maintain


performance.

✅ Key Characteristics:

Feature Description
🔄 Automatic Resources increase or decrease based on
Scaling traffic/workload
💸 Cost Efficiency You don’t pay for idle resources
🚀 Performance
Prevents app slowdown during high traffic
Boost
Supports a wide range of apps – from small to
🧩 Flexibility
enterprise-level
✅ Example Scenario:

Let’s say you have an e-commerce site:

 During a Diwali sale, traffic goes up — elastic computing adds servers.


 After the sale, traffic drops — it removes extra servers, saving money.

This happens automatically, thanks to cloud platforms.

✅ Examples of Elastic Computing Services:

Platform Elastic Feature


AWS Auto Scaling Groups (EC2
(Amazon) instances)
Google
Compute Engine Autoscaler
Cloud
Microsoft Azure Virtual Machine Scale
Azure Sets

📝 Exam-Ready Sample Answer:

Elastic computing is the cloud feature that allows automatic scaling of computing resources
based on workload demands. It improves performance during peak times and reduces costs
during low activity. Services like AWS Auto Scaling, Google Cloud Autoscaler, and Azure
Scale Sets provide elastic computing features.

✅ Benefits:

 ⚡ High performance during heavy load


 💰 Saves money by reducing unused resources
 🧠 No manual intervention required
 📶 Ensures continuous availability

❌ Limitations:

 ⚙️Slight delay in scaling response time


 🧑‍💻 Needs proper configuration to work well
 💻 May not suit all types of applications

Would you like me to help you revise Elastic vs Utility computing in a comparison table
next? Or move on to the next topic like AJAX? 😊
Absolutely Priyanshi! Let’s understand AJAX in an easy, exam-focused way with examples and
key points. This will help you write confident, clear answers. 😊

🌐 AJAX – Asynchronous JavaScript and XML

✅ Definition:

AJAX is a web development technique that allows web pages to send and receive data
from a server without reloading the whole page.

It helps create fast, interactive, and rich user interfaces (UIs).

✅ Key Features (Rich Interfaces):

Feature What it means


Background communication with the server, without page
🔄 Asynchronous
reload
Only part of the page updates — feels like an app, not a
⚡ Fast UI
website
🔧 Dynamic Data
Data loads when needed (e.g., as you scroll or type)
Loading
✨ Better User
Feels smoother, like a desktop app
Experience

✅ How AJAX Works (Simple Flow):

1. User does something (e.g., types a name)


2. JavaScript sends a request to the server (without reloading the page)
3. Server processes and sends back data
4. JavaScript updates only a part of the page with the new data

✅ Technologies Used in AJAX:

 HTML & CSS – For structure and style


 JavaScript – Controls the interactivity
 XMLHttpRequest or Fetch API – For sending/receiving data
 JSON/XML – For transferring data

✅ Real-Life Examples of AJAX:


Application What AJAX does there
Loads emails instantly without refreshing the whole
Gmail
inbox
Google
Auto-suggestions as you type
Search
Loads new tweets without refreshing the whole
Twitter
page
Shopping
Updates cart and search results without reloading
sites

📝 Exam-Ready Sample Answer:

AJAX (Asynchronous JavaScript and XML) is a web technology that allows parts of a web
page to update without reloading the entire page. It improves user experience by making
websites faster and more interactive. AJAX uses technologies like JavaScript, XML/JSON, and
XMLHttpRequest. Examples include Gmail, Google Search suggestions, and online shopping
carts.

✅ Benefits of AJAX:

 ⚡ Faster website performance


 🧑‍💻 Better user experience
 📶 Reduces server load
 🚫 No full page reload

❌ Limitations:

 ❌ May not work properly on very old browsers


 🔐 Security issues if not coded properly
 Complex to debug sometimes

Let me know if you'd like a diagram to show how AJAX works, or we can move on to the
next topic like Mashups or Virtualization!

Definition:

A Mashup is a web application that combines data or functionality from two or


more different sources to create a new service or experience.

Think of it as "mixing" different services together to make something new and useful!

Mashups combine APIs, data, or UIs to make a single, creative application.

Example:
Imagine a travel booking website:

 It uses Google Maps for location


 Yelp for restaurant reviews
 Skyscanner API for flight info
→ This is a mashup of 3 services into one platform.

Technologies Used in Mashups:

 APIs (Application Programming Interfaces)


 AJAX for real-time updates
 JavaScript to handle UI interactions
 XML/JSON for data exchange

Of course, Priyanshi! Here's a simple and detailed explanation of the types of Mashups,
perfect for your exam. 🌐✨

🌈 Types of Mashups (in Web Services)

There are mainly three types of Mashups:

1. ✅ Data Mashups

📌 Definition:

Combines data from multiple sources into one unified display.

📊 Purpose:

To give a user comprehensive data view in a single place.

🔍 Example:

 A website that shows real-time weather, air quality, and traffic conditions of a city
— all combined on a single dashboard.
 A job search site showing results from different job portals like LinkedIn, Indeed, and
Naukri.

🧠 Technologies used:

 AJAX
 APIs
 JSON/XML

2. ✅ Service Mashups
📌 Definition:

Combines functionalities (services or APIs) from different sources to create a new


application.

🛠️Purpose:

To offer multiple features from various platforms in one place.

🔍 Example:

 A travel booking site that combines:


o Hotel booking (via MakeMyTrip API),
o Flight search (via Skyscanner API),
o Google Maps for locations.
 A restaurant finder app using:
o Zomato API for reviews,
o Uber API for ride-booking.

🧠 Technologies used:

 RESTful APIs
 Web services
 JavaScript

3. ✅ UI Mashups (User Interface Mashups)

📌 Definition:

Combines visual elements (like widgets, modules) from different sources into a single
interface.

🎨 Purpose:

To show diverse content or services side by side, in one screen.

🔍 Example:

 A customizable web dashboard that includes:


o Gmail inbox
o News headlines
o Stock market widgets
o Calendar events
 A finance app that shows:
o Bank account balance,
o Recent transactions,
o Credit card usage — from different banks

🧠 Technologies used:

 iFrames
 JavaScript
 CSS, HTML
📝 Summary Table (for Quick Revision):

Type Combines What? Output Example


Data Data from different City dashboard with weather + traffic
Mashup sources data
Service
Functional services/APIs Travel app with maps, hotels, flights
Mashup
Visual Dashboard with email, news,
UI Mashup
components/interfaces weather, etc.

Let me know if you want diagrams, real-world applications, or want to move on to


Virtualization Technology next! 😊

Benefits:

 🔀 Combines best features of different services


 ⚡ Speeds up development using existing APIs
 🌐 Enhances user experience with richer content

❌ Limitations:

 🔒 Depends on availability and reliability of external services


 ⚙️Compatibility and integration issues
 📉 Performance can be affected if many sources are used

Sure Priyanshi! Let’s understand Services Virtualization Technology in a clear, simple,


and exam-friendly way 🌐💻

🔧 Services Virtualization Technology – Explained

✅ Definition:

Service Virtualization is a method used in software development and cloud computing to


simulate or mimic the behavior of real services (like APIs, databases, servers) so that
developers can build and test applications even when the actual services are unavailable.

📌 Why is it needed?

In large applications:
 You might depend on external APIs, payment gateways, or databases.
 These services may be costly, unstable, or not ready yet during development.

👉 So instead of waiting, developers use virtual services that behave like the real ones,
allowing them to continue development and testing smoothly.

✅ Key Features:

Feature Description
🔄 Simulates Mimics real-world APIs, databases, or
services systems
🧪 Supports
Helps test edge cases and failures
testing
⚙️Fast
No need to wait for actual backend services
development
Reduces costs of using real services during
💰 Cost saving
testing

✅ Example Scenario:

Let’s say you are developing an e-commerce website:

 It connects to a payment gateway, shipping service, and inventory system.


 These services are not yet built or are paid services.

Using Service Virtualization, you can:

 Simulate the payment service returning a "Transaction Successful"


 Simulate the inventory service confirming item stock
 Continue building your app without delay

✅ Tools used for Service Virtualization:

 🧰 WireMock
 🔧 Parasoft Virtualize
 🛠️IBM Rational Test Virtualization Server
 🧪 SoapUI (ReadyAPI)

✅ Benefits:

Benefit Description
💨 Faster Testing No need to wait for real services to be available
🔄 Easy to simulate Helps test how app behaves during failures
Benefit Description
errors
💰 Lower costs Avoid calling real paid APIs during testing
🔧 Parallel Frontend and backend teams can work
development simultaneously

❌ Limitations:

 ⚙️Not 100% like the real service – some differences may exist
 🔐 May miss security/authentication checks of real APIs
 🔄 Needs regular updates if real service changes

Great choice, Priyanshi! Let’s break down Virtualization Applications in Enterprises in a


simple, exam-ready way. 🏢💻✨

🖥️Virtualization Applications in Enterprises

✅ Definition:

Virtualization is the process of creating a virtual version of something — like a server,


operating system, storage, or network — so that multiple systems can run on a single
physical hardware.

In enterprises, virtualization is used to save costs, increase flexibility, and improve


resource usage.

🏢 Where is Virtualization Used in Enterprises?

1. Server Virtualization

One physical server hosts multiple virtual machines (VMs).

✅ Benefits:

 Saves cost (less hardware needed)


 Increases server utilization
 Easier backup and recovery
✅ Example:

 An IT department runs development, testing, and production environments on one


physical server using VMs like:
o Windows VM
o Linux VM
o Database server VM

2. 💾 Storage Virtualization

Combines multiple physical storage devices into a single virtual storage pool.

✅ Benefits:

 Centralized data management


 Improved storage usage
 Easy data backup and recovery

✅ Example:

 A company combines different hard drives or SSDs into one logical drive to manage all
employee data more efficiently.

3. 🌐 Network Virtualization

Creates multiple virtual networks on top of a physical network.

✅ Benefits:

 Improved network performance


 Better network security
 Easy scalability

✅ Example:

 A bank uses separate virtual networks for:


o Customer transactions
o Internal employee communication
o Development team access

4. 💼 Desktop Virtualization

Employees access their work desktops remotely via the internet.

✅ Benefits:

 Remote work possible


 Centralized desktop management
 Better data security

✅ Example:

 An enterprise uses Virtual Desktop Infrastructure (VDI) so employees can access


their desktops securely from home.

5. 🧪 Application Virtualization

Applications run on a virtual layer instead of being installed on the user's device.

✅ Benefits:

 No need to install software on each computer


 Easy updates and patches
 Consistent app behavior

✅ Example:

 A business runs Microsoft Office or custom business apps virtually so that all users have
the same version and setup.

✅ Overall Benefits in Enterprises:

Benefit Description
💰 Cost Saving Less physical hardware needed
🔄 Flexibility Easy to scale and update
🧑‍💼 Central
Manage all systems from one place
Management
Different apps or OS can run separately without affecting
📦 Isolation
each other
📈 Business
Fast backup, restore, and disaster recovery
Continuity

❌ Challenges / Pitfalls:

 🧠 Requires trained IT staff


 🛠️Complex setup
 ⚠️If not managed well, VM sprawl can occur (too many unused virtual machines)

📝 Exam-Ready Sample Answer:


Virtualization in enterprises is used to create virtual versions of servers, storage, desktops,
and networks to improve efficiency and reduce costs. It allows companies to run multiple
systems on fewer physical resources. Applications include server virtualization, storage
pooling, remote desktops, and network segmentation. This leads to better scalability,
centralized management, and business continuity.

Would you like to move to Pitfalls of Virtualization or shall I explain Multitenant


Software next? 😊

Absolutely Priyanshi! Let’s go through the Pitfalls of Virtualization in a clear, simple, and
exam-focused way. ⚠️💻

⚠️Pitfalls of Virtualization

(Problems or limitations of using virtualization in enterprises)

Virtualization offers many benefits like cost-saving and efficiency, but it also has some
disadvantages or challenges that enterprises must be aware of.

❌ 1. VM Sprawl (Virtual Machine Sprawl)

Creating too many virtual machines without proper management.

 ❗ Problem: Leads to wasted resources, higher costs, and security risks.


 📌 Example: IT teams create VMs for testing but forget to delete them.

❌ 2. Performance Issues

Too many virtual machines on a single server can lead to overloading.

 ❗ Problem: Decreased speed and performance of applications.


 📌 Example: Running 10 VMs on a server meant for 5 causes slowness.

❌ 3. Complex Management

Managing many VMs, virtual networks, and storage can be complicated.

 ❗ Problem: Requires skilled IT staff and specialized tools.


 📌 Example: Tracking configurations, updates, and issues becomes harder.
❌ 4. Security Risks

Virtual machines share the same physical hardware, increasing the risk.

 ❗ Problem: A security breach in one VM might affect others on the same host.
 📌 Example: If one VM gets infected by malware, it can potentially spread.

❌ 5. High Initial Setup Cost

Although virtualization saves cost in the long run, initial setup is expensive.

 ❗ Problem: Hardware and virtualization software (like VMware or Hyper-V) can be


costly.
 📌 Example: Small businesses may struggle with the setup investment.

❌ 6. Software Licensing Issues

Virtual environments may require additional licenses.

 ❗ Problem: Complicated software terms may lead to legal or financial issues.


 📌 Example: Microsoft licenses often charge per virtual instance.

❌ 7. Dependency on Physical Host

If the main physical server fails, all hosted virtual machines go down.

 ❗ Problem: One failure = multiple VM crashes.


 📌 Example: A power failure in the data center can affect all hosted apps.

❌ 8. Not Suitable for All Workloads

Some applications require dedicated physical resources for best performance.

 ❗ Problem: Virtualization may not give good results for heavy-duty apps.
 📌 Example: Large databases or real-time apps (like gaming) may perform poorly.

📝 Exam-Ready Answer:

While virtualization provides many advantages such as cost-efficiency and scalability, it also
comes with certain pitfalls. These include VM sprawl, performance issues, complex
management, security risks, and high setup costs. Moreover, virtualization can lead to
software licensing challenges and may not be suitable for resource-intensive
applications. Organizations must plan carefully to avoid these issues.
Would you like to go over Multitenant Software next? That’s another important topic often
asked with virtualization. 😊

Multitenant Software

Definition:

Multitenant software is a software architecture where a single application


instance serves multiple users or organization (called tenants). Each tenant’s
data is isolated and secure, but they all share the same application codebase
and resources.

Key Features:

 One software instance, many customers (tenants)


 Each tenant sees their own data
 Efficient use of resources (CPU, memory)
 Tenants can be organizations, teams, or individuals

1. Multi-Entity Support (Shared Everything)

✅ Definition:

All tenants share the same database and same tables, but their data is separated
using an identifier column like TenantID or OrgID.

📌 Example:

 Suppose an online inventory management system is used by 100 different shops.


 All their product data is stored in one single table like this:

TenantI Product ProductNa Quanti


D ID me ty
101 P01 Soap 50
102 P01 Soap 20

Here, TenantID = 101 could be "Shop A" and TenantID = 102 is "Shop B".

💡 Pros:

 Very cost-efficient
 Easy to maintain and scale

⚠️Cons:

 Requires strict access control


 Harder to support customization per tenant
🧱 2. Multi-Schema Approach

✅ Definition:

Each tenant shares the same application instance, but their data is stored in
separate schemas within the same database.

Or

Each tenant gets their own database schema within a shared database.

📌 Example:

 A university ERP system used by 10 colleges.


 Each college gets its own schema like:

makefile
CopyEdit
Schema: CollegeA_Students
Schema: CollegeB_Students
Schema: CollegeC_Students

 All schemas contain similar tables (like students, courses, fees) but hold only their
own data.

💡 Pros:

 Good data isolation


 Easier to implement customizations per tenant

⚠️Cons:

 Slightly higher management effort


 Still shares the same database – not ideal for very large tenants

3. Separate Databases

Each tenant has a completely separate database.

 ✅ Pros: Highest data isolation and security


 ❌ Cons: Higher cost and resource use
 📌 Example:
A banking software might use a separate DB for each client for extra security.

You might also like