(TIỂU LUẬN) đồ án ảo hóa và điện TOÁN đám mây đề tài tìm hiểu về nền tảng heroku – triển khai ứng dụng trên nền tảng

18 30 0
(TIỂU LUẬN) đồ án ảo hóa và điện TOÁN đám mây đề tài tìm hiểu về nền tảng heroku – triển khai ứng dụng trên nền tảng

Đ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

BỘ CÔNG THƯƠNG TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP THỰC PHẨM TP HCM KHOA CNTT  Đồ án: ẢO HÓA VÀ ĐIỆN TỐN ĐÁM MÂY Đề tài: Tìm hiểu tảng Heroku – triển khai ứng dụng tảng Giảng viên hướng dẫn: Phạm Tuấn Khiêm Sinh viên thực hiện: 2001190646 – Nguyễn Trọng Liêm 2001191021 – Trần Phương Bình 2001190595 – Nguyễn Duy Khang TP.HỒ CHÍ MINH 2021-2022 NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN TP Hồ Chí Minh, ngày tháng năm 2022 (Ký ghi rõ họ tên) LỜI MỞ ĐẦU Ngày nay, với vươn lên đất nước, hịa vào Cơng nghệ thơng tin ngành có bước phát triển mạnh mẽ khơng ngừng trở thành chìa khóa dẫn đến thành công cho nhiều cá nhân, tổ chức Với ứng dụng mình, cơng nghệ thơng tin góp phần mang lại nhiều lợi ích mà khơng phủ nhận Đặc biệt lĩnh vực quản lý kinh tế, cơng nghệ thơng tin góp phần tạo thay đổi nhanh chóng cho mặt xã hội Trong trình thực đề tài nhóm gặp phải khơng khó khăn trở ngại, nhiên, với giúp đỡ bạn bè, hướng dẫn tận tình, bảo cặn kẽ giảng viên Phạm Tuấn Khiêm, cuối chúng em cố gắng hoàn thành đề tài với tất cố gắng nỗ lực Chúng em xin gửi lời cảm ơn tới người bạn góp ý giúp đỡ nhóm, đặc biệt cảm ơn cô, người giúp xác định yêu cầu mục tiêu đề tài, truyền dạy kĩ nghiệp vụ hướng dẫn cho cách thức thực đề tài Do kiến thức thực tế hiểu biết hạn chế nên q trình hồn thành báo cáo khơng tránh khỏi sai sót, nhóm chúng em mong góp ý đóng góp thầy bạn để nhóm hồn thiện tập lớn tốt Chúng em xin chân thành cảm ơn! Mục lục Heroku gì? Các tính Heroku 2.1.Heroku Runtime 2.2.Heroku Postgres (SQL) 2.3 Heroku Redis 2.4 Heroku Scale 2.5 Add-ons 2.6 Code/data rollback 2.7 App metrics 2.8 Continuous delivery 2.9 Github Integration Cơ chế hoạt động Heroku .3 Tại lại sử dụng Heroku có AWS? Tại Heroku thu hút người dùng? Các phiên Heroku 6.1 Heroku Postgres 6.2 Heroku Redis 6.3 Heroku Teams .4 6.4 Heroku Enterprise 6.5 Heroku Connect 6.6 Heroku Elements Ưu nhược điểm Heroku 7.1 Ưu điểm 7.2 Nhược điểm Cách đưa ứng dụng lên Heroku Tài liệu tham khảo 14 Heroku gì? Heroku tảng đám mây dựa ứng dụng container dạng dịch vụ (PaaS) Các nhà phát triển sử dụng Heroku để triển khai, quản lý mở rộng ứng dụng đại Nền tảng họ linh hoạt dễ sử dụng, cung cấp cho nhà phát triển đường đơn giản để đưa ứng dụng họ thị trường Heroku quản lý hoàn toàn Heroku, cho phép nhà phát triển tự tập trung vào sản phẩm cốt lõi họ mà không bị phân tâm việc trì máy chủ, phần cứng sở hạ tầng Trải nghiệm Heroku cung cấp dịch vụ, công cụ, quy trình làm việc hỗ trợ tất thiết kế để nâng cao suất nhà phát triển ứng dụng Heroku biết đến nơi để triển khai ứng dụng dyno (Khi bạn triển khai ứng dụng Heroku, bạn phải thiết lập máy ảo gọi slug, sử dụng nhiều buildpacks Khi máy ảo khởi chạy từ slug, gọi dyno.) Trong trường hợp phải xử lý khối lượng công việc nhiều, phức tạp, bạn cần thêm nhiều block (scale chiều ngang) tăng kích thước block (scale chiều dọc) Phí sử dụng Heroku tính dựa số lượng dyno kích thước dyno mà bạn dùng Mặc dù bạn phải trả phí để sử dụng Heroku, Heroku không thật lưu trữ ứng dụng bạn Thực tế tảng Heroku lẫn ứng dụng phát triển triển khai Amazon Web Services (AWS) Các tính Heroku 2.1 Heroku Runtime Ứng dụng bạn chạy bên smart container quản lý hoàn toàn suốt thời gian chạy ứng dụng, Heroku xử lý thứ quan trọng bao gồm: cấu hình, điều phối, cân tải, chuyển đổi dự phòng, ghi nhật ký log, bảo mật, … 2.2 Heroku Postgres (SQL) Dịch vụ PostgreSQL đáng tin cậy an toàn với thiết lập dễ dàng, mã hóa nhanh gọn, mở rộng quy mơ đơn giản, chuyển đổi sở liệu, bảo vệ liên tục 2.3 Heroku Redis Hỗ trợ dịch vụ Redis cho lập trình viên sử dụng Một dịch vụ cache key-value nhớ tốc độ nhanh phổ biến 2.4 Heroku Scale Heroku mở rộng quy mô ứng dụng lập tức, theo chiều dọc chiều ngang Bạn điều hành thứ cách nhàn hạ từ dự án sở thích nhỏ lẻ thương mại điện tử cấp doanh nghiệp 2.5 Add-ons Mở rộng, nâng cao quản lý ứng dụng bạn với dịch vụ tích hợp sẵn New Relic, MongoDB, SendGrid, Searchify, Fastly, Papertrail, ClearDB MySQL, Treasure Data,… 2.6 Code/data rollback Hệ thống xây dựng Heroku dịch vụ Postgres cho phép bạn khôi phục mã nguồn sở liệu trạng thái trước 2.7 App metrics Bạn biết xảy với ứng dụng bạn nhờ vào tính giám sát tích hợp lưu lượng, thời gian phản hồi, nhớ, tải CPU lỗi 2.8 Continuous delivery Heroku Flow sử dụng Heroku Pipeline, Review Apps Github tích hợp để xây dựng quy trình pipeline CI/CD gồm build, test, deploy,… 2.9 Github Integration Tích hợp Github giúp bạn pull request, push, commit,… hoạt động với branch mà bạn muốn 3.Cơ chế hoạt động Heroku  Heroku biết đến với mục đích dành cho việc chạy ứng dụng dynos – thực máy ảo cung cấp sức mạnh dựa độ lớn ứng dụng bạn Nghĩ dynos khối xây dựng cho việc chạy ứng dụng  Nếu bạn muốn xử lý nhiều liệu hay nhiều tác vụ phức tạp hơn, bạn cần nhiều khối (còn gọi mở rộng theo chiều rộng) hay tăng kích cỡ khối (mở rộng theo chiều sâu) Heroku tính phí theo tháng thay đổi bạn, dựa số dynos mà bạn có kích cỡ dyno  Mặc dù Heroku tính tiền từ bạn dựa dyno, họ thực không lưu giữ ứng dụng bạn Trong thực tế, toàn tảng Heroku ứng dụng khác xây dựng Heroku – triển khai AWS (Amazon Web Services) Tại lại sử dụng Heroku có AWS? Heroku AWS khơng giống AWS nhà cung cấp IaaS, chịu trách nhiệm quản lý trung tâm chia sẻ liệu lớn tảng đám mây điện tốn (cloud) Các cơng ty AWS, Azure Google triển khai IaaS để nhà phát triển lưu trữ ứng dụng họ tảng trung tâm liệu thay tự xây dựng server Nhưng chất kinh doanh, nhà cung cấp IaaS dường quan tâm đến việc điều hành trung tâm lưu trữ liệu trải nghiệm khách hàng Vậy nên bạn cần có kiến thức AWS làm việc trực tiếp với Cịn Heroku lại PaaS nằm AWS Nền tảng thiết kế đặc biệt giúp nhà phát triển ứng dụng dễ sử dụng Chẳng hạn, để triển khai ứng dụng Heroku, bạn cần biết vài lệnh Heroku CLI Dashboard Những câu lệnh có sẵn tài liệu Heroku Tại Heroku thu hút người dùng?  Cung cấp trải nghiệm người dùng tốt - Heroku thiên đường cho nhà phát triển xây dựng nhà phát triển Họ hiểu xác developers cần gặp khó khăn sử dụng dịch vụ họ  Là hệ sinh thái dịch vụ - Các nhà phát triển xây dựng ứng dụng họ ngơn ngữ nào, cho dù Nodejs, Ruby, PHP, Python hay Java - Hơn nữa, Heroku cịn có danh sách Heroku Add-ons khổng lồ, tích hợp chức mạnh mẽ giúp bạn triển khai ứng dụng cú click Heroku cung cấp add-on miễn phí trả phí, chúng giúp bạn tiết kiệm đáng kể thời gian triển khai dự án  Hỗ trợ kết nối với salesforce - Với phiên Heroku Connect, Heroku kết nối với salesforce, cho phép ứng dụng bạn đồng hai chiều với salesforce Từ đó, bạn dễ dàng mở rộng quy mơ ln có nhìn tổng qt khách hàng Các phiên Heroku 6.1 Heroku Postgres Heroku Postgres dịch vụ sở liệu đám mây dựa PostgreQuery Heroku Postgres có khả bảo vệ liên tục, khơi phục có tính sẵn sàng cao 6.2 Heroku Redis Heroku Redis tùy chỉnh từ Heroku, cung cấp trải nghiệm tốt cho người dùng Heroku Redis giúp quản lý phiên với CLI, liên kết liệu với Postgres để hiểu rõ doanh nghiệp công cụ SQL 6.3 Heroku Teams Heroku Teams công cụ quản lý nhóm, kết hợp nhiều nhà phát triển lại với để xây dựng phần mềm tốt Các nhóm tự tổ chức, kiểm sốt, thêm thành viên sử dụng công cụ cộng tác Heroku Pipelines 6.4 Heroku Enterprise Heroku Enterprise dành riêng cho công ty lớn, giúp họ cải thiện hợp tác nhóm khác Nó cung cấp tập hợp tính kiểm sốt truy cập chi tiết, liên kết danh tính khơng gian riêng để quản lý quy trình phát triển ứng dụng doanh nghiệp, tài nguyên người dùng họ 6.5 Heroku Connect Heroku Connect cho phép người dùng sở hữu ứng dụng Heroku dễ dàng tích hợp với salesforce linh hoạt, nhờ đồng hóa liệu liền mạch sở liệu Heroku Postgres tổ chức salesforce 6.6 Heroku Elements Heroku Elements cung cấp add-on dịch vụ để phát triển, mở rộng vận hành ứng dụng, tự động hóa quy trình xây dựng cho ngơn ngữ frameworks phổ biến Đồng thời cung cấp tính One-Click, cấu hình triển khai thành phần bên thứ ba, thư viện ứng dụng mẫu Ưu nhược điểm Heroku 7.1 Ưu điểm - Database hồn tồn miễn phí - SSL sử dụng miễn phí - Có khả hỗ trợ làm việc dành cho team - Có thể liên kết với loại Github đơn giản 7.2 Nhược điểm - Heroku dành riêng cho người dùng sử dụng 550 giờ/tháng Tuy nhiên, bạn gia tăng số sử dụng lên 1000 bạn cài phương thức toán vào tài khoản 1000 đủ blog cá nhân hoạt động đặn, êm tháng - Chỉ sau từ đến server không thu hút người truy cập tự động chuyển sang trạng thái ngủ Nếu server bị tắt đột ngột khơng có traffic cách đơn giản bạn cần làm tự tạo traffic cho Bạn sử dụng Pingdom để ping trang blog thường xun đảm bảo cho server khơng bị tắt Cách đưa ứng dụng lên Heroku Bước 1: Cài Heroku CLI Đầu tiên vào link: https://devcenter.heroku.com/articles/heroku-cli#downloadand-install để tải cho Windows Chọn phiên phù hợp với Windows tải Sau tải xong nhấn vào để tiến hành cài đặt Nếu cài đặt thành công nhấn chuột trái vào thấy lệnh Git Bash Here (Nếu không thấy bạn cần cài thêm Git Link download Git: https://git-scm.com) Bước 2: Đăng kí tài khoản tạo app Nếu chưa có tài khoản bạn vào link https://signup.heroku.com/login Sau đăng nhập thành công vào giao diện sau để đăng ký: Muốn tạo app ta bắt đầu chọn New -> Create new app Đặt tên cho app chọn Create app Sau Create app đưa đến phần Bước 3: Chuẩn bị app push code lên heroku Nhóm em có app làm máy tính đơn giản Tiếp theo phần push app lên heroku Đầu tiên vào folder chứa app bấm chuột trái chọn Git Bash Here Sau mở lên gõ lệnh heroku login để đăng nhập vào tài khoản 10 Sau nhập heroku login web tự động mở trang đăng nhập nhấn đăng nhập vào trang web Sau nhập tiếp lệnh git init để khởi tạo app Nhập tiếp lệnh heroku git:remote -a doancalculator để chạy lệnh kiểm tra xem app có thay đổi hay thêm xóa sửa khơng Nhập tiếp lệnh git add git commit -am “tạo câu để người khác biết sửa hay tạo đó” 11 Cuối lệnh git push heroku master để push app lên heroku Vậy xong chọn nút Open app để xem kết 12 Kết đạt được: Sau có trang web để share cho người khác vào để xem sử dụng Link vào app nhóm: https://doancalculator.herokuapp.com/index.html Như nhóm vừa trình bày xong cách để đưa ứng dụng lên heroku 13 Tài liệu tham khảo https://topdev.vn/blog/heroku-la-gi/ https://vsudo.net/blog/heroku-la-gi.html https://wiki.tino.org/heroku-la-gi/ 14 ... suất nhà phát triển ứng dụng Heroku biết đến nơi để triển khai ứng dụng dyno (Khi bạn triển khai ứng dụng Heroku, bạn phải thiết lập máy ảo gọi slug, sử dụng nhiều buildpacks Khi máy ảo khởi chạy... tảng đám mây dựa ứng dụng container dạng dịch vụ (PaaS) Các nhà phát triển sử dụng Heroku để triển khai, quản lý mở rộng ứng dụng đại Nền tảng họ linh hoạt dễ sử dụng, cung cấp cho nhà phát triển. .. trực tiếp với Cịn Heroku lại PaaS nằm AWS Nền tảng thiết kế đặc biệt giúp nhà phát triển ứng dụng dễ sử dụng Chẳng hạn, để triển khai ứng dụng Heroku, bạn cần biết vài lệnh Heroku CLI Dashboard

Ngày đăng: 08/12/2022, 04:13

Tài liệu cùng người dùng

Tài liệu liên quan