NGHIÊN CỨU CÔNG NGHỆ ĐIỆN TOÁN ĐÁM MÂY. VIẾT MỘT ỨNG DỤNG DEMO DÙNG MỘT TRONG CÁC GÓI THƯ VIỆN SAU Google App Engine của Google Window Azure của Microsoft Sun Cloud của Sun
TRƯỜNG ĐẠI HỌC GIAO THÔNG VẬN TẢI TP.HCM TRƯỜNG ĐẠI HỌC GIAO THÔNG VẬN TẢI TP.HCM KHOA CÔNG NGHỆ THÔNG TIN KHOA CÔNG NGHỆ THÔNG TIN o0o o0o BÁO CÁO ĐỀ TÀI BÁO CÁO ĐỀ TÀI NGHIÊN CỨU CÔNG NGHỆ ĐIỆN TOÁN ĐÁM MÂY. VIẾT MỘT NGHIÊN CỨU CÔNG NGHỆ ĐIỆN TOÁN ĐÁM MÂY. VIẾT MỘT ỨNG DỤNG DEMO DÙNG MỘT TRONG CÁC GÓI THƯ VIỆN SAU : ỨNG DỤNG DEMO DÙNG MỘT TRONG CÁC GÓI THƯ VIỆN SAU : Google App Engine của Google Google App Engine của Google Window Azure của Microsoft Window Azure của Microsoft Sun Cloud của Sun Sun Cloud của Sun Giáo viên hướng dẫn : Giáo viên hướng dẫn : Đặng Nhân Cách Đặng Nhân Cách NỘI DUNG NỘI DUNG NỘI DUNG GiỚI THIỆU CƠ SỞ LÍ THUYẾT HƯỚNG DẪN CÀI ĐẶT DEMO CHƯƠNG TRÌNH KiỂM TRA –ĐÁNH GIÁ TÀI LiỆU THAM KHẢO GiỚI THIỆU GiỚI THIỆU Tóm tắt hệ thống : Tóm tắt hệ thống : ► Để giúp mọi người hình dung mô hình điện toán đám mây như thế nào. Nhóm chúng Để giúp mọi người hình dung mô hình điện toán đám mây như thế nào. Nhóm chúng tôi viết ứng dụng nhỏ dựa trên các gói thư viện có sẵn của google.Về hình thức các tôi viết ứng dụng nhỏ dựa trên các gói thư viện có sẵn của google.Về hình thức các bạn có thể hình dung ứng dụng này giống như là các blog, facebook, diễn đàn qua bạn có thể hình dung ứng dụng này giống như là các blog, facebook, diễn đàn qua đó thành lập các nhóm học tập để các bạn có thể trao đổi hay bình luân về một vấn đó thành lập các nhóm học tập để các bạn có thể trao đổi hay bình luân về một vấn đề gì đó. đề gì đó. CƠ SỞ LÝ THUYẾT CƠ SỞ LÝ THUYẾT GỒM 2 PHẦN: GỒM 2 PHẦN: ĐIỆN TOÁN ĐÁM MÂY GOOGLE APP ENGINE ĐIỆN TOÁN ĐÁM MÂY GOOGLE APP ENGINE CƠ SỞ LÝ THUYẾT CƠ SỞ LÝ THUYẾT ► PHẦN I: ĐIỆN TOÁN ĐÁM MÂY PHẦN I: ĐIỆN TOÁN ĐÁM MÂY 1. Khái niệm : 1. Khái niệm : Điện toán đám mây là môi trường tính toán dựa trên internet mà ở đó tất cả phần Điện toán đám mây là môi trường tính toán dựa trên internet mà ở đó tất cả phần mềm, dữ liệu, tài nguyên được cung cấp cho máy tính và các thiết bị khác theo nhu mềm, dữ liệu, tài nguyên được cung cấp cho máy tính và các thiết bị khác theo nhu cầu (tương tự như mạng điện) cầu (tương tự như mạng điện) CƠ SỞ LÝ THUYẾT CƠ SỞ LÝ THUYẾT 2. So sánh mô hình Cloud Computing và 2. So sánh mô hình Cloud Computing và Client/Server: Client/Server: ► Cloud client trong cloud computing và client trong mô hình client/server giống nhau Cloud client trong cloud computing và client trong mô hình client/server giống nhau ở vai trò là hiển thị dữ liệu và tiếp nhận các thao tác của người dùng, mọi tính toán ở vai trò là hiển thị dữ liệu và tiếp nhận các thao tác của người dùng, mọi tính toán nghiệp vụ đều được thực hiện ở máy chủ. Tuy nhiên, điểm khác biệt lớn nhất giữa 2 nghiệp vụ đều được thực hiện ở máy chủ. Tuy nhiên, điểm khác biệt lớn nhất giữa 2 mô hình này là ở việc tính toán trên máy chủ: mô hình này là ở việc tính toán trên máy chủ: ► Server trong mô hình client/ server thường mang ý nghĩa là 1 hoặc 1 cụm máy chủ Server trong mô hình client/ server thường mang ý nghĩa là 1 hoặc 1 cụm máy chủ trung tâm chỉ làm nhiệm vụ thực hiện tính toán cho 1 số client cụ thể (trong 1 công trung tâm chỉ làm nhiệm vụ thực hiện tính toán cho 1 số client cụ thể (trong 1 công ty hoặc 1 tổ chức nào đó); trong khi server trong Cloud computing lại mang 1 ý ty hoặc 1 tổ chức nào đó); trong khi server trong Cloud computing lại mang 1 ý nghĩa rộng hơn nhiều. Server trong điện toán đám mây sẽ làm nhiệm vụ tính toán nghĩa rộng hơn nhiều. Server trong điện toán đám mây sẽ làm nhiệm vụ tính toán cho bất kì client nào với bất kì công việc nào (mà nó hỗ trợ). Công việc tính toán lúc cho bất kì client nào với bất kì công việc nào (mà nó hỗ trợ). Công việc tính toán lúc này không phải thực hiện theo nghĩa vụ mà là theo dịch vụ. Với điện toán đám mây, này không phải thực hiện theo nghĩa vụ mà là theo dịch vụ. Với điện toán đám mây, mọi thứ sẽ được cung cấp dưới dạng dịch vụ, và người dùng sẽ chỉ phải trả phí sử mọi thứ sẽ được cung cấp dưới dạng dịch vụ, và người dùng sẽ chỉ phải trả phí sử dụng các dịch vụ đó. dụng các dịch vụ đó. CƠ SỞ LÝ THUYẾT CƠ SỞ LÝ THUYẾT 3.Ưu điểm và nhượt điểm: 3.Ưu điểm và nhượt điểm: a. a. Ưu điểm: Ưu điểm: ► Tính linh động Tính linh động : Người dùng có thể thoải mái lựa chọn các dịch vụ phù hợp với : Người dùng có thể thoải mái lựa chọn các dịch vụ phù hợp với nhu cầu của mình, cũng như có thể bỏ bớt những thành phần mà mình không nhu cầu của mình, cũng như có thể bỏ bớt những thành phần mà mình không muốn. (Thay vì phải bỏ ra hàng trăm USD cho 1 bộ Ms office, ta có thể mua riêng muốn. (Thay vì phải bỏ ra hàng trăm USD cho 1 bộ Ms office, ta có thể mua riêng lẻ từng phần hoặc chỉ trả 1 khoản phí rất nhỏ mỗi khi sử dụng 1 phần nào đó của lẻ từng phần hoặc chỉ trả 1 khoản phí rất nhỏ mỗi khi sử dụng 1 phần nào đó của nó). nó). ► Giảm bớt phí Giảm bớt phí : Người dùng không chỉ giảm bớt chi phí bản quyền mà còn giảm : Người dùng không chỉ giảm bớt chi phí bản quyền mà còn giảm phần lớn chi phí cho việc mua và bảo dưỡng máy chủ. Việc tập hợp ứng dụng của phần lớn chi phí cho việc mua và bảo dưỡng máy chủ. Việc tập hợp ứng dụng của nhiều tổ chức lại 1 chỗ sẽ giúp giảm chi phí đầu tư ban đầu, cũng như tăng hiệu nhiều tổ chức lại 1 chỗ sẽ giúp giảm chi phí đầu tư ban đầu, cũng như tăng hiệu năng sử dụng các thiết bị này một cách tối đa. năng sử dụng các thiết bị này một cách tối đa. ► Tạo nên sự độc lập Tạo nên sự độc lập : Người dùng sẽ không còn bị bó hẹp với 1 thiết bị hay 1 vị trí : Người dùng sẽ không còn bị bó hẹp với 1 thiết bị hay 1 vị trí cụ thể nào nữa. Với điện toán đám mây, phần mềm, dữ liệu có thể được truy cập cụ thể nào nữa. Với điện toán đám mây, phần mềm, dữ liệu có thể được truy cập và sử dụng từ bất kì đâu, trên bất kì thiết bị nào mà không cần phải quan tâm và sử dụng từ bất kì đâu, trên bất kì thiết bị nào mà không cần phải quan tâm đến giới hạn phần cứng cũng như địa lý đến giới hạn phần cứng cũng như địa lý CƠ SỞ LÝ THUYẾT CƠ SỞ LÝ THUYẾT ► Tăng cường độ tin cậy Tăng cường độ tin cậy : Dữ liệu trong mô hình điện toán đám mây được lưu trữ 1 : Dữ liệu trong mô hình điện toán đám mây được lưu trữ 1 cách phân tán tại nhiều cụm máy chủ tại nhiều vị trí khác nhau. Điều này giúp tăng cách phân tán tại nhiều cụm máy chủ tại nhiều vị trí khác nhau. Điều này giúp tăng độ tin cậy, độ an toàn của dữ liệu mỗi khi có sự cố hoặc thảm họa xảy ra. độ tin cậy, độ an toàn của dữ liệu mỗi khi có sự cố hoặc thảm họa xảy ra. ► Bảo mật Bảo mật : Việc tập trung dữ liệu từ nhiều nguồn khác nhau sẽ giúp các chuyên gia : Việc tập trung dữ liệu từ nhiều nguồn khác nhau sẽ giúp các chuyên gia bảo mật tăng cường khả năng bảo vệ dữ liệu của người dùng, cũng như giảm thiểu bảo mật tăng cường khả năng bảo vệ dữ liệu của người dùng, cũng như giảm thiểu rủi ro bị ăn cắp toàn bộ dữ liệu. (Dữ liệu được đặt tại 6 máy chủ khác nhau trong → rủi ro bị ăn cắp toàn bộ dữ liệu. (Dữ liệu được đặt tại 6 máy chủ khác nhau trong → trường hợp hacker tấn công, bạn cũng sẻ chỉ bị lộ 1/6. Đây là 1 cách chia sẻ rủi ro trường hợp hacker tấn công, bạn cũng sẻ chỉ bị lộ 1/6. Đây là 1 cách chia sẻ rủi ro giữa các tổ chức với nhau) giữa các tổ chức với nhau) ► Bảo trì dễ dàng Bảo trì dễ dàng : Mọi phần mềm đều nằm trên server, lúc này, người dùng sẽ : Mọi phần mềm đều nằm trên server, lúc này, người dùng sẽ không cần lo lắng cập nhật hay sửa lỗi phần mềm nữa. Và các lập trình viên cũng không cần lo lắng cập nhật hay sửa lỗi phần mềm nữa. Và các lập trình viên cũng dễ dàng hơn trong việc cài đặt, nâng cấp ững dụng của mình. dễ dàng hơn trong việc cài đặt, nâng cấp ững dụng của mình. b. b. Nhược điểm : Nhược điểm : ► Tính riêng tư Tính riêng tư : Các thông tin người dùng và dữ liệu được chứa trên điện toán đám : Các thông tin người dùng và dữ liệu được chứa trên điện toán đám mây có đảm bảo được riêng tư, và liệu các thông tin đó có bị sử dụng vì một mục mây có đảm bảo được riêng tư, và liệu các thông tin đó có bị sử dụng vì một mục đích nào khác? đích nào khác? ► Tính sẵn dùng: Tính sẵn dùng: Liệu các dịch vụ đám mây có bị “treo” bất ngờ, khiến cho người Liệu các dịch vụ đám mây có bị “treo” bất ngờ, khiến cho người dùng không thể truy cập các dịch vụ và dữ liệu của mình trong những khoảng thời dùng không thể truy cập các dịch vụ và dữ liệu của mình trong những khoảng thời gian nào đó khiến ảnh hưởng đến công việc? gian nào đó khiến ảnh hưởng đến công việc? CƠ SỞ LÝ THUYẾT CƠ SỞ LÝ THUYẾT ► Mất dữ liệu Mất dữ liệu : Một vài dịch vụ lưu trữ dữ liệu trực tuyến trên đám mây bất ngờ ngừng : Một vài dịch vụ lưu trữ dữ liệu trực tuyến trên đám mây bất ngờ ngừng hoạt động hoặc không tiếp tục cung cấp dịch vụ, khiến cho người dùng phải sao lưu hoạt động hoặc không tiếp tục cung cấp dịch vụ, khiến cho người dùng phải sao lưu dữ liệu của họ từ “đám mây” về máy tính cá nhân. Điều này sẽ mất nhiều thời gian. dữ liệu của họ từ “đám mây” về máy tính cá nhân. Điều này sẽ mất nhiều thời gian. Thậm chí một vài trường hợp, vì một lý do nào đó, dữ liệu người dùng bị mất và Thậm chí một vài trường hợp, vì một lý do nào đó, dữ liệu người dùng bị mất và không thể phục hồi được. không thể phục hồi được. ► Tính di động của dữ liệu và quyền sở hữu Tính di động của dữ liệu và quyền sở hữu : Một câu hỏi đặt ra, liệu người dùng có : Một câu hỏi đặt ra, liệu người dùng có thể chia sẻ dữ liệu từ dịch vụ đám mây này sang dịch vụ của đám mây khác? Hoặc thể chia sẻ dữ liệu từ dịch vụ đám mây này sang dịch vụ của đám mây khác? Hoặc trong trường hợp không muốn tiếp tục sử dụng dịch vụ cung cáp từ đám mây, liệu trong trường hợp không muốn tiếp tục sử dụng dịch vụ cung cáp từ đám mây, liệu người dùng có thể sao lưu toàn bộ dữ liệu của họ từ đám mây? Và làm cách nào để người dùng có thể sao lưu toàn bộ dữ liệu của họ từ đám mây? Và làm cách nào để người dùng có thể chắc chắn rằng các dịch vụ đám mây sẽ không hủy toàn bộ dữ người dùng có thể chắc chắn rằng các dịch vụ đám mây sẽ không hủy toàn bộ dữ liệu của họ trong trường hợp dịch vụ ngừng hoạt động. liệu của họ trong trường hợp dịch vụ ngừng hoạt động. ► Khả năng bảo mật Khả năng bảo mật : Vấn đề tập trung dữ liệu trên các “đám mây” là cách thức hiệu : Vấn đề tập trung dữ liệu trên các “đám mây” là cách thức hiệu quả để tăng cường bảo mật, nhưng mặt khác cũng lại chính là mối lo của người sử quả để tăng cường bảo mật, nhưng mặt khác cũng lại chính là mối lo của người sử dụng dịch vụ của điện toán đám mây. Bởi lẽ một khi các đám mây bị tấn công hoặc dụng dịch vụ của điện toán đám mây. Bởi lẽ một khi các đám mây bị tấn công hoặc đột nhập, toàn bộ dữ liệu sẽ bị chiếm dụng đột nhập, toàn bộ dữ liệu sẽ bị chiếm dụng ► Các quy định pháp luật cho các dịch vụ, giữa khách hàng và nhà cung cấp Các quy định pháp luật cho các dịch vụ, giữa khách hàng và nhà cung cấp . . CƠ SỞ LÝ THUYẾT CƠ SỞ LÝ THUYẾT 4.Cấu trúc phân lớp: 4.Cấu trúc phân lớp: [...]... công ty cung cấp: ► Các ông lớn đã bắt đầu rục rịch trong cuộc chạy đua đến với điện toán đám mây Những Google, Microsoft, Amazone, Sun đều đã và đang phát triển những nền tảng điện toán đám mây của riêng mình Các nền tảng điện toán đám mây lớn có thể kể đến bây giờ bao gồm : Google App Engine của Google: http://code .google. com/appengine/ Windows Azure của Microsoft : http://www .microsoft. com/windowsazure/windowsazure/... http://www .microsoft. com/windowsazure/windowsazure/ Nền tảng điện toán đám mây ra đời đầu tiên: Amazone Webservice của Amazon.com Sun Cloud của Sun http://www .sun. com/solutions/cloudcomputing/ Facebook CƠ SỞ LÝ THUYẾT PHẦN II: GOOGLE APP ENGINE 1.Giới thiệu: Google App Engine (gọi tắt là AppEngine, một số trường hợp được viết tắt là GAE ) là giải pháp cho vấn đề điện toán đám mây Ở đó, Google cung cấp sẵn một hệ thống... sẵn một hệ thống máy chủ điện toán đám mây, và người lập trình sẽ viết ứng dụng của mình lên đó Ứng dụng này sẽ chạy trên đám mây của Google ► Google App Engine cho phép bạn chạy các ứng dụng web của bạn trên cơ sở hạ tầng của Google App Engine ứng dụng được dễ dàng để xây dựng, dễ bảo trì, và dễ dàng để có quy mô như giao thông của bạn và nhu cầu lưu trữ dữ liệu lớn Với App Engine, không có máy chủ... plugin cho Eclipese ► AppEngine-java-SDK-1.3.8.zip ► Có tài khoản ứng dụng trên goole app engine II .Các bước cài đặt: 1.Đăng kí tài khoản: Bước 1: ► Để triển khai các ứng dụng của bạn với các đám mây của Google, bạn cần một tài khoản AppEngine Làm được một tài khoản bạn cần một tài khoản email của Google Open http://appengine .google. com/ và đăng nhập với thông tin tài khoản gmail của bạn HƯỚNG DẪN CÀI... hàng): Lớp Client của điện toán đám mây bao gồm phần cứng và phần mềm, để dựa vào đó, khách hàng có thể truy cập và sử dụng các ứng dụng/ dịch vụ được cung cấp từ điện toán đám mây Chẳng hạn máy tính và đường dây kết nối Internet (thiết bị phần cứng) và các trình duyệt web (phần mềm)… Application (Lớp Ứng dụng) : Lớp ứng dụng của điện toán đám mây làm nhiệm vụ phân phối phần mềm như một dịch vụ thông... thưc mục war/WEB-INF/appengine-web.xml mở file appengine-web.xml lên, đặt ID application vào giữa thẻ rồi save lại như hình vẽ : HƯỚNG DẪN CÀI ĐẶT 4 Triển khai ứng dụng ► Để upload code và các file chương trình của bạn lên Google App Engine ta dùng một tập lệnh có trong SKD có tên: appcfg.cmd * Bắt đầu Upload : Giải nén appengine-java-sdk-1.3.8.zip ra ổ D ta được D:\appengine-java-sdk,... bạn tương tác với môi trường bằng cách sử dụng the Java Servlet standard, và có thể sử dụng các công nghệ ứng dụng web phổ biến như JavaServer Pages (JSP) CƠ SỞ LÝ THUYẾT ► ► ► Java Runtime Environment sử dụng Java 6 Các App Engine Java SDK hỗ trợ phát triển các ứng dụng bằng cách sử dụng Java 5 hoặc 6 Đối với các kho dữ liệu App Engine, Java SDK bao gồm việc triển khai của Java Data Objects (JDO) và... Web.xml Appengine-web.xml classes lib Compiled classes JARs for Libraries HƯỚNG DẪN CÀI ĐẶT 4 Triển khai ứng dụng ► Để upload code và các file chương trình của bạn lên Google App Engine ta dùng một tập lệnh có trong SKD có tên: appcfg.cmd * Cần chuẩn bị : + Đưa ID vào ứng dụng : Cần 1 ID application đã được đăng ký trên google để upload ứng dụng, theo như cách đăng ký phần trên, ta có được ID application... interfaces Ứng dụng của bạn có thể sử dụng các API JavaMail để gửi tin nhắn email với dịch vụ App Engine Mail Các java.net HTTP API truy cập vào App Engine lấy URL dịch vụ App Engine cũng bao gồm các API cấp thấp cho các dịch vụ của mình để thực hiện thêm bộ điều hợp, hoặc sử dụng trực tiếp từ ứng dụng Xem tài liệu cho the datastore, memcache, URL fetch, mail, images and Google Accounts APIs Thông thư ng, các. .. việc xây dựng ứng dụng trên GAE là bạn sẽ phụ thuộc hoàn toàn vào các công nghệ của Google và rất khó có thể tách ra thành một ứng dụng độc lập Yahoo hay Microsoft sẽ chẳng bao giờ mua một ứng dụng xây dựng trên nền tảng của đối thủ Còn các nhà đầu tư cũng rất e ngại khi tài sản của công ty bạn đặt hết vào tay người khác, dù cho đó là Google HƯỚNG DẪN CÀI ĐẶT I.Yêu cầu: ► Eclipese ► Google plugin . ỨNG DỤNG DEMO DÙNG MỘT TRONG CÁC GÓI THƯ VIỆN SAU : ỨNG DỤNG DEMO DÙNG MỘT TRONG CÁC GÓI THƯ VIỆN SAU : Google App Engine của Google Google App Engine của Google Window Azure của Microsoft Window. TP.HCM KHOA CÔNG NGHỆ THÔNG TIN KHOA CÔNG NGHỆ THÔNG TIN o0o o0o BÁO CÁO ĐỀ TÀI BÁO CÁO ĐỀ TÀI NGHIÊN CỨU CÔNG NGHỆ ĐIỆN TOÁN ĐÁM MÂY. VIẾT MỘT NGHIÊN CỨU CÔNG NGHỆ ĐIỆN TOÁN ĐÁM MÂY. VIẾT MỘT ỨNG. hình điện toán đám mây như thế nào. Nhóm chúng tôi viết ứng dụng nhỏ dựa trên các gói thư viện có sẵn của google. Về hình thức các tôi viết ứng dụng nhỏ dựa trên các gói thư viện có sẵn của google. Về