1. Trang chủ
  2. » Luận Văn - Báo Cáo

Bài Tập Lớn Môn Điện Toán Đám Mây Chủ Đề Google App Engine.pdf

20 3 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề GOOGLE APP ENGINE
Tác giả Trần Văn Hoàng Anh, Tô Vũ Hoàng, Nguyễn Đình Linh, Nguyễn Thanh Hoàng, Ngô Đức Anh, Vũ Xuân Hinh
Người hướng dẫn Lê Anh
Trường học Trường Đại học Kinh doanh và Công nghệ Hà Nội
Chuyên ngành Điện Toán Đám Mây
Thể loại Bài Tập Lớn
Năm xuất bản 2023
Thành phố Hà Nội
Định dạng
Số trang 20
Dung lượng 1,8 MB

Nội dung

Google là một trong những nhà cung cấp dịch vụ điện toán đám mây hiện nay, trong đó Google App Engine là một nền tảng chiến lược của Google.. Nội dung chính :I: Giới thiệu về điện toán đ

Trang 1

TRƯỜNG ĐẠI HỌC KINH DOANH VÀ CÔNG NGHỆ HÀ NỘI

KHOA CÔNG NGHỆ THÔNG TIN

BÀI TẬP LỚN MÔN ĐIỆN TOÁN ĐÁM MÂY Chủ đề : GOOGLE APP ENGINE

Lớp : PM25.15

Sinh viên thực hiện : Trần Văn Hoàng Anh

Tô Vũ Hoàng Nguyễn Đình Linh Nguyễn Thanh Hoàng Ngô Đức Anh

Vũ Xuân Hinh Giảng viên hướng dẫn : Lê Anh

Hà Nội , ngày 7 tháng 12 năm 2023

Trang 2

Cam Kết

Đầu tiên, nhóm 3 chúng em xin cam kết là những gì tìm hiểu được và thực hiện đều là sản phẩm của nhóm

Kết quả bài làm của đề tài GOOGLE APP ENGINE là trung thực và không sao chép từ bất kỳ bài tập của nhóm khác

Thứ hai, nhóm 3 nói riêng và cả lớp nói chung xin cảm ơn cô Lê Anh đã tâm huyết giảng dạy và hướng dẫn trong suốt quá trình học tập và thực hiện bài tập lớn của môn học Điện Toán Đám Mây

Thứ ba, các tài liệu trong bài được tìm hiểu và chọn lọc từ những nguồn uy tín trên internet

Đại diện nhóm 3 Hoàng Anh Trần Văn Hoàng Anh

Trang 3

MỤC LỤC

Mở đầu 4

Nội dung chính : 5

I: Giới thiệu về điện toán đám mây 5

1.1 Lịch sử hình thành 5

1.2 Khái niệm về điện toán đám mây 6

1.3 Kiến trúc của điện toán đám mây 7

1.4 Đặc điểm của điện toán đám mây 7

1.5 Mô hình dịch vụ 8

1.6 Mô hình của điện toán đám mây 9

1.7 Ưu điểm và nhược điểm của điện toán đám mây 11

II : Nền tảng Google App Engine 11

2.1 Giới thiệu về Google App Engine : 12

2.2 Các nền tảng được hỗ trợ 13

2.3 Tương Thích với Xu Hướng Hiện Đại: 13

III: Các bước làm bài tập lớn 14

14

III: Dịch vụ SAAS 16

3.1 SaaS: Mở Rộng Chức Năng và Tiết Kiệm Thời Gian 16

3.2 Khả Năng Tương Thích Mạnh Mẽ 17

3.3 Quản Lý Dữ Liệu Hiệu Quả 17

3.4 Google Workspace: Tối Ưu Hóa Công Việc Nhóm 17

3.5 Giảm Bớt Gánh Nặng Quản Lý 18

3.6 Sự Kết Hợp với Dịch Vụ Bảo Mật của Google Cloud 18

Kết luận : Hướng tới tương lai 18

Kết luận : 19

Tài liệu tham khảo : 20

Trang 4

Mở đầu

Trong lĩnh vực công nghệ thông tin, ngày nay ngoài các ứng dụng để bàn, một xu hướng mới đáng chú ý là phát triển các ứng dụng web và các ứng dụng cho thiết bị di động Tất cả các ứng dụng này đều cần được lưu ở một máy chủ để người dùng có thể truy cập được thông qua mạng

Điện toán đám mây ra đời và đang là xu hướng mới của ngày nay Trong điện toán đám mây, Các nguồn thông tin và tính toán khổng lồ sẽ nằm tại các máy chủ ảo (đám mây) được truy cập thông qua Internet để kết nối với mọi người khi cần Thông qua đám mây các doanh nghiệp không cần phải mua các phần mềm, duy trì các dịch vụ mà chỉ cần sử dụng các dịch vụ sẵn có trên Internet để phục vụ cho nhu cầu công việc của mình

Google là một trong những nhà cung cấp dịch vụ điện toán đám mây hiện nay, trong đó Google App Engine là một nền tảng chiến lược của Google Google App Engine cung cấp cho lập trình viên nhiều tiện ích và hạ tầng để xây dựng các ứng dụng trên nền web

Tìm hiểu về điện toán đám mây, cụ thể là công cụ google App Engine là điểm trọng tâm của bài tập lớn môn học này

Xin chân thành cảm ơn cô Lê Anh đã giúp chúng em có nhìn mới và tổng quan về môn học

Trang 5

Nội dung chính :

I: Giới thiệu về điện toán đám mây

Cloud Computing (CC) là mô hình diện toán cho phép truy cập qua mạng để lựa chọn và sử dụng tài nguyên tính toán theo nhu cầu một cách thuận tiện và nhanh chóng, đồng thời cho phép kết thúc sử dụng dịch vụ, giải phóng tài nguyên

dễ dàng, giảm thiểu các giao tiếp với nhà cung cấp

1.1 Lịch sử hình thành

Thuật ngữ điện toán đám mây xuất hiện bắt nguồn từ ứng dụng điện toán lưới (grid computing) trong thập niên 1980, tiếp theo là điện toán theo nhu cầu (utility computing) và phần mềm dịch vụ (SaaS)

Điện toán lưới đặt trọng tâm vào việc di chuyển một tải công việc (workload) đến địa điểm của các tài nguyên điện toán cần thiết để sử dụng Một lưới là một nhóm máy chủ mà trên đó nhiệm vụ lớn được chia thành những tác vụ nhỏ để chạy song song, được xem là một máy chủ ảo

Với điện toán đám mây, các tài nguyên điện toán như máy chủ có thể được định hình động hoặc cắt nhỏ từ cơ sở hạ tầng phần cứng nền và trở nên sẵn sàng thực hiện nhiệm vụ, hỗ trợ những môi trường không phải là điện toán lưới như Web ba lớp chạy các ứng dụng truyền thống hay ứng dụng Web 2.0

Trang 6

1.2 Khái niệm về điện toán đám mây

Hình 1.1

 Điện toán đám mây (thuật ngữ tiếng Anh: Cloud computing, hay còn được biết đến với tên gọi “Điện toán máy chủ ảo”) là mô hình máy tính dựa trên nền tảng phát triển của internet, nơi được chia sẻ tài nguyên, phần mềm và thông tin cung cấp cho máy tình cũng như các thiết bị khác theo yêu cầu qua Internet

 Thuật ngữ "đám mây" ở đây là lối nói ẩn dụ chỉ mạng Internet (dựa vào cách được

bố trí của nó trong sơ đồ mạng máy tính) và như một liên tưởng về độ phức tạp của các cơ sở hạ tầng chứa trong nó

 Ở mô hình điện toán này, mọi khả năng liên quan đến công nghệ thông tin đều được cung cấp dưới dạng các "dịch vụ", cho phép người sử dụng truy cập các dịch

vụ công nghệ từ một nhà cung cấp nào đó "trong đám mây" mà không cần phải có

Trang 7

các kiến thức, kinh nghiệm về công nghệ đó, cũng như không cần quan tâm đến các cơ sở hạ tầng phục vụ công nghệ đó

1.3 Kiến trúc của điện toán đám mây

Điểm chủ yếu trong cơ sở hạ tầng của điện toán đám mây hiện nay bao gồm các dịch vụ tin cậy được phân phối qua trung tâm dữ liệu và được xây dựng trên các máy chủ với các công nghệ ảo hóa khác nhau

Các dịch vụ này có thể truy cập được từ bất kỳ nơi nào trên thế giới, và “đám mây”

là điểm truy cập duy nhất đáp ứng tất cả nhu cầu của người dùng máy tính Việc cung cấp đám mây phải phù hợp với yêu cầu của khách hàng về chất lượng dịch

vụ và mức độ chấp nhận của dịch vụ Các tiêu chuẩn mở và phần mềm nguồn mở cũng quyết định đến sự lớn mạnh của điện toán đám mây

Kiến trúc đám mây gồm: nền tảng đám mây (Cloud Platform), các dịch vụ đám mây (Cloud Service), cơ sở hạ tầng đám mây (Cloud Infrastructure), lưu trữ đám mây (Cloud Storage)

1.4 Đặc điểm của điện toán đám mây

 Điện toán đám mây có những đặc điểm chính sau đây:

 Tránh phí tổn cho khách hàng

 Độc lập thiết bị và vị trí: cho phép khách hàng truy cập hệ thống từ bất kỳ nơi nào hoặc bằng bất kỳ thiết bị gì

 Nhiều người sử dụng: giúp chia sẻ tài nguyên và giá thành, cho phép tập trung hóa cơ sở hạ tầng, tận dụng hiệu quả các hệ thống

 Phân phối theo nhu cầu sử dụng

 Quản lý được hiệu suất

 Tin cậy, khả năng mở rộng và cải thiện tài nguyên

Trang 8

 Khả năng duy trì

1.5 Mô hình dịch vụ

Dịch vụ Cloud Computing ( CC ) rất đa dạng và bao gồm tất cả các lớp dịch vụ điện toán từ cung cấp năng lực tính toán trên dưới máy chủ hiệu suất cao hay các máy chủ ảo, không gian lưu trữ dữ liệu, hay một hệ điều hành, một công cụ lập trình, hay một ứng dụng kế toán … Các dịch vụ cũng được phân loại khá da dạng, nhưng các mô hình dịch vụ CC phổ biến nhất có thể được phân thành 3 nhóm: Dịch vụ hạ tầng (IaaS), Dịch vụ nền tảng (PaaS) và Dịch vụ phần mềm (SaaS)

 Dịch vụ hạ tầng IaaS (Infrastructure as a Service)

Dịch vụ IaaS cung cấp dịch vụ cơ bản bao gồm năng lực tính toán, không gian lưu trữ, kết nối mạng tới khách hàng Khách hàng (cá nhân hoặc tổ chức) có thể sử dụng tài nguyên hạ tầng này để đáp ứng nhu cầu tính toán hoặc cài đặt ứng dụng riêng cho người sử dụng Với dịch vụ này khách hàng làm chủ hệ điều hành, lưu trữ và các ứng dụng do khách hàng cài đặt Khách hàng điển hình của dịch vụ IaaS

có thể là mọi đối tượng cần tới một máy tính và tự cài đặt ứng dụng của mình

Ví dụ điển hình về dịch vụ này là dịch vụ EC2 của Amazon Khách hàng có thể đăng ký sử dụng một máy tính ảo trê dịch vụ của Amazon và lựa chọn một hệ thống điều hành (ví dụ, Windows hoặc Linux) và tự cài đặt ứng dụng của mình

 Dịch vụ nền tảng PaaS (Platform as a Service)

Dịch vụ PaaS cung cấp nền tảng điện toán cho phép khách hàng phát triển các phần mềm, phục vụ nhu cầu tính toán hoặc xây dựng thành dịch vụ trên nền tảng Cloud dó Dịch vụ PaaS có thể được cung cấp dưới dạng các ứng dụng lớp giữa (middleware), các ứng dụng chủ (application server) cùng các công cụ lập trình với ngôn ngữ lập trình nhất định để xây dựng ứng dụng Dịch vụ PaaS cũng có thể được xây dựng riêng và cung cấp cho khách hàng thông qua một API riêng Khách hàng xây dựng ứng dụng và tương tác với hạ tầng CC thông qua API đó Ở mức

Trang 9

PaaS, khách hàng không quản lý nền tảng Cloud hay các tài nguyên lớp như hệ điều hành, lưu giữ ở lớp dưới Khách hàng điển hình của dịch vụ PaaS chính là các nhà phát triển ứng dụng (ISV) Dịch vụ App Engine của Google là một dịch vụ PaaS điển hình, cho phép khách hàng xây dựng các ứng dụng web với môi trường chạy ứng dụng và phát triển dựa trên ngôn ngữ lập trình Java hoặc Python

 Dịch vụ phần mềm SaaS (Software as a Service)

Dịch vụ SaaS cung cấp các ưng dụng hoàn chỉnh như một dịch vụ theo yêu cầu cho nhiều khách hàng với chỉ một phiên bản cài đặt Khách hàng lựa chọn ứng dụng phù hợp với nhu cầu và sử dụng mà không quan tâm tói hay bỏ công sức quản lý tài nguyên tính toán bên dưới

Dịch vụ SaaS nổi tiếng nhất phải kể đến Salesforce.com với các ứng dụng cho doanh nghiệp mà nổi bật nhất là CRM Các ứng dụng SaaS cho người dùng cuối phổ biến là các ứng dụng office Online của Microsoft hay Google Docs của Google

1.6 Mô hình của điện toán đám mây

 Đám mây “công cộng”

Mô hình đầu tiên được nói đến khi đề cập tới CC chính là mô hình Public Cloud Đây là mô hình mà hạ tầng CC được một tổ chức sỡ hữu và cung cấp dịch

vụ rộng rãi cho tất cả các khách hàng thông qua hạ tầng mạng Internet hoặc các mạng công cộng diện rộng Các ứng dụng khác nhau chia sẻ chung tài nguyên tính toán, mạng và lưu trữ Do vậy, hạ tầng CC được tiết kế để đảm bảo cô lập về dữ liệu giữa các khách hàng và tách biệt về truy cập

Trang 10

Các dịch vụ Public Cloud hướng tới số lượng khách hàng lớn nên thường có năng lực về hạ tầng cao, đáp ứng nhu cầu tính toán linh hoạt, đem lại chi phí thấp cho khách hàng Do đó khách hàng của dịch vụ trên Public Cloud sẽ bao gồm tất cả các tầng lớp màkhách hàng cá nhân và doanh nghiệp nhỏ sẽ được lợi thế trong việc dễ dàng tiếp cận các ứng dụng công nghệ cap, chất lượng mà không phải đầu tư ban đầu, chi phí sử dụng thấp, linh hoạt

 Đám mây “doanh nghiệp”

Đám mây doanh nghiệp (Private Cloud) là mô hình trong đó hạ tầng đám mây được sở hữu bởi một tổ chức và phục vụ cho người dùng của tôt chức đó Private Cloud có thể được vận hành bởi một bên thứ ba và hạ tầng đám mây có thể được đặt bên trong hoặc bên ngoài tổ chức sở hữu (tại bên thứ ba kiêm vận hành hoặc thậm chí là một bên thứ tư)

Private Cloud được các tổ chức, doanh nghiệp lớn xây dựng cho mình nhằm khai thác ưu điểm được các tổ chức, doanh nghiệp lớn xây dựng cho mình nhằm khai thác ưu điểm về công nghệ và khả năng quản trị của CC Với Private Cloud, các doanh nghiệp tối ưu được hạ tầng IT của mình, nâng cao hiệu quả sử dụng, quản lý trong cấp phát và thu hồi tài nguyên, qua đó giảm thời gian đưa sản phẩm sản xuất, kinh doanh ra thị trường

 Đám mây “chung”

Đám mây chung (Community Cloud) là mô hình trong đó hạ tầng đám mây được chia sẻ bởi một số tổ chức cho cộng đồng người dùng trong các tổ chức đó Các tổ chức này do đặc thù không tiếp cận với các dịch vụ Public Cloud và chia sẻ chung một hạ tầng CC để nâng cao hiệu quả đầu tư và sử dụng

Trang 11

 Đám mây “lai”

Mô hình đám mây lai (Hybrid Cloud) là mô hình bao gồm hai hoặc nhiều hơn các đám mây trên tích hợp với nhau Mô hình Hybrid Cloud cho phép chia sẻ hạ tầng hoặc đáp ứng nhu cầu trao đổi dữ liệu

1.7 Ưu điểm và nhược điểm của điện toán đám mây

 Ưu điểm của điện toán đám mây

o Tốc độ xử lý nhanh, chi phí đầu tư ban đầu được giảm đến mức thấp nhất

Chia sẻ tài nguyên và chi phí trên một địa bàn rộng lớn

Độ tin cậy cao, các vấn đề đều được các chuyên gia xử lý

Dữ liệu được tập trung ở một nơi

 Nhược điểm của điện toán đám mây

o Tính riêng tư, bảo mật

Tính sẵn sang, di động của dữ liệu

II : Nền tảng Google App Engine

Google App Engine (GAE) là một nền tảng phát triển và triển khai ứng dụng web đám mây do Google cung cấp GAE cho phép các nhà phát triển xây dựng và triển khai các ứng dụng web mà không cần phải lo lắng về việc quản lý cơ sở hạ tầng GAE cung cấp một loạt các tính năng và lợi ích

Trang 12

Lựa chọn đề tài "Google App Engine" cho bài tập lớn về môn điện toán đám mây

là một quyết định được đưa ra sau một quá trình xem xét cẩn thận và đánh giá kỹ lưỡng của tập thể chúng em Có nhiều lý do mà chúng em quyết định tập trung vào nền tảng này, và dưới đây là những lý do chi tiết và rõ ràng

2.1 Giới thiệu về Google App Engine :

“Google App Engine” (GAE) là một nền tảng hosting bao gồm web server,

cơ sở dữ liệu BigTable and kho lưu trữ file GFS GAE cho phép bạn viết ứng dụng web dựa trên cơ sở hạ tầng của Google Nghĩa là không cần quan tâm là trang web được lưu trữ như thế nào (kể cả database đi kèm), mà chỉ cần quan tâm đến việc phát triển ứng dụng theo các API do Google cung cấp

Với App Engine, ta chỉ cần tải lên các ứng dụng, và nó sẵn sàng để phục vụ người dùng ta có thể sử dụng tên miền riêng của mình (chẳng hạn như) thông qua google apps Hoặc có thể dùng sub-domain miễn phí của appspot.com

GAE cho phép được host miễn phí với dung lượng 500 MB lưu trữ và cho phép 10

GB băng thông lưu chuyển mỗi ngày hay tương đương 5 triệu pageview hàng tháng, vượt qua mức này bạn sẽ phải trả phí Dùng GAE, chúng ta khỏi phải thiết

kế database, viết SQL để truy vấn data, map data vô object Chúng ta chỉ cần design các class và GAE tự động lo phần làm việc với database

Những tài nguyên này được đo bằng gigabyte và không có bất kì lệ phí hàng tháng nào hay lệ phí để chúng ta thay đổi diện mạo trang web Hóa đơn thanh toán những nguồn tài nguyên này bao gồm CPU chúng ta sử dụng, lưu trữ hàng tháng, băng

Trang 13

thông vào ra (incoming and outgoing bandwidth), và một số các tài nguyên khác của dịch vụ App Engine

2.2 Các nền tảng được hỗ trợ

Hiện App Engine hỗ trợ 2 loại ngôn ngữ chính là: Python và Java hiện tại thêm ngôn ngữ Go (đang ở mức thử nghiệm) Một số ngôn ngữ khác như PHP cũng có thể chạy được nếu cài cùng với bộ chuyển từ PHP sang Java

Kiến trúc của App Engine khác với những server lưu trữ ứng dụng web thông thường Ở phần lõi của nó, App Engine sẽ hạn chế những truy cập từ ứng dụng của chúng ta đến cơ sở hạ tầng vật lý, ngăn cản chúng ta từ việc mở các socket, chạy các tiến trình ngầm, hay các cách đi khác bằng cổng sau để giúp chương trình của ta có quyền trên môi trường này

Trong GAE, tùy vào ứng dụng viết theo ngôn ngữ nào, nó sẽ được chạy trên môi trường Java hay Python tương ứng Song song đó, chúng ta sẽ được cung cấp

sử dụng miễn phí các dịch vụ của google như URL Fetch, Mail, Memcache, … và được lưu trữ trên cơ sở dữ liệu hướng đối tượng datastore

Khi yêu cầu được gửi lên từ phía người dùng, GAE sẽ chuyển yêu cầu đó cho ứng dụng của chúng ta Tùy theo việc xử lý chúng mà ta cấu hình và sử dụng các ứng dụng thích hợp của GAE

2.3 Tương Thích với Xu Hướng Hiện Đại:

Việc chọn đề tài liên quan đến Google App Engine không chỉ giúp hiểu rõ

về công nghệ đám mây mà còn đặt mình vào vị trí của nhà phát triển trong thế giới phát triển phần mềm đương đại, giúp nắm bắt xu hướng và kỹ thuật mới

Tổng cộng, việc lựa chọn đề tài "Google App Engine" cho bài tập lớn không chỉ là để hiểu rõ về một dịch vụ đám mây cụ thể mà còn để mở rộng tầm hiểu biết

về điện toán đám mây và các ứng dụng thực tế của nó trong phát triển phần mềm Thông qua việc tìm hiểu sâu rộng về Google App Engine, chúng ta có cơ hội thấu

Ngày đăng: 17/07/2024, 18:26

TỪ KHÓA LIÊN QUAN

w