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

Nghiên cứu các mô hình dịch vụ trong điện toán đám mây

69 8 0

Đ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

Định dạng
Số trang 69
Dung lượng 1,04 MB

Nội dung

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƢỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI - NGUYỄN XUÂN THÀNH NGHIÊN CỨU CÁC MÔ HÌNH DỊCH VỤ TRONG ĐIỆN TỐN ĐÁM MÂY Chun ngành: Công nghệ Thông tin LUẬN VĂN THẠC SĨ KỸ THUẬT CÔNG NGHỆ THÔNG TIN CHỦ TỊCH HỘI ĐỒNG NGƢỜI HƢỚNG DẪN KHOA HỌC TS Nguyễn Thị Thu Hƣơng TS Huỳnh Thị Thanh Bình HÀ NỘI – NĂM 2014 Đề tài: Nghiên cứu mơ hình dịch vụ điện tốn đám mây MỤC LỤC MỞ ĐẦU Lý chọn đề tài Lịch sử nghiên cứu Mục đích nghiên cứu Đối tƣợng nghiên cứu Phạm vi nghiên cứu Phƣơng pháp nghiên cứu CHƢƠNG 1: TỔNG QUAN VỀ ĐIỆN TOÁN ĐÁM MÂY Định nghĩa Mơ hình tổng thể 10 2.1 Các dịch vụ ứng dụng 11 2.2 Các dịch vụ tảng 11 2.3 Các dịch vụ sở hạ tầng 12 Phân loại điện toán đám mây 13 3.1 Đám mây công cộng - Public Cloud 13 3.2 Đám mây riêng - Private Cloud 14 3.3 Đám mây lai - Hybrid Cloud 15 3.4 Đám mây cộng đồng - Cominity Cloud 16 Yêu cầu chung điện toán đám mây 17 Xu hƣớng phát triển 21 Các khó khăn thách thức 22 Kết luận 23 CHƢƠNG 2: CÁC MÔ HÌNH DỊCH VỤ SAAS, PAAS, IAAS 25 Mơ hình dịch vụ SaaS 25 1.1 Giới thiệu SaaS 25 1.2 Ƣu điểm SaaS 27 1.3 Hạn chế SaaS 28 Mơ hình dịch vụ PaaS 29 2.1 Giới thiệu PaaS 29 2.2 Ƣu điểm PaaS 30 Học viên thực hiện: Nguyễn Xuân Thành - CA120621 - 12ACNTT.HĐ Đề tài: Nghiên cứu mơ hình dịch vụ điện toán đám mây 2.3 Hạn chế PaaS 31 Mơ hình dịch vụ IaaS 31 3.1 Giới thiệu IaaS 31 3.2 Ƣu điểm IaaS 32 3.3 Hạn chế IaaS 33 CHƢƠNG 3: NGHIÊN CỨU CÁC MƠ HÌNH THỰC TẾ CỦA ĐIỆN TOÁN ĐÁM MÂY 36 Mơ hình kiến trúc điện tốn đám mây IBM 36 Mơ hình kiến trúc điện tốn đám mây Window Azure Microsoft 36 2.1 Windows Azure 36 2.2 Nền tảng dịch vụ (Azure Services Platform) 36 2.3 Fabric Controller 37 2.4 Windows Azure với ngƣời sử dụng lập trình viên 37 Đám mây điện toán linh hoạt Amazon 37 Máy ứng dụng Google 39 Salesforce 39 Web Showcase 1.5 40 CHƢƠNG 4: NGHIÊN CỨU CÁC ỨNG DỤNG CỦA ĐIỆN TOÁN ĐÁM MÂY 42 Ứng dụng điện toán đám mây quản lý giáo dục 42 Ứng dụng điện toán đám mây giáo dục 44 Ứng dụng điện toán đám mây cho doanh nghiệp 46 CHƢƠNG 5: XÂY DỰNG MƠ HÌNH THỰC TẾ VÀ ĐỀ XUẤT HƢỚNG PHÁT TRIỂN ỨNG DỤNG ĐIỆN TOÁN ĐÁM MÂY 48 Giới thiệu Google App Engine 48 Các thành phần chức Google App Engine 49 2.1 Môi trƣờng thực thi (runtime environment) 49 2.2 Các file server tĩnh (static file servers) 50 2.3 Kho liệu (datastore) 50 2.3.1 Thực thể (entities) Thuộc tính (properties) 51 2.3.2 Truy vấn (queries) Chỉ mục (indexes) 51 Học viên thực hiện: Nguyễn Xuân Thành - CA120621 - 12ACNTT.HĐ Đề tài: Nghiên cứu mơ hình dịch vụ điện toán đám mây 2.3.3 Phiên giao dịch (transaction) 51 2.4 Các dịch vụ (services) 52 2.5 Tài khoản Google (google accounts) 53 2.6 Các cơng cụ lập trình (programming tools) 53 Hạn chế Google App Engine 54 Xây dựng Project chạy đám mây Google 55 4.1 Cài đặt 55 4.1.1 Cài đặt Java JDK 55 4.1.2 Cài đặt Eclipse 55 4.1.3 Cài đặt Google Plugin for Eclipse 55 4.2 Xây dựng Project 55 4.3 Đƣa Project lên App Engine 61 Nhận xét, đánh giá đề xuất hƣớng phát triển 63 KẾT LUẬN 64 Kết đạt đƣợc 64 Hạn chế 64 Hƣớng phát triển đề tài 64 DANH MỤC TÀI LIỆU THAM KHẢO 65 Học viên thực hiện: Nguyễn Xuân Thành - CA120621 - 12ACNTT.HĐ Đề tài: Nghiên cứu mơ hình dịch vụ điện tốn đám mây LỜI CAM ĐOAN Tôi xin cam đoan: Những nội dung luận văn cơng trình nghiên cứu dƣới hƣớng dẫn trực tiếp TS Huỳnh Thị Thanh Bình Mọi tham khảo luận văn đƣợc trích dẫn rõ ràng tên tác giả, tên cơng trình, thời gian, địa điểm cơng bố Các số liệu, kết nêu luận văn trung thực chƣa đƣợc công bố cơng trình khác Mọi chép không hợp lệ, vi phạm quy chế đào tạo hay gian trá tơi xin chịu hồn tồn trách nhiệm Tác giả luận văn (Ký ghi rõ họ tên) Học viên thực hiện: Nguyễn Xuân Thành - CA120621 - 12ACNTT.HĐ Đề tài: Nghiên cứu mơ hình dịch vụ điện toán đám mây DANH MỤC CÁC KÝ HIỆU, CÁC CHỮ VIẾT TẮT Chữ viết tắt EC2 IDE API Viết đầy đủ Elastic Compute Integrated Development Environment Application Programming Interface Ý nghĩa tên đám mây Amazon mơi trƣờng thiết kế hợp giao diện lập trình ứng dụng IaaS Infrastructure as a Service dịch vụ sở hạ tầng PaaS Platform as a Service dịch vụ tảng SaaS Software as a Service dịch vụ phần mềm GAE Google App Engine tên dịch vụ Google Học viên thực hiện: Nguyễn Xuân Thành - CA120621 - 12ACNTT.HĐ Đề tài: Nghiên cứu mơ hình dịch vụ điện toán đám mây DANH MỤC CÁC BẢNG Bảng Bảng khái niệm ba mơ hình dịch vụ điện toán đám mây 33 Học viên thực hiện: Nguyễn Xuân Thành - CA120621 - 12ACNTT.HĐ Đề tài: Nghiên cứu mơ hình dịch vụ điện tốn đám mây DANH MỤC HÌNH VẼ Hình 1: Mơ hình tổng quan đám mây Hình 2: Mơ hình tổng thể đám mây 10 Hình 3: Phân loại đám mây 13 Hình 4: Mơ hình đám mây cơng cộng 14 Hình 5: Mơ hình đám mây riêng 15 Hình 6: Mơ hình đám mây lai 16 Hình 7: Mơ hình đám mây cộng đồng 17 Hình 8: Mơ hình đám mây 21 Hình 9: Mơ hình loại dịch vụ 25 Hình 10: Mơ hình mối quan hệ thiết bị khách hàng với đám mây SaaS 26 Hình 11: Mơ hình đám mây PaaS 29 Hình 12: Mơ hình đám mây IaaS 31 Học viên thực hiện: Nguyễn Xuân Thành - CA120621 - 12ACNTT.HĐ Đề tài: Nghiên cứu mơ hình dịch vụ điện tốn đám mây MỞ ĐẦU Lý chọn đề tài Hiện nay, với phát triển nhanh chóng cơng nghệ thơng tin ngồi nhu cầu cung cấp mạng có dung lƣợng đƣờng truyền lớn, ổn định an toàn cơng ty, doanh nghiệp, quan việc quản lý tốt, an toàn, hiệu liệu tốn khó khăn đƣợc ƣu tiên giải hàng đầu Dữ liệu mà nói đến liệu riêng công ty, liệu khách hàng, đối tác Ban đầu để quản lý đƣợc nguồn liệu doanh nghiệp phải tính toán đầu tƣ cho nhiều loại chi phí nhƣ chi phí cho quản trị viên, bảo trì, sửa chữa, chi phí cho phần cứng, phần mềm, sở hạ tầng… Đồng thời họ cịn phải tính tốn đến khả nâng cấp, mở rộng hệ thống, độ bảo mật tính sẵn sàng, xác liệu phải cao Từ toán hệ thống quản lý liệu nhƣ thấy đƣợc có nơi nhà cung cấp dịch vụ tin cậy giúp công ty quản lý tốt, hiệu nguồn liệu doanh thu, lợi nhuận họ tăng Vì cơng ty, doanh nghiệp khơng phải lo tính tốn, đầu tƣ tiền bạc nhân cho hệ thống quản lý liệu mà tập trung trí óc vốn cho việc kinh doanh, sản xuất họ Ngồi liệu cơng ty đƣợc quản lý chuyên nghiệp, kinh nghiệm nhà cung cấp dịch vụ liệu đƣợc an toàn, bảo mật tránh đƣợc nhiều rủi ro cho họ Xuất phát từ ý tƣởng hoàn cảnh thuật ngữ “cloud computing” đƣợc đời nhƣ Điện toán đám mây (Cloud computing) ngày nhận đƣợc nhiều quan tâm nhà khoa học, nhà quy hoạch, quản lý Cũng từ điện tốn đám mây có nhiều mơ hình đƣợc đƣa giới Mỗi mơ hình đại diện cho ứng dụng nhu cầu thực tế Luận văn tập trung nghiên cứu mơ hình dịch vụ điện tốn đám mây Trên sở kết đạt đƣợc, luận văn tổng kết so sánh đánh giá đƣa hƣớng phát triển đề tài tƣơng lai Học viên thực hiện: Nguyễn Xuân Thành - CA120621 - 12ACNTT.HĐ Đề tài: Nghiên cứu mơ hình dịch vụ điện tốn đám mây Lịch sử nghiên cứu Thuật ngữ "cloud computing" đời năm 2007 khơng phải để nói trào lƣu mới, mà để khái quát lại hƣớng phát triển sở hạ tầng Công nghệ thông tin vốn diễn từ năm qua Quan niệm đƣợc diễn giải cách đơn giản: nguồn tính tốn khổng lồ nhƣ phần cứng (máy chủ), phần mềm, dịch vụ (chƣơng trình ứng dụng), nằm máy chủ ảo (đám mây) Internet thay máy tính gia đình văn phịng (trên mặt đất) để ngƣời kết nối sử dụng họ cần Nói cách khác, mơ hình tính tốn này, khả liên quan đến cơng nghệ thông tin đƣợc cung cấp dƣới dạng "dịch vụ", cho phép ngƣời sử dụng truy cập dịch vụ công nghệ thông tin từ nhà cung cấp "trong đám mây" mà khơng cần phải biết cơng nghệ đó, nhƣ khơng cần quan tâm đến sở hạ tầng phục vụ công nghệ Theo tổ chức Xã hội máy tính IEEE, “Điện tốn đám mây hình mẫu thơng tin đƣợc lƣu trữ thƣờng trực máy chủ Internet đƣợc đƣợc lƣu trữ tạm thời máy khách, bao gồm máy tính cá nhân, trung tâm giải trí, máy tính doanh nghiệp, phƣơng tiện máy tính cầm tay, " [1] Một cột mốc cho điện toán đám mây xuất Salesforce.com năm 1999, mà tiên phong khái niệm ứng dụng doanh nghiệp cung cấp thông qua trang web đơn giản Công ty dịch vụ mở đƣờng cho chuyên gia cơng ty phần mềm thống để cung cấp ứng dụng Internet Sự phát triển Amazon Web Services năm 2002, cung cấp dịch vụ dựa đám mây bao gồm lƣu trữ, tính tốn trí tuệ nhân tạo thơng qua Amazon Mechanical Turk Sau vào năm 2006, Amazon mắt điện tốn đám mây Elastic Compute (EC2) dịch vụ web thƣơng mại cho phép công ty nhỏ, cá nhân th máy tính mà để chạy ứng dụng máy tính Một cột mốc lớn đến năm 2009, với Web 2.0 bƣớc tiến triển lớn, Google công ty khác bắt đầu cung cấp ứng dụng doanh nghiệp dựa trình duyệt, dịch vụ nhƣ Google Apps Học viên thực hiện: Nguyễn Xuân Thành - CA120621 - 12ACNTT.HĐ Đề tài: Nghiên cứu mơ hình dịch vụ điện toán đám mây 2.3.1 Thực thể (entities) Thuộc tính (properties) Một ứng dụng App Engine chứa liệu hay nhiều thực thể datastore Mỗi thực thể có hay nhiều thuộc tính, thuộc tính có tên giá trị Mỗi thực thể đƣợc phân loại để tiện cho việc truy vấn Ở nhìn đầu tiên, thấy thực thể gần giống hàng (row) bảng sở liệu quan hệ Và thuộc tính giống với cột Tuy nhiên thực thể loại với có thuộc tính khác Thứ 2, thực thể có thuộc tính với thực thể loại khác nhƣng khác kiểu liệu Một điểm khác thực thể hàng (row) thực thể có nhiều giá trị cho thuộc tính đơn lẻ Mỗi thực thể có khóa riêng (key) phân biệt lẫn đƣợc cung cấp ứng dụng App Engine Khác với CSDL quan hệ, khố thực thể khơng phải thuộc tính, tồn độc lập với thực thể Khố thực thể khơng đƣợc thay đổi thực thể đƣợc tạo 2.3.2 Truy vấn (queries) Chỉ mục (indexes) Một câu truy vấn datastore trả không nhiều thực thể loại với Nó trả khóa thực thể Câu truy vấn dựa vào giá trị thuộc tính thực thể đƣợc xếp theo giá trị thuộc tính Câu truy vấn làm việc với khóa thực thể Với App Engine, câu truy vấn có mục datastore Khi ứng dụng cần thực hiên câu truy vấn, datastore tìm mục câu truy vấn Khi tạo thực thể cập nhật cũ datastore cập nhật lại mục Điều giúp cho câu truy vấn đƣợc nhanh 2.3.3 Phiên giao dịch (transaction) Khi ứng dụng có nhiều client liên tục đọc hay ghi liệu thời điểm, phiên giao dịch cần thiết để liệu không bị đọc sai Học viên thực hiện: Nguyễn Xuân Thành - CA120621 - 12ACNTT.HĐ 51 Đề tài: Nghiên cứu mơ hình dịch vụ điện toán đám mây Mỗi phiên giao dịch đơn vị nhỏ có hai trạng thái thành công thất bại Một ứng dụng đọc hay cập nhật nhiều thực thể phiên giao dịch, nhƣng phải nói cho App Engine biết thực thể đƣợc cập nhật tạo nhiều thực thể Ứng dụng làm đƣợc điều việc tạo nhóm thực thể Nhờ nhóm thực thể, App Engine biết đƣợc thực thể phân tán nhƣ qua server, khẳng định chắn phiên giao dịch thành công hay thất bại App Engine hỗ trợ phiên giao dịch nội (local transaction) Nếu ngƣời dùng cố gắng cập nhật thực thể ngƣời khác cập nhật thực thể datastore trả biệt lệ báo lỗi Trong thuật ngữ database, ta nói App Engine sử dụng “optimistic concurrency control” Với mục “optimistic concurrency control”, App Engine đƣợc thiết kế giúp cho ứng dụng đọc liệu nhanh đảm bảo [14] 2.4 Các dịch vụ (services) Dịch vụ mối quan hệ datastore với môi trƣờng thực thi GAE bao gồm số dịch vụ hữu ích cho ứng dụng web Dịch vụ memcache dịch vụ lƣu trữ theo khóa - giá trị Thuận lợi dịch vụ datastore tốc độ nhanh, nhanh so với việc lƣu trữ lấy liệu cách bình thƣờng datastore Memcache lƣu trữ liệu nhớ thay ổ đĩa để tăng tốc độ truy cập Nó phân tán nhƣ datastore nhiên khơng lƣu trữ, điện liệu memcache Và có nhiều giới hạn sử dụng datastore Việc sử dụng memcache tốt lƣu lại kết câu query hay tính tốn trƣớc Ứng dụng kiểm tra memcache, khơng có liệu tiến hành query datastore Ứng dụng App Engine truy cập tài nguyên web khác nhờ vào dịch vụ URL Fetch Dịch vụ tạo yêu cầu theo dạng HTTP gửi đến server khác Internet nhƣ việc tƣơng tác với web service khác Vì ta Học viên thực hiện: Nguyễn Xuân Thành - CA120621 - 12ACNTT.HĐ 52 Đề tài: Nghiên cứu mơ hình dịch vụ điện toán đám mây truy cập đến server khác thời gian lâu nên URL Fetch hỗ trợ chạy ngầm bên dƣới xử lý yêu cầu khác Ứng dụng App Engine gửi mail dựa vào dịch vụ Mail, đƣợc cấu hình, nhận đƣợc email Ứng dụng App Engine gửi nhận tin nhắn đến dịch vụ chat có sử dụng giao thức XMPP bao gồm Google Talk 2.5 Tài khoản Google (google accounts) Các chức App Engine tích hợp tài khoản Google nhƣ Google Mail, Google Docs Google Calendar Chúng ta sử dụng tài khoản Google nhƣ cho ứng dụng chúng ta, khơng cần thiết lập thêm Và ngƣời dùng có tài khoản Google, họ đăng nhập vào ứng dụng với tài khoản đó, mà khơng cần tạo tài khoản riêng ứng dụng Tất nhiên, điều khơng bắt buộc Chúng ta ln xây dựng hệ thống tài khoản riêng mình, sử dụng provider OpenID 2.6 Các cơng cụ lập trình (programming tools) Google cung cấp số tool miễn phí cho việc phá triển ứng dụng App Engine ngôn ngữ Java Python Chúng ta download software development kit (SDK) cho ngôn ngữ tƣơng ứng hệ điều hành từ website Google Ngƣời dùng Java down SDK cho Java form plug-in cho Eclipse Ngƣời dùng Python sử dụng Windows Mac OS X tải SDK cho Python từ form giao diện ứng dụng Các SDK có file zip, sử dụng command-lines để trực tiếp tích hợp vào mơi trƣờng phát triển xây dựng hệ thống [15] Mỗi SDK bao gồm server web chạy ứng dụng máy cá nhân, đóng vai trị mơi trƣờng thực thi,kho liệu service Server tự động phát thay đổi file source load lại chúng cần, ln mở server lập trình cho ứng dụng Học viên thực hiện: Nguyễn Xuân Thành - CA120621 - 12ACNTT.HĐ 53 Đề tài: Nghiên cứu mơ hình dịch vụ điện toán đám mây Nếu sử dụng Eclipse, chạy server cho Java tích hợp debugger, đặt breakpoint code Chúng ta sử dụng Eclipse cho ứng dụng phát triển Python dùng PyDev, nhánh mở rộng Eclipse, bao gồm debugger cho Python Mỗi SDK bao gồm công cụ cho việc tƣơng tác với ứng dụng chạy App Engine Chủ yếu sử dụng cho việc upload code lên App Engine Chúng ta sử dụng tool để download file log từ ứng dụng chạy, quản lý danh mục ứng dụng SDK Python Java gồm chức mà cài đặt ứng dụng cho việc truy cập có thứ tự từ xa cách an tồn đến ứng dụng SDK Python bao gồm công cụ dùng cho việc xử lý liệu lớn, nhƣ upload liệu từ file text, tải lƣợng lớn liệu, lƣu cho mục đích lƣu trữ SDK có command-line shell Python cho việc test, kiểm lỗi thao tác với liệu (Các tool có SDK cho Python, nhƣng làm việc với ứng dụng Java sử dụng phiên Java có chức truy cập từ xa) Chúng ta viết đoạn mã script chƣơng trình sử dụng chức truy cập từ xa cho việc vận chuyển lƣợng lớn liệu biện pháp bảo trì khác Hạn chế Google App Engine • App Engine hỗ trợ HTTPS domain appspot.com chƣa hỗ trợ domain khác • Hiện Google App Engine hỗ trợ loại ngôn ngữ là: Python, Java (Một số ngôn ngữ khác nhƣ PHP chạy đƣợc cài với chuyển từ PHP sang Java) • Phụ thuộc hồn tồn vào dịch vụ Google • Microsoft, … chẳng mua sản phẩm đƣợc xây dựng tảng đối thủ • Các nhà đầu tƣ e ngại tồn liệu nằm tay nhà cung cấp dịch vụ, Google Học viên thực hiện: Nguyễn Xuân Thành - CA120621 - 12ACNTT.HĐ 54 Đề tài: Nghiên cứu mơ hình dịch vụ điện tốn đám mây Xây dựng Project chạy đám mây Google 4.1 Cài đặt Để xây dựng đƣợc Project chạy hệ thống máy chủ đám mây Google cần cài đặt Java JDK Eclipse 4.1.1 Cài đặt Java JDK Coppy đƣờng link dƣới paste vào trình duyệt Web: http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads2133151.html Tiếp theo chọn phù hợp với Hệ điều hành máy tính cài đặt Sau download cài đặt JDK bình thƣờng 4.1.2 Cài đặt Eclipse Vào trang: http://www.eclipse.org/downloads/packages/eclipse-standard-44/lunar Chọn phù hợp với Hệ điều hành máy tính, Download giải nén chạy file eclipse.exe chọn đƣờng dẫn để lƣu 4.1.3 Cài đặt Google Plugin for Eclipse Vào trang: https://developers.google.com/eclipse/docs/download Chọn Plugin for Eclipse 4.4 (Luna) tƣơng ứng với phiên Eclipse 4.4 (Luna) cài đặt 4.2 Xây dựng Project Trên tảng Eclipse cụ thể phiên Eclipse 4.4 (Luna) xây dựng project có tên QLDB ứng dụng vào việc quản lý danh bạ Project có cấu trúc nhƣ sau: Học viên thực hiện: Nguyễn Xuân Thành - CA120621 - 12ACNTT.HĐ 55 Đề tài: Nghiên cứu mơ hình dịch vụ điện tốn đám mây Thƣ mục có tên QLDB đƣợc tạo chứa file ứng dụng: - Thƣ mục src để chứa mã nguồn java file xml cấu hình - Thƣ mục war để chứa file class đƣợc biên dịch từ file nguồn java - Các file jar thƣ viện Trong thƣ mục war có chứa file query_result.jsp file giao diện ứng dụng để ngƣời sử dụng tƣơng tác có nội dung code nhƣ sau: QLDB Học viên thực hiện: Nguyễn Xuân Thành - CA120621 - 12ACNTT.HĐ 56 Đề tài: Nghiên cứu mơ hình dịch vụ điện toán đám mây TIM KIEM Ten: Ten:,  Dia chi:,  Sdt:     Xoa QUAN LY DANH BA: Ten: Dia chi: Sdt: Ten: Dia chi: Sdt: File AddServlet.java có chức thêm vào liệu danh bạ tên Trƣớc thêm vào so sánh giá trị name=null quay giao diện Học viên thực hiện: Nguyễn Xuân Thành - CA120621 - 12ACNTT.HĐ 57 Đề tài: Nghiên cứu mơ hình dịch vụ điện tốn đám mây ban đầu đƣa thơng báo “Ten khong hop le” Ngƣợc lại lƣu tên thơng báo thành cơng AddServlet.java có nội dung: package edu.dartmouth.cs.gae_sample; import java.io.IOException; import java.util.ArrayList; import import import import javax.servlet.ServletException; javax.servlet.http.HttpServlet; javax.servlet.http.HttpServletRequest; javax.servlet.http.HttpServletResponse; import edu.dartmouth.cs.gae_sample.data.Contact; import edu.dartmouth.cs.gae_sample.data.ContactDatastore; public class AddServlet extends HttpServlet { private static final long serialVersionUID = 1L; public void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException, ServletException { String name = req.getParameter("name"); String addr = req.getParameter("addr"); String phone = req.getParameter("phone"); if (name == null || name.equals("")) { req.setAttribute("_retStr", "Ten khong hop le"); getServletContext().getRequestDispatcher("/query_result.jsp") forward(req, resp); return; } Contact contact = new Contact(name, addr, phone); boolean ret = ContactDatastore.add(contact); if (ret) { req.setAttribute("_retStr", "Them " + name + " cong"); ArrayList result = new ArrayList(); result.add(contact); req.setAttribute("result", result); } else { req.setAttribute("_retStr", name + " da thoat"); } getServletContext().getRequestDispatcher("/query_result.jsp").forward( req, resp); } public void doPost(HttpServletRequest req, HttpServletResponse resp) throws IOException, ServletException { doGet(req, resp); } } Học viên thực hiện: Nguyễn Xuân Thành - CA120621 - 12ACNTT.HĐ 58 Đề tài: Nghiên cứu mơ hình dịch vụ điện tốn đám mây File DeleteServlet.java thực lệnh xóa tên liệu danh bạ: package edu.dartmouth.cs.gae_sample; import java.io.IOException; import import import import javax.servlet.ServletException; javax.servlet.http.HttpServlet; javax.servlet.http.HttpServletRequest; javax.servlet.http.HttpServletResponse; import edu.dartmouth.cs.gae_sample.data.ContactDatastore; public class DeleteServlet extends HttpServlet { private static final long serialVersionUID = 1L; public void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException, ServletException { String name = req.getParameter("name"); ContactDatastore.delete(name); resp.sendRedirect("/query.do"); } public void doPost(HttpServletRequest req, HttpServletResponse resp) throws IOException, ServletException { doGet(req, resp); } } File QueryServlet.java thực chức tìm kiếm ứng dụng: package edu.dartmouth.cs.gae_sample; import java.io.IOException; import java.util.ArrayList; import import import import javax.servlet.ServletException; javax.servlet.http.HttpServlet; javax.servlet.http.HttpServletRequest; javax.servlet.http.HttpServletResponse; import edu.dartmouth.cs.gae_sample.data.Contact; import edu.dartmouth.cs.gae_sample.data.ContactDatastore; public class QueryServlet extends HttpServlet { /** * */ private static final long serialVersionUID = 1L; public void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException, ServletException { String name = req.getParameter("name"); ArrayList result = ContactDatastore.query(name); req.setAttribute("result", result); Học viên thực hiện: Nguyễn Xuân Thành - CA120621 - 12ACNTT.HĐ 59 Đề tài: Nghiên cứu mơ hình dịch vụ điện toán đám mây getServletContext().getRequestDispatcher("/query_result.jsp").forward( req, resp); } public void doPost(HttpServletRequest req, HttpServletResponse resp) throws IOException, ServletException { doGet(req, resp); } } File UpdateServlet.java thực lệnh cập nhật lại thơng tin đối tƣợng có tên liệu danh bạ hiển thị thông tin Nếu tên nhập vào chƣa có liệu danh bạ quay giao diện hiển thị danh sách tên có liệu: package edu.dartmouth.cs.gae_sample; import java.io.IOException; import import import import javax.servlet.ServletException; javax.servlet.http.HttpServlet; javax.servlet.http.HttpServletRequest; javax.servlet.http.HttpServletResponse; import edu.dartmouth.cs.gae_sample.data.Contact; import edu.dartmouth.cs.gae_sample.data.ContactDatastore; public class UpdateServlet extends HttpServlet { private static final long serialVersionUID = 1L; public void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException, ServletException { String name = req.getParameter("name"); String addr = req.getParameter("addr"); String phone = req.getParameter("phone"); if (name != null && !name.equals("")) { Contact contact = new Contact(name, addr, phone); ContactDatastore.update(contact); } resp.sendRedirect("/query.do"); } public void doPost(HttpServletRequest req, HttpServletResponse resp) throws IOException, ServletException { doGet(req, resp); } } Học viên thực hiện: Nguyễn Xuân Thành - CA120621 - 12ACNTT.HĐ 60 Đề tài: Nghiên cứu mơ hình dịch vụ điện tốn đám mây 4.3 Đƣa Project lên App Engine Yêu cầu cần phải có tài khoản Gmail Google Vào trang https://appengine.google.com/ đăng nhập Sau đăng nhập thành công chọn Create Application để khởi tạo App Tiếp theo Deploy project lên địa App đăng ký: demo2014abc Đợi q trình Deploy thành cơng có thơng báo: Học viên thực hiện: Nguyễn Xuân Thành - CA120621 - 12ACNTT.HĐ 61 Đề tài: Nghiên cứu mơ hình dịch vụ điện toán đám mây Truy cập vào trang địa App đăng ký cho giao diện giống nhƣ chạy Localhost: Ngƣời dùng thêm tên vào danh bạ cách nhập tên, địa chỉ, số điện thoại nhấn nút “Them”: Chức cập nhật tìm kiếm thành cơng ngƣời sử dụng nhập xác tên đối tƣợng có liệu danh bạ Nếu muốn xem toàn danh bạ cần vào lại trang chủ: Trong trình chạy ứng dụng thực thao tác cho kết ổn định khơng có lỗi xảy Tuy nhiên tốc độ xử lý thông tin thị kết chậm so với chạy Localhost Học viên thực hiện: Nguyễn Xuân Thành - CA120621 - 12ACNTT.HĐ 62 Đề tài: Nghiên cứu mơ hình dịch vụ điện toán đám mây Nhận xét, đánh giá đề xuất hƣớng phát triển Từ kết đạt đƣợc ta thấy lợi ích Google App Engine đem lại không chi phí khởi tạo ban đầu, khơng chi phí trì, phải trả phí sử dụng mức quy định Mức quy định miễn phí 10 Project tổng dung lƣợng 500 MB So với việc sài host miễn phí để chạy trang web sử dụng Google App Engine đơn giản từ việc đăng ký, upload, Để deloy ứng dụng lên GAE đơn giản nhƣ chạy app server local Chúng ta sử dụng tên miền dùng tên miền miễn phí GAE cung cấp có appsppot.com Dùng GAE thiết kế database, viết SQL truy vấn data, cần design class GAE tự động lo phần làm việc với database Tuy nhiên việc xây dựng ứng dụng Google App Engine có hạn chế lớn phải phụ thuộc hồn tồn vào cơng nghệ Google, khó tách thành ứng dụng độc lập phải viết dịch vụ mà Google cung cấp Ngoài GAE tập trung hỗ trợ loại ngơn ngữ là: Python Java, số ngôn ngữ khác nhƣ PHP chạy đƣợc cài với chuyển từ PHP sang Java Cuối hạn chế GAE toàn liệu nằm tay nhà cung cấp dịch vụ Từ kết đạt đƣợc đánh giá em tiếp tục xây dựng thêm ứng dụng cho trang web Vì điện tốn đám mây đề tài lớn Google App Engine tảng dịch vụ nên nhiều hạn chế hy vọng GAE phát triển, mở rộng hỗ trợ thêm cho nhiều loại ngôn ngữ lập trình cung cấp thêm nhiều thƣ viện dịch vụ Học viên thực hiện: Nguyễn Xuân Thành - CA120621 - 12ACNTT.HĐ 63 Đề tài: Nghiên cứu mô hình dịch vụ điện tốn đám mây KẾT LUẬN Kết đạt đƣợc Về mặt lý thuyết, luận văn trình bày đƣợc nội dung sau: - Tổng quan điện tốn đám mây: định nghĩa, mơ hình tổng thể, phân loại điện tốn đám mây, u cầu chung điện toán đám mây, xu hƣớng phát triển khó khăn, thách thức - Các khái niệm điện toán đám mây, dịch vụ ứng dụng, dịch vụ tảng, dịch vụ sở hạ tầng, mơ hình dịch vụ IaaS, mơ hình dịch vụ SaaS, mơ hình dịch vụ PaaS - Các mơ hình thực tế ứng dụng điện tốn đám mây - Tổng quan Google App Engine Về mặt thực nghiệm, luận văn thu đƣợc số kết quả: - Xây dựng thành công Project - Đã đƣa đƣợc Project lên máy chủ ảo đám mây Google App Engine - Đề xuất hƣớng phát triển phần mềm GAE Hạn chế: Nhƣ vậy, kết thực nghiệm phù hợp với nội dung trình bày lý thuyết Tuy nhiên, cịn nhiều hạn chế kiến thức, kinh nghiệm thân, nhƣ thời gian thực hiện, luận văn hạn chế sau: - Project cài đặt chƣa có nhiều ứng dụng - Chƣa cài đặt thử nghiệm mơ hình dịch vụ IaaS SaaS để so sánh với mơ hình dịch vụ PaaS Hƣớng phát triển đề tài Tƣơng lai từ kiến thức nghiên cứu nội dung đề tài em mong muốn phát triển mơ hình điện tốn đám mây để áp dụng vào công việc quản lý bảo trì liệu quan Giúp tiết kiệm chi phí cho việc xây dựng, bảo trì nâng cấp hệ thống máy chủ quan Học viên thực hiện: Nguyễn Xuân Thành - CA120621 - 12ACNTT.HĐ 64 Đề tài: Nghiên cứu mơ hình dịch vụ điện toán đám mây DANH MỤC TÀI LIỆU THAM KHẢO [1] Wikipedia, “Điện toán đám mây,” http://vi.wikipedia.org, 2014 [2] “Lịch sử điện toán đám mây,” dammay.blog.com, 2011 [3] Wikipedia, “Tổng quan điện toán đám mây,” http://vi.wikipedia.org, 2014 [4] Dustin Amrhein, Kỹ sƣ phần mềm, IBM, IBM WebSphere Developer Technical Journal http://www.ibm.com, 2009 [5] Hoàng Lê Minh – Viện trƣởng Viện Công nghệ phần mềm Nội dung số, “Cơng nghệ điện tốn đám mây Việt Nam,” http://www.baomoi.com, 2010 [6] Tổng quan Phần mềm dịch vụ - SaaS Công nghệ http://dos.com.vn/vn/tin-tuc, 20/08/2011 [7] Đƣờng Tất Tồn – Quản trị dự án điện tốn đám mây FTP, Điện tốn đám mây: Mơ hình kỳ vọng www.fpt.com.vn, 10/2010 [8] Đỉnh Nguyễn, Giới thiệu tổng quan điện tốn đám mây, mục Mơ hình dịch vụ điện tốn đám mây http://dinhnguyenngoc.wordpress.com, 2014 [9] “Các mơ hình dịch vụ điện toán đám mây, Phần 1: Cở sở hạ tầng dịch vụ,” http://www.ibm.com/developerworks, 20/10/2011 [10] Microsof, Azure Services Platform azure.microsoft.com, 10/2008 [11] Web Showcase, Apps.vn Web Showcase, http://webshowcase.apps.vn, 2010 [12] TSKH Lê Thị Kim Yến, “Ứng dụng điện toán đám mây quản lý chất lƣợng giáo dục Việt Nam,” http://www.daihoclongan.edu.vn, 2010 [13] “Tổng quan Google App Engine,” http://binhbk230.blogspot.com, 2014 [14] “Tổng quan Google Web Toolkit,” https://developers.google.com/webtoolkit, 2013 [15] Huỳnh Văn Lộc, Nguyễn Quốc Nhã, Châu Hoàn Sơn, Google App Engine, nhom-lthd-th2009.googlecode.com Học viên thực hiện: Nguyễn Xuân Thành - CA120621 - 12ACNTT.HĐ 65 ... tài: Nghiên cứu mơ hình dịch vụ điện toán đám mây CHƢƠNG 4: NGHIÊN CỨU CÁC ỨNG DỤNG CỦA ĐIỆN TOÁN ĐÁM MÂY Ứng dụng điện toán đám mây quản lý giáo dục Về bản, triển khai sử dụng dịch vụ đám mây. .. 12ACNTT.HĐ 12 Đề tài: Nghiên cứu mơ hình dịch vụ điện tốn đám mây Phân loại điện tốn đám mây Hình 3: Phân loại đám mây 3.1 Đám mây công cộng - Public Cloud Là dịch vụ đám mây đƣợc bên thứ ba (ngƣời... CA120621 - 12ACNTT.HĐ 35 Đề tài: Nghiên cứu mơ hình dịch vụ điện toán đám mây CHƢƠNG 3: NGHIÊN CỨU CÁC MƠ HÌNH THỰC TẾ CỦA ĐIỆN TỐN ĐÁM MÂY Mơ hình kiến trúc điện tốn đám mây IBM Máy chủ IBM sử dụng

Ngày đăng: 19/02/2022, 17:17

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] Wikipedia, “Điện toán đám mây,” http://vi.wikipedia.org, 2014 Sách, tạp chí
Tiêu đề: Điện toán đám mây
[2] “Lịch sử điện toán đám mây,” dammay.blog.com, 2011 Sách, tạp chí
Tiêu đề: Lịch sử điện toán đám mây
[3] Wikipedia, “Tổng quan về điện toán đám mây,” http://vi.wikipedia.org, 2014 Sách, tạp chí
Tiêu đề: “"Tổng quan về điện toán đám mây
[4] Dustin Amrhein, Kỹ sƣ phần mềm, IBM, IBM WebSphere Developer Technical Journal. http://www.ibm.com, 2009 Sách, tạp chí
Tiêu đề: IBM WebSphere Developer Technical Journal
[5] Hoàng Lê Minh – Viện trưởng Viện Công nghệ phần mềm và Nội dung số, “Công nghệ điện toán đám mây tại Việt Nam,” http://www.baomoi.com, 2010 Sách, tạp chí
Tiêu đề: Công nghệ điện toán đám mây tại Việt Nam",”
[6] Tổng quan Phần mềm dịch vụ - SaaS trong Công nghệ mới. http://dos.com.vn/vn/tin-tuc, 20/08/2011 Sách, tạp chí
Tiêu đề: Tổng quan Phần mềm dịch vụ - SaaS
[7] Đường Tất Toàn – Quản trị dự án điện toán đám mây FTP, Điện toán đám mây: Mô hình được kỳ vọng. www.fpt.com.vn, 10/2010 Sách, tạp chí
Tiêu đề: Điện toán đám mây: Mô hình được kỳ vọng
[8] Đỉnh Nguyễn, Giới thiệu tổng quan về điện toán đám mây, mục Mô hình dịch vụ trong điện toán đám mây. http://dinhnguyenngoc.wordpress.com, 2014 Sách, tạp chí
Tiêu đề: Giới thiệu tổng quan về điện toán đám mây, "mục "Mô hình dịch vụ trong điện toán đám mây
[9] “Các mô hình dịch vụ điện toán đám mây, Phần 1: Cở sở hạ tầng là dịch vụ,” http://www.ibm.com/developerworks, 20/10/2011 Sách, tạp chí
Tiêu đề: Các mô hình dịch vụ điện toán đám mây, Phần 1: Cở sở hạ tầng là dịch vụ,"”
[10] Microsof, Azure Services Platform. azure.microsoft.com, 10/2008 Sách, tạp chí
Tiêu đề: Azure Services Platform
[11] Web Showcase, Apps.vn Web Showcase, http://webshowcase.apps.vn, 2010 Sách, tạp chí
Tiêu đề: Apps.vn Web Showcase
[12] TSKH. Lê Thị Kim Yến, “Ứng dụng điện toán đám mây trong quản lý chất lƣợng giáo dục tại Việt Nam,” http://www.daihoclongan.edu.vn, 2010 Sách, tạp chí
Tiêu đề: Ứng dụng điện toán đám mây trong quản lý chất lƣợng giáo dục tại Việt Nam",”
[13] “Tổng quan về Google App Engine,” http://binhbk230.blogspot.com, 2014 Sách, tạp chí
Tiêu đề: Tổng quan về Google App Engine
[14] “Tổng quan về Google Web Toolkit,” https://developers.google.com/web-toolkit, 2013 Sách, tạp chí
Tiêu đề: Tổng quan về Google Web Toolkit,"”
[15] Huỳnh Văn Lộc, Nguyễn Quốc Nhã, Châu Hoàn Sơn, Google App Engine, nhom-lthd-th2009.googlecode.com Sách, tạp chí
Tiêu đề: Google App Engine

TỪ KHÓA LIÊN QUAN

w