ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH

CHƯƠNG TRÌNH ĐẠO TẠO THẠC SĨ CNTT QUA MẠNG ________________

BÀI THU HOẠCH MÔN HỌC

CHUYỂN ĐỔI ỨNG DỤNG WEB

THÀNH GIẢI PHÁP SAAS

Giáo viên hướng dẫn:

GSTS. Hoàng Kiếm

Học viên thực hiện:

Thái Hồng Quang

CH1101033 Lớp: Thạc sỹ CNTT qua mạng khoá 06

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH

CHƯƠNG TRÌNH ĐẠO TẠO THẠC SĨ CNTT QUA MẠNG

Lời nói đầu

Khoa học là hệ thống các tri thức về quy luật của tự nhiên ,xã hội và tư duy về

những biện pháp tác động đến thế giới xung quanh ,đến nhận thức và làm biến đổi thế

giới đó phục vụ cho lợi ích của con người

Khoa học bao gồm một hệ thống tri thức về quy luật của vật chất và sự vận động

của vật chất ,những quy luật của tự nhiên ,xã hội và tư duy hệ thống tri thức này hình

thành trong lịch sử và không ngừng phát triển trên cơ sở thực tiễn xã hội phận biệt ra 2

hệ thống tri thức :tri thức kinh nghiệm và tri thức khoa học

Trong phạm vi của bài thu hoạch nhỏ này em sẽ trình bày phương pháp chuyển đổi

ứng dụng web thành giải pháp Saas .Qua đây em cũng xin gửi lời cảm ơn đến giáo sư

tiến sỹ khoa học Hoàng Văn Kiếm , người đã tận tâm truyền đạt cho chúng em những

kiến thức nền tảng cơ bản cho chúng em về môn học “Phương pháp nghiên cứu khoa

học trong tin học “.

Mục lục

MÔN HỌC : PHƯƠNG PHÁP NGHIÊN CỨU KHOA HỌC TRONG TIN HỌC

I. Giới thiệu điện toán đám mây

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH

CHƯƠNG TRÌNH ĐẠO TẠO THẠC SĨ CNTT QUA MẠNG

1. Giới thiệu

2. Lịch sử

3. Kiến trúc điện toán đám mây

II. Dịch vụ của điện toán đám mây

1. Saas

2. Paas

3. Iaas

III. Chuyển đổi ứng dụng thành giải pháp Saas

1. Chuyển đổi lược đồ cơ sở dữ liệu sang một mô hình trừu tượng

2. Mở rộng quá trình xác thực người dung

3. Cấu hình kết nối cơ sở dữ liệu

4. Triển khai ứng dụng SaaS nhiều bên thuê mới vào đám mây

MÔN HỌC : PHƯƠNG PHÁP NGHIÊN CỨU KHOA HỌC TRONG TIN HỌC

I. Giới thiệu điện toán đám mây

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH

CHƯƠNG TRÌNH ĐẠO TẠO THẠC SĨ CNTT QUA MẠNG

1. Giới thiệu

Theo Ian Foster: “Một mô hình điện toán phân tán có tính co giãn lớn mà hướng

theo co giãn về mặt kinh tế, là nơi chứa các sức mạnh tính toán, kho lưu trữ, các nền

tảng (platform) và các dịch vụ được trực quan, ảo hóa và co giãn linh động, sẽ được

phân phối theo nhu cầu cho các khách hàng bên ngoài thông qua Internet”. “Điện toán

đám mây là một dạng thức điện toán cung cấp các tài nguyên ảo hóa và có quy mô

dưới dạng dịch vụ qua mạng Internet. Người dùng không cần tới những kiến thức

chuyên môn để quản lý hạ tầng công nghệ này bởi phần việc đó là dành cho các nhà

cung cấp dịch vụ.”

Rất nhiều người, bao gồm cả các chuyên gia kỹ thuật, nghĩ rằng điện toán đám

mây chỉ đơn giản là ảo hóa trên một quy mô rất lớn nhưng điều này là không đúng. Sự

khác biệt về ảo hóa và điện toán đám mây là ảo hóa chỉ đơn giản là đặt các khối lượng

công việc trên các hệ thống ảo cá nhân. Các hệ thống cá nhân là ảo nhưng chúng có

chức năng và mục đích tương tự: Một máy chủ web, máy chủ tập tin, máy chủ cơ sở

dữ liệu. Bạn có thể có hàng ngàn máy ảo, mỗi máy thực hiện các chức năng riêng của

mình. Đấy không phải là điện toán đám mây.

Một môi trường điện toán đám mây là một cơ sở hạ tầng ảo có chung nguồn tài

nguyên dịch vụ và một chức năng cụ thể: Một công cụ tìm kiếm (Google), lưu trữ tập

tin và hệ thống thu hồi (Dropbox). Điện toán đám mây là hàng ngàn máy ảo với một

mục đích duy nhất: Cung cấp một dịch vụ không ngừng.

2. Lịch sử

Thuật ngữ điện toán đám mây xuất hiện bắt nguồn từ hệ thống điện toán lưới trong

thâp niên 80 tiếp theo là điện toán nhu cầu và phần mềm dịch vụ

Điện toán lưới đặt trọng tâm vào việc chuyển tải 1 công việc đế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

MÔN HỌC : PHƯƠNG PHÁP NGHIÊN CỨU KHOA HỌC TRONG TIN HỌC

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

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH

CHƯƠNG TRÌNH ĐẠO TẠO THẠC SĨ CNTT QUA MẠNG

II. Dịch vụ của điện toán đám mây

1. Paas

PaaS (Platform as a Service) hỗ trợ việc triển khai ứng dụng mà không quan tâm

đến chi phí hay sự phức tạp của việc trang bị và quản lý các lớp phần cứng và phần

mềm bên dưới, cung cấp tất cả các tính năng cần thiết để hỗ trợ chu trình sống đầy đủ

của việc xây dựng và cung cấp một ứng dụng và dịch vụ web sẵn sàng trên internet mà

không cần bất kì thao tác tải hay cài đặt phần mềm cho những người phát triển , quản

lý tin học , hay người dùng cuối.

Khi PaaS có sẵn như một dịch vụ, các developer và ISVs có thể kiểm soát toàn

bộ việc phát triển và triển khai ứng dụng . PaaS cho phép các developer và ISV’s tạo

ra các ứng dụng web tùy chỉnh và phát hành nó một cách nhanh chóng , khi nhiều rắc

rối như việc thiết lập hosting, servers, databases, quá trình tương tác người dùng và

những frameworks được đóng gói.

MÔN HỌC : PHƯƠNG PHÁP NGHIÊN CỨU KHOA HỌC TRONG TIN HỌC

Mô hình PaaS

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH

CHƯƠNG TRÌNH ĐẠO TẠO THẠC SĨ CNTT QUA MẠNG

PaaS là một khái niệm được biết đến như một dịch vụ nền tảng Cloud Computing.

Ứng dụng PaaS là một biến thể của ứng dụng saas

PaaS còn được biết đến với một tên khác là cloudware.

Đặc trưng

Một ứng dụng PaaS bao gồm các đặc trưng sau đây:

Phục vụ cho việc phát triển, kiểm thử, triển khai và vận hành ứng dụng

giống như là môi trường phát triển tích hợp.

Cung cấp các công cụ khởi tạo với giao diện trên nền web.

Có kiến trúc đồng nhất.

Tích hợp dịch vụ web và cơ sở dữ liệu.

Hỗ trợ cộng tác nhóm phát triển.

Cung cấp các công cụ hỗ trợ tiện tích khác.

Ưu điểm

Dịch vụ nền tảng (PaaS) đang ở thời kì đầu và được ưa chuộng ở những

tính năng được ưa thích bởi nó cung cấp dịch vụ phần mềm có tích hợp các yếu tố về

nền tảng hệ thống.

Ưu điểm trong những dự án tập hợp những công việc nhóm có sự phân tán

về địa lý.

Khả năng tích hợp nhiều nguồn của dịch vụ web.

Giảm chi phí ngoài lề khi tích hợp các dịch vụ về bảo mật, khả năng mở

rộng, kiểm soát lỗi…

Giảm chi phí khi trừu tượng hóa công việc lập trình ở mức cao để tạo dịch

vụ, giao diện người dùng và các yếu tố ứng dụng khác.

Hướng việc sử dụng công nghệ để đạt được mục đích tạo điều kiện dễ

dàng hơn cho việc phát triển ứng dụng đa người dùng cho những người không chỉ

MÔN HỌC : PHƯƠNG PHÁP NGHIÊN CỨU KHOA HỌC TRONG TIN HỌC

trong nhóm lập trình mà có thể kết hợp nhiều nhóm cùng làm việc.

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH

CHƯƠNG TRÌNH ĐẠO TẠO THẠC SĨ CNTT QUA MẠNG

Nhược điểm

Ràng buộc bởi nhà cung cấp: do giới hạn phụ thuộc vào dịch vụ của nhà

cung cấp.

Giới hạn phát triển: độ phức tạp khiến nó không phù hợp với yêu cầu phát

triển nhanh vì những tính năng phức tạp khi hiện thực trên nền tảng web.

2. Saas

Hãng nghiên cứu toàn cầu IDC định nghĩa: “Saas là phần mềm hoạt động trên

Web, được quản lý bởi nhà cung cung cấp và cho phép người sử dụng truy cập từ xa”

Saas là một mô hình kinh doanh phần mềm mới ra đời. Saas là viết tắt của từ

Software As A Service. Đây là một xu hướng mới sẽ phát tiển mạnh trong tương lai.

Nguyên tắc chủ yếu của Saas là sử dụng phầm mềm mà không cần cài đặt. Theo mô

hình truyền thống khi 1 một doanh nghiệp muốn triển khai 1 phần mềm để sử dụng

cho doanh nghiệp của mình thì phải trải qua rất nhiều giai đoạn và chi phí triển khai

rất cao.

Thông thường một phần mềm được viết ,phát triển và cung cấp như một sản phẩm

hoàn chỉnh. Tuy nhiên Internet đã tạo ra một xu hướng mới: cung cấp phần mềm qua

mạng. Quan niệm này tương đối đơn giản: “Đừng mua phần mềm, hay thuê và sử

dụng khi bạn cần”. Điều này cũng tương tự như việc thuê nhà hay ô tô trong thời gian

ngắn, phục vụ mục đích nhất thời còn hơn là bỏ tiền ra mua cả sản phẩm. Để sử dụng

được phần mềm, thay vì phải bỏ tiền ra để xây dựng một phần mềm trọn gói như trước

đây người dùng chỉ cần đăng kí với nhà cung cấp để thuê phần mềm sử dụng.Tùy theo

nhu cầu của mỗi công ty khác nhau mà chi phí cũng khác nhau nhưng thông thường

chi phí đó nhỏ hơn rất nhiều so với với chi phí xây dựng một phần mềm trọn gói.

3. Iaas

IaaS là việc phân phối hạ tầng máy tính như một dịch vụ. Tầng này khác với PaaS

ở chỗ : phần cứng ảo được cung cấp không kèm theo software stack. Thay vào đó,

MÔN HỌC : PHƯƠNG PHÁP NGHIÊN CỨU KHOA HỌC TRONG TIN HỌC

người dùng tự đưa ra VM image của mình. IaaS là dạng “thô” nhất của “computing as

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH

CHƯƠNG TRÌNH ĐẠO TẠO THẠC SĨ CNTT QUA MẠNG

a service”. Nhà cung cấp IaaS thương mại nối tiếng nhất là Amazon Elastic Compute

Cloud (EC2). Trong EC2 , bạn có thể chỉ định máy ảo (VM) đặc biệt của mình và triển

khai các ứng dụng trên đó hay là cung cấp VM iamge của bạn và chạy nó trên server.

Bạn chỉ phải trả tiền cho thời gian tính toán, dung lượng lưu trữ và băngthôngmạng.

Dự án Eucalyptus (Elastic Utility Computing Architecture for Linking Your Programs

To Useful Systems) là một bản thực thi mã nguồn mở của EC2, trong đó tương thích

về giao diện với dịch vụ thương mại. Giống như EC2, Eucalyptus dựa trên Linux với

Xen dùng cho ảo hóa hệ điều hành. Eucalyptus được phát triển tại đại học California

cho mục đích nghiên cứu cloud computing.

Một vài gói nguồn mở dựa trên Linux khác. Hadoop là một Java™ software

framework nguồn mở tương tự như PaaS nhưng tập trung vào thao tác các tập dữ liệu

lớn trên các server nối mạng với nhau (lấy ý tưởng từ Google MapReduce cho phép xử

lý song song trên các tập dữ liệu lớn). Như thế thì nó sẽ tìm được các ứng dụng trong

tìm kiếm và quảng cáo. Hadoop cũng cung cấp các dự án con phỏng theo các ứng

dụng của Google. Ví dụ Hbase đưa ra chức năng giống như CSDL Google BigTable

và Hadoop Distributed File System (HDFS) đưa ra chức năng giống như Google File

System

III. Chuyển đổi ứng dụng thành giải pháp Saas

1. Chuyển đổi lược đồ cơ sở dữ liệu sang một mô hình trừu tượng

công nghệ điển hình của một ứng dụng web trông giống như Hình; một ứng dụng

giao tiếp với một cơ sở dữ liệu, thường là thông qua một tầng lưu giữ dữ liệu lâu bền

MÔN HỌC : PHƯƠNG PHÁP NGHIÊN CỨU KHOA HỌC TRONG TIN HỌC

như Hibernate.

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH

CHƯƠNG TRÌNH ĐẠO TẠO THẠC SĨ CNTT QUA MẠNG

Hình: ứng dụng web điển hình trong đám mây

Để biến đổi một ứng dụng thành một ứng dụng nhiều bên thuê, cơ sở dữ liệu phải

được thiết kế lại để có thêm các trường để quản lý dữ liệu nhận dạng bên thuê, sẽ cần

thiết để cho phép bên thuê lọc dữ liệu.

Ứng dụng SaaS-Factory được sử dụng để đọc lược đồ của cơ sở dữ liệu ứng dụng

hiện có. Sau đó nó tạo ra một mô hình của cơ sở dữ liệu đó rồi sử dụng nó để tạo ra

một cơ sở dữ liệu mới trong MySQL có thêm trường TenantID trong các bảng. Tại

thời điểm này một số bảng bổ sung thêm được tạo ra, trong đó có một bảng chứa thông

MÔN HỌC : PHƯƠNG PHÁP NGHIÊN CỨU KHOA HỌC TRONG TIN HỌC

tin bên thuê mà Multi-Tenant Server sử dụng.

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH

CHƯƠNG TRÌNH ĐẠO TẠO THẠC SĨ CNTT QUA MẠNG

Hình 2. Tạo lược đồ cơ sở dữ liệu siêu mô hình

Vì Cơ sở dữ liệu siêu mô hình (MetaModel Database) trông giống như cũ đối với

ứng dụng ban đầu, cũng có chính các bảng và các trường như thế, nên ứng dụng ban

đầu có thể tiếp tục tương tác với Cơ sở dữ liệu siêu mô hình chính xác giống như nó đã

làm với cơ sở dữ liệu MySQL. Có thể tạo ra cơ sở dữ liệu thực ở dưới mô hình này với

các trường TenantID bổ sung cần thiết cho một ứng dụng nhiều bên thuê.

Cơ sở dữ liệu siêu mô hình chỉ là trừu tượng hóa và không thực sự lưu giữ bất kỳ

dữ liệu nào: Nó chỉ đơn giản là một mô hình. Do đó, khi cơ sở dữ liệu thực được tạo

ra, không có lý do nào để không thể tạo ra nó trong bất kỳ Hệ quản trị cơ sở dữ liệu

quan hệ (RDBMS) được hỗ trợ nào .Điều này có thể có ích đối với các trường hợp ở

đó các ISV đã muốn thay đổi chồng công nghệ bằng cách chọn một RDBMS khác, có

thể là DB2 để tận dụng một số tính năng hay hiệu năng tốt hơn cho các ứng dụng của

chúng.

2. Mở rộng quá trình xác thực người dung

Bất kỳ ứng dụng SaaS nhiều bên thuê nào cũng phải có khả năng quản lý các thông

tin phiên làm việc cần thiết của những người sử dụng đã xác thực để có thể xác định

MÔN HỌC : PHƯƠNG PHÁP NGHIÊN CỨU KHOA HỌC TRONG TIN HỌC

người sử dụng ấy thuộc bên thuê nào. Có nhiều phương pháp xác thực cho các ứng

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH

CHƯƠNG TRÌNH ĐẠO TẠO THẠC SĨ CNTT QUA MẠNG

dụng; do đó bất kỳ ứng dụng nào được chuyển đổi cũng phải được phân tích và phải

hiểu rõ về các phương thức xác thực của nó.

Như đã giới thiệu cách thiết lập một bảng các bên thuê và thêm một bảng người

dùng sao cho mối quan hệ này có thể được duy trì trong dữ liệu của ứng dụng. Mục

đích là để thực hiện một phương thức sẽ mở rộng quá trình xác thực người dùng ứng

dụng để cho khi một người dùng đăng nhập vào, anh ta cũng khớp với bên thuê tương

ứng của mình và TenantID trở thành một phần của thông tin phiên làm việc.

Có nhiều cách để thực hiện điều này, nó phụ thuộc vào việc triển khai thực hiện

ứng dụng. Nếu sử dụng Tomcat như là thùng chứa servlet của ứng dụng, thì có thể sử

dụng việc xác thực do thùng chứa quản lý để khởi đầu một quy tắc nghiệp vụ chạy

trong Máy chủ nhiều bên thuê (Multi-Tenant Server) để thực hiện tra tìm TenantID

của người sử dụng .Ngoài ra, có thể sử dụng một bộ lọc servlet để phát hiện và sau đó

thiết lập biến cục bộ luồng TenantID .Với ví dụ jBilling này, ứng dụng xử lý việc xác

thực trực tiếp bằng cách xác nhận hợp lệ dựa vào các bảng người dùng của nó. Vì vậy

phương thức được sử dụng để cung cấp xác thực nâng cao đã có một số thay đổi đơn

giản về mã xác thực để thêm vào quá trình tra tìm kiếm thông tin bên thuê của người

dùng được lưu trữ trong các bảng mới.

Nhờ việc người dùng đã được xác thực và biết được TenantID mà họ thuộc về, nên

đã có đầy đủ thông tin để có thể lọc dữ liệu sao cho chỉ có dữ liệu thuộc về bên thuê đó

mới có thể truy cập được.

3. Cấu hình kết nối cơ sở dữ liệu

Máy chủ nhiều bên thuê của Corent được xây dựng trên một kiến trúc hướng dịch

vụ, sử dụng Cơ sở dữ liệu siêu mô. Đây là một tầng trừu tượng để mô hình hóa cơ sở

dữ liệu ban đầu của ứng dụng và các giao tiếp cơ sở dữ liệu của ứng dụng được chuyển

hướng đến siêu mô hình trừu tượng thay vì triển khai cơ sở dữ liệu thực tế .Điều này

MÔN HỌC : PHƯƠNG PHÁP NGHIÊN CỨU KHOA HỌC TRONG TIN HỌC

được thực hiện bằng cách chỉ cần cấu hình lại kết nối JDBC của jBilling để truy cập

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH

CHƯƠNG TRÌNH ĐẠO TẠO THẠC SĨ CNTT QUA MẠNG

vào Cơ sở dữ liệu siêu mô hình thay vì cơ sở dữ liệu MySQL thực tế .Đối với các ứng

dụng sử dụng Hibernate, cần cấu hình nhánh ngôn ngữ Corent của Hibernate.

Do những thay đổi này, các cuộc gọi cơ sở dữ liệu của ứng dụng bây giờ được

hướng tới Cơ sở dữ liệu siêu mô hình. Các sự kiện SQL này bị chặn bởi Trình điều

khiển lanh lẹn của Corent (Corent Agile Controller™) và sau đó chuyển tới Trình kết

nối cơ sở dữ liệu lanh lẹn (Corent's ADBC™-Agile DataBase Connector). của Corent.

ADBC nhận câu lệnh SQL mà ứng dụng gửi tới Cơ sở dữ liệu siêu mô hình và phân

tích cú pháp nó, sau đó bổ sung thêm các tiêu chí lọc TenantID của người dùng trong

phiên làm việc đã gửi câu lệnh SQL ấy (ví dụ, ở đây TenantID = ).

Điều này đảm bảo rằng sự an toàn của dữ liệu trong cơ sở dữ liệu chia sẻ chung luôn

được duy trì nghiêm ngặt .Ngay cả khi một ứng dụng bên ngoài như ReportWriter kết

nối tới, dữ liệu mà nó có thể nhìn thấy vẫn bị hạn chế trong những dữ liệu thích hợp

cho bên thuê đó .Vì chúng ta biết người đang đăng nhập là ai, bất kể từ ứng dụng nào,

chúng ta biết họ thuộc về bên thuê nào và các bộ lọc thích hợp được áp dụng.

Vì việc xử lý các câu lệnh SQL được thực hiện sau khi chúng được gửi tới Cơ sở

dữ liệu siêu mô hình và bên thuê của người sử dụng đã biết nên Trình điều khiển lanh

lẹn của Corent có thể chặn và thực hiện các hoạt động tinh vi hơn, bao gồm việc tra

tìm các quy trình xử lý và các cấu hình của bên thuê cụ thể. Do đó, có thể thực hiện

các hành động đặc thù tùy theo mỗi bên thuê, thậm chí thay thế một kết nối cơ sở dữ

liệu khác sao cho một bên thuê có thể sử dụng một cơ sở dữ liệu DB2 mặc dù tất cả

những bên thuê khác đang sử dụng cơ sở dữ liệu MySQL. Hoặc một bên thuê có thể

thêm thao tác SQL để hạn chế dữ liệu mà họ có thể lấy ra trong số các bản ghi đã nhập

không quá 90 ngày trước đó. Tất cả các tùy chỉnh cho mỗi bên thuê này có thể được

thực hiện thông qua một Máy quy tắc lanh lẹn (Agile Rules Engine™) được xây dựng

trong Máy chủ nhiều bên thuê mà không cần bất kỳ các thay đổi nào với mã ứng dụng

MÔN HỌC : PHƯƠNG PHÁP NGHIÊN CỨU KHOA HỌC TRONG TIN HỌC

ban đầu.

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH

CHƯƠNG TRÌNH ĐẠO TẠO THẠC SĨ CNTT QUA MẠNG

Cấu trúc các tùy chỉnh cho mỗi bên thuê

Toàn bộ việc chuyển đổi ứng dụng jBilling được hoàn tất với chỉ một vài thay đổi

nhỏ với ứng dụng, chủ yếu là liên quan đến việc cải tiến xác thực để bao gồm thêm các

thông tin bên thuê vào trong thông tin phiên làm việc và thay đổi kết nối cơ sở dữ liệu

để trỏ đến Máy chủ nhiều bên thuê.

Việc chuyển đổi jBilling chỉ mất dưới một tuần, bao gồm tất cả việc phân tích và

chuẩn bị để xác định nơi mà mã cần được sửa đổi. Nhiều thay đổi trong đó chỉ là lặp

lại một dòng sửa đổi trong một loạt mã Java để truy cập JDBC, và nó là không cần

thiết nếu sử dụng tầng lưu giữ cơ sở dữ liệu lâu bền như Hibernate.

4. Triển khai ứng dụng SaaS nhiều bên thuê mới vào đám mây

Bây giờ có thể sử dụng SaaS-Factory để triển khai một ứng dụng SaaS cho một

máy chủ đã chọn, bao gồm cả các máy chủ trong đám mây.

Sau khi chọn một máy chủ cho ứng dụng và cơ sở dữ liệu, cơ sở dữ liệu đích được

MÔN HỌC : PHƯƠNG PHÁP NGHIÊN CỨU KHOA HỌC TRONG TIN HỌC

tạo ra (như là một cơ sở dữ liệu MySQL trên máy chủ Windows® cho ứng dụng

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH

CHƯƠNG TRÌNH ĐẠO TẠO THẠC SĨ CNTT QUA MẠNG

jBilling của chúng ta) và ứng dụng Máy chủ nhiều bên thuê đã cấu hình đầy đủ được

triển khai như là một tập các tệp .WAR lên máy chủ ứng dụng đã chọn. Máy chủ nhiều

bên thuê làm việc với bất kỳ thùng chứa J2EE Servlet hiện đại nào và đã được chứng

thực cho Máy chủ ứng dụng WebSphere (WebSphere Application Server).

Bây giờ ứng dụng được triển khai có khả năng xử lý nhiều bên thuê. Tuy nhiên,

ứng dụng ban đầu sẽ không có một giao diện quản trị và quản lý để quản lý nhiều bên

thuê hoặc để theo dõi một ứng dụng nhiều bên thuê.

SaaS-Factory cũng có thể tạo ra và cài đặt một ứng dụng đồng hành được gọi là

SaaS-Cockpit cung cấp các dịch vụ nhiều bên thuê cơ bản này. Nó có quyền truy cập

vào Cơ sở dữ liệu siêu mô hình giống như ứng dụng chính và có các màn hình quản lý

để cung cấp bên thuê, gán các tài khoảnTenant Administrator và cấu hình các tham số

cơ bản của các cấu hình ứng dụng cho mỗi bên thuê khác nhau đã có sẵn. Ngoài ra còn

có các phương tiện quản trị để theo dõi và lập báo cáo về các bên thuê và người dùng

của họ. Do một trong các đặc điểm chung của các ứng dụng SaaS là cần theo dõi các

thuê bao và tính cước bên thuê, nên cũng có sẵn các phương tiện để tính cước hoặc

tích hợp với hệ thống tính cước bên ngoài.

MÔN HỌC : PHƯƠNG PHÁP NGHIÊN CỨU KHOA HỌC TRONG TIN HỌC

Cấu trúc để triển khai ứng dụng SaaS mới của bạn vào đám mây

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH

CHƯƠNG TRÌNH ĐẠO TẠO THẠC SĨ CNTT QUA MẠNG

Mức triển khai này là khá cơ bản đối với việc triển khai ứng dụng SaaS .Các đặc

điểm của các ứng dụng vẫn còn nguyên sau khi chuyển đổi và các kiểu kịch bản triển

khai tiêu chuẩn, bao gồm cả việc sử dụng các công cụ quản lý đám mây để tạo ra các

khuôn mẫu và lan truyền các cá thể của ứng dụng, có thể được sử dụng để triển khai

một kiến trúc vận hành đáp ứng các nhu cầu của ứng dụng về khả năng mở rộng, tính

co giãn, khả năng phục hồi và dự phòng.

Một ứng dụng SaaS điển hình có thể có một tập các máy chủ ứng dụng được truy

cập thông qua một bộ cân bằng tải và được kết nối đến một máy chủ cơ sở dữ liệu.

Chính máy chủ cơ sở dữ liệu có thể được triển khai như một cụm với nhiều máy chủ

cơ sở dữ liệu để mang lại khả năng mở rộng và dự phòng.

IBM DB2 cung cấp một số công nghệ và cấu hình có thể được sử dụng để đạt được

khả năng phục hồi và thời gian phục hồi được đảm bảo, cũng như cho phép phân phối

 Các cấu hình Phục hồi sau thảm họa sẵn sàng cao của DB2 (HADR - High

tải trên cơ sở dữ liệu:

Availability Disaster Recovery) có thể cung cấp cả khả năng sẵn sàng phục hồi lẫn

một khả năng cân bằng tải nào đó thông qua việc sử dụng chế độ thứ cấp như là một

 Công nghệ pureScale và Tự động hóa hệ thống Tivoli (TSA - Tivoli System

cơ sở dữ liệu chỉ đọc.

Automation) của IBM cho phép một môi trường cơ sở dữ liệu được phân cụm có nhiều

nút chia sẻ tải xử lý, nhưng hai thứ đó có nhiều hạn chế về cấu hình phần cứng và hệ

điều hành.

Xu hướng về tính sẵn sàng của cơ sở dữ liệu và khắc phục lỗi đang trở nên phức

tạp hơn cho các ứng dụng SaaS vì số lượng khách hàng/bên thuê bị ảnh hưởng bởi bất

MÔN HỌC : PHƯƠNG PHÁP NGHIÊN CỨU KHOA HỌC TRONG TIN HỌC

kỳ hư hại nào đều lớn hơn so với phần mềm cục bộ của khách hàng truyền thống .

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH

CHƯƠNG TRÌNH ĐẠO TẠO THẠC SĨ CNTT QUA MẠNG

Kiến trúc triển khai SaaS cho các hoạt động đám mây có phục hồi mở rộng được

Có xu thế hướng về các khả năng cho phép ứng dụng chạy liên tục thậm chí vượt

qua cả việc tổ chức lại dữ liệu không trực tuyến, sự tiến triển của lược đồ, các nâng

cấp phiên bản, và các thay đổi lớn về chịu tải. Công nghệ pureScale của IBM đang di

chuyển từ thế giới các hệ thống z System sang AIX® và Linux® và cho phép một

dạng xử lý năng lực và thời gian hoạt động mà trước đây chỉ dành cho các môi trường

MÔN HỌC : PHƯƠNG PHÁP NGHIÊN CỨU KHOA HỌC TRONG TIN HỌC

máy tính lớn chuyên dụng.

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH

CHƯƠNG TRÌNH ĐẠO TẠO THẠC SĨ CNTT QUA MẠNG

KẾT LUẬN

Một lần nữa em xin cảm ơn thầy Hoàng Kiếm với những kiến thức của thầy truyền

đạt về một môn học mới mẻ và mang lại cho em rất nhiều kiến thức mới sẽ bổ sung

cho e rất nhiều trong quá trình học tập và công tác khoa học sau này .Qua bài thu

hoạch này em cũng đã rút ra rất nhiều kiến thức về một sự phát triển của CNTT hiện

tại và sau này.

Do thời gian và khả năng của mình vẫn chưa đạt nên em chỉ trình bày một phương

pháp mới mà chưa có được bản demo và cũng chưa đưa hết những nguyên lý khoa học

trong điện toán đám mây em sẽ hoàn thiện kiến thức mới này trong những chuyên đề

MÔN HỌC : PHƯƠNG PHÁP NGHIÊN CỨU KHOA HỌC TRONG TIN HỌC

tiếp theo.

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH

CHƯƠNG TRÌNH ĐẠO TẠO THẠC SĨ CNTT QUA MẠNG

TÀI LIỆU THAM KHẢO

thống kê Hà Nội, 1990

[1] GS.TSKH Hoàng Kiếm – Thanh Thủy – Chi Mai, Đôi cánh I Ca Rơ, Nhà xuất bản

xuất bản giáo dục – 2001

[2] GS.TSKH Hoàng Kiếm, Giải một bài toán trên máy tính như thế nào, tập 1 và 2, Nhà

[3] website http:// http://vi.wikipedia.org

[4] website http://www.pcworld.com.vn

MÔN HỌC : PHƯƠNG PHÁP NGHIÊN CỨU KHOA HỌC TRONG TIN HỌC

[5] website http://searchcloudcomputing.techtarget.com

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH

CHƯƠNG TRÌNH ĐẠO TẠO THẠC SĨ CNTT QUA MẠNG

MÔN HỌC : PHƯƠNG PHÁP NGHIÊN CỨU KHOA HỌC TRONG TIN HỌC