Tải bản đầy đủ (.ppt) (33 trang)

Bài giảng Xây dựng và triển khai Web Service cho ứng dụng di động (GV Trần Duy Thanh) Bài 1

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (734.6 KB, 33 trang )

Trường ĐH Khoa Học Tự Nhiên Tp. Hồ Chí Minh
TRUNG TÂM TIN HỌC

Bài 1: Giới thiệu về Web Service cho
ứng dụng trên thiết bị di động
Ngành Mạng & Thiết bị di động
www.t3h.vn

2015


Nội dung
1. Giới thiệu về dịch vụ Web (Web Service)
• Giới thiệu dịch vụ Web
• Giới thiệu các cơng nghệ xây dựng dịch vụ Web
• Đặc điểm của dịch vụ Web
• Kiến trúc của dịch vụ Web
• Các thành phần chính của dịch vụ Web
• An toàn cho dịch vụ Web
• Xây dựng mợt dịch vụ Web
• Tích hợp dịch vụ Web theo chuẩn
2. Giới thiệu về IIS (Internet Information Service)

Xây dựng và triển khai Web Service cho ứng dụng di động

2


1.1 Giới thiệu các loại dịch vụ
Web
 Dịch vụ Web (Web Service)



là gì?
Là sự kết hợp các ứng dụng
trên máy tính cá nhân, thiết
bị di động với ứng dụng
trên các thiết bị khác, các
cơ sở dữ liệu và các mạng
máy tính để tạo thành một
cơ cấu tính toán hoàn hảo
mà người sử dụng có thể
làm việc, yêu cầu, phân
tích, khai thái, cập nhật,…
thông tin với nó thông qua
mạng Internet hoặc Wifi.
Xây dựng và triển khai Web Service cho ứng dụng di động

3


1.1 Giới thiệu các loại dịch vụ
Web
Theo định nghĩa của W3C (World Wide Web Consortium):

•Dịch vụ Web là mợt hệ thống phần mềm được thiết kế để hỗ
trợ khả năng tương tác giữa các ứng dụng trên các máy tính
khác nhau thông qua mạng Internet, giao diện chung và sự
gắn kết của nó được mơ tả bằng XML.

•Là tài ngun phần mềm có thể xác định bằng địa chỉ URL.
•Thực hiện các chức năng và đưa ra các thông tin người dùng

yêu cầu.

•Ưng dụng cơ bản của Dịch vụ Web là tích hợp các hệ thống.
•Các ứng dụng được tích hợp với cơ sở dữ liệu và các ứng

dụng khác, người sử dụng sẽ giao tiếp với CSDL để tiến hành
phân tích và lấy dữ liệu.
Xây dựng và triển khai Web Service cho ứng dụng di động

4


1.2 Các công nghệ xây dựng dịch vụ
Web
 Phân loại theo Công nghệ sử dụng để xây dựng dịch vụ

Web cho ứng dụng di động dùng .NET Framwork (phiên
bản 4.5.3), hiện nay có các cơng nghệ chính sau:






Web Service
WCF Service
WCF REST Service
Web API Service

Xây dựng và triển khai Web Service cho ứng dụng di động


5


1.3 Đặc điểm của dịch vụ Web
Ưu điểm

•Cung

cấp khả năng hoạt động rộng lớn với các ứng dụng phần

mềm khác nhau chạy trên những nền tảng khác nhau.

•Sử dụng các giao thức và chuẩn mở.
•Nâng cao khả năng tái sử dụng.
•Thúc đẩy đầu tư các hệ thống phần mềm đã tồn tại.
•Tạo mối quan hệ tương tác lẫn nhau và mềm dẻo giữa các thành
phần trong hệ thống, dễ dàng cho việc phát triển các ứng dụng
phân tán.

•Thúc đẩy hệ thống tích hợp, giảm sự phức tạp của hệ thống, hạ
giá thành hoạt động, phát triển hệ thống nhanh và tương tác hiệu
dựng và triển khai Web Service cho ứng dụng di động
quả với hệ thống của Xâycác
doanh nghiệp khác.

6


1.3 Đặc điểm của dịch vụ Web

Khuyết điểm

•Vào những khoảng thời gian chết của Web service

sẽ dẫn

đến những thiệt hại lớn:

 Giao diện không thay đổi
Có thể lỗi nếu một máy khách không được nâng cấp
Thiếu các giao thức cho việc vận hành
•Có quá nhiều chuẩn cho Web Service khiến người dùng khó
nắm bắt.

•Phải quan tâm nhiều hơn đến vấn đề an toàn và bảo mật.
Xây dựng và triển khai Web Service cho ứng dụng di động

7


1.4 Kiến trúc của dịch vụ Web
 Mô hình hoạt động của dịch vụ Web

Xây dựng và triển khai Web Service cho ứng dụng di động

8


1.4 Kiến trúc của dịch vụ Web
 Dịch vụ Web gồm có 4 chuẩn chính:


• SOAP (Simple Object Access Protocol)
• WSDL (Web Service Description Language)
• UDDI (Universal Description, Discovery, and
Integration)

• REST (Representational State Tranfer)

Xây dựng và triển khai Web Service cho ứng dụng di động

9


1.4 Kiến trúc của dịch vụ Web

Xây dựng và triển khai Web Service cho ứng dụng di động

10


1.4 Kiến trúc của dịch vụ Web
 Dịch vụ Web 1.0: dùng SOAP

Xây dựng và triển khai Web Service cho ứng dụng di động

11


1.4 Kiến trúc của dịch vụ Web
SOAP ?




SOAP là mợt giao thức giao tiếp có cấu trúc như XML và
mã hóa thành định dạng chung cho các ứng dụng trao
đổi với nhau.




Ý tưởng bắt đầu từ Microsoft và phần mềm Userland.
Một đặc tả việc sử dụng các tài liệu XML theo dạng các
thơng điệp.



Đặc tả về SOAP định nghĩa mợt mô hình trao đổi dữ liệu
dựa trên 3 khái niệm cơ bản: Các thông điệp là các tài
liệu XML, chúng được truyền đi từ bên gửi đến bên nhận,
bên nhận có thể chuyển tiếp dữ liệu đến nơi khác.
Xây dựng và triển khai Web Service cho ứng dụng di động

12


1.4 Kiến trúc của dịch vụ Web
Đặc trưng của SOAP

-


SOAP được thiết kế đơn giản và dễ mở rộng.

-

Tất cả các message SOAP đều được mã hóa sử dụng
XML.

-

SOAP sử dùng giao thức truyền dữ liệu riêng.

-

Không có garbage collection phân tán, và cũng không
có cơ chế tham chiếu. Vì thế SOAP client không giữ bất
kỳ một tham chiếu đầy đủ nào về các đối tượng ở xa.

-

SOAP không bị ràng buộc bởi bất kỳ ngôn ngữ lập trình
nào hoặc công nghệ nào.
Xây dựng và triển khai Web Service cho ứng dụng di động

13


1.4 Kiến trúc của dịch vụ Web
Hệ thống Soap đơn giản

Cấu trúc thông điệp SOAP


Xây dựng và triển khai Web Service cho ứng dụng di động

14


1.4 Kiến trúc của dịch vụ Web
Dịch vụ Web 2.0: dùng REST

4 nguyên tắc thiết kế cơ bản:

•Sử dụng phương thức HTTP rõ ràng.
•Phi trạng thái.
•Hiển thị cấu trúc thư mục URIs
•Chuyển đổi JSON/ XML hoặc cả hai.

Xây dựng và triển khai Web Service cho ứng dụng di động

15


1.4 Kiến trúc của dịch vụ Web
REST ?

REST (Representational State Tranfer) là một kiến trúc phần
mềm cho các hệ thống phân tán siêu truyền thông như WWW,
được chọn sử dụng rộng rãi thay cho Web service dựa trên
Đặc trưng
của REST
SOAP

và WSDL.








Là dạng client – server.
Phân tách giao diện của client ra khỏi dữ liệu.
Cho phép mỗi thành phần phát triển độc lập.
Hỗ trợ đa nền tảng.
Mỗi yêu cầu từ client phải có đủ thông tin cần thiết để
server có thể hiểu được mà không cần phải lưu trữ
thêm thông tin nào trước đó.
Tất cả tài nguyên được truy cập thông qua một
interface thống nhất (HTTP GET, PUT, POST,
Xây dựng và triển khai Web Service cho ứng dụng di động

16


1.5 Các thành phần chính của dịch vụ
Web
 XML – eXtensible Markup Language/ JSON
(JavaScript Object Notation)
 WSDL – Web Service Description Language
Universal


Description,

Discovery,

and

Integration (UDDI)
 SOAP – Simple Object Access Protocol
 RSS – Really Simple Syndication
 RDF – Resource Description Framework
 RESTful - Representational State Transfer
 WADL - Web Application Description Language
Xây dựng và triển khai Web Service cho ứng dụng di động

17


1.5 Các thành phần chính của dịch vụ
Web
 XML – eXtensible Markup Language



Mợt ch̉n mở do W3C đưa ra cho cách thức mơ tả dữ
liệu



Dùng để định nghĩa các thành phần dữ liệu trên trang
web và cho những tài liệu B2B.




Kiến trúc nền tảng cho việc xây dựng mợt Web service,

liệu sẽ được
chuyển
sang định dạng thẻ XML hoặc
 JSON dữ
(JavaScript
Object
Notation)



JSON.dữ liệu theo ngơn ngữ JavaScript, tiêu ch̉n
Định nghĩa
ECMA-262 năm 1999.



Cấu trúc là một định dạng văn bản đơn giản với các trường
dữ liệu được lồng vào nhau.



Là cấu trúc dữ liệu phổ dụng hiện nay.
Xây dựng và triển khai Web Service cho ứng dụng di động

18



1.5 Các thành phần chính của dịch vụ
Web
 WSDL – Web Service Description Language Universal
Description, Discovery, and Integration (UDDI): định
nghĩa một tài liệu XML mô tả giao diện của các dịch vụ
web.

Xây dựng và triển khai Web Service cho ứng dụng di động

19


1.5 Các thành phần chính của dịch vụ
Web
 RESTful - Representational State Transfer
-

Là một dịch vụ web đơn giản sử dụng HTTP và
tính chất của REST.

-

Là một tập tài nguyên các thành phần được định
nghĩa:
o URI gốc cho dịch vụ web.
o MIME type hỗ trợ bởi dịch vụ web.
o Tập hành động hỗ trợ bởi dịch vụ web sử dụng
phương thức HTTP (GET, POST, PUT, DELETE).


Xây dựng và triển khai Web Service cho ứng dụng di động

20


1.5 An toàn cho dịch vụ Web
 Việc đảm bảo an toàn cho dịch vụ Web là một vấn đề
quan trọng.
 Đảm bảo an toàn cho Web Service:



WS-Security (bảo mật cho Web service) - chuẩn an toàn
bao trùm cho SOAP, nó được dùng khi muốn xây dựng
những Web service toàn vẹn và tin cậy.



Các

thành

phần

được

thêm

vào:


WS-Secure

Conversation Describes, WS-Authentication Describes,
WS-Policy Describes hay WS-Trust Describes, ... 

Xây dựng và triển khai Web Service cho ứng dụng di động

21


1.6 Xây dựng một dịch vụ Web
 Có 4 giai đoạn chính để xây dựng một dịch vụ
Web



Giai đoạn xây dựng: phát triển và chạy thử ứng dụng
dịch vụ Web, xây dựng các chức năng và định nghĩa dịch
vụ. Có 2 cách :
o Red-path- solod
o





Blue-path-dashed

Giai đoạn triển khai

Giai đoạn tiến hành
Giai đoạn quản ly
Xây dựng và triển khai Web Service cho ứng dụng di động

22


1.6 Xây dựng một dịch vụ Web
 Có 4 giai đoạn chính để xây dựng một dịch vụ
Web




Giai đoạn xây dựng
Giai đoạn triển khai công bố định nghĩa dịch vụ,
xây dựng WSDL và triển khai mã thực thi của dịch
vụ Web.



Giai đoạn tiến hành tìm kiếm và gọi thực thi dịch
vụ Web bởi những người sử dụng dịch vụ.



Giai đoạn quản ly quản lý và quản trị dịch vụ,
duy trì sự ổn định của dịch vụ, cập nhật thông tin
mới, sửa lỗi Xây
khi

xảy
ra.cho ứng dụng di động
dựng nó
và triển khai
Web Service

23


1.6 Xây dựng một dịch vụ Web
 Qui trình xây dựng một dịch vụ Web bao gồm các
bước sau:
1. Định nghĩa và xây dựng các chức năng, các dịch vụ
mà dịch vụ sẽ cung cấp.
2. Tạo WSDL cho dịch vụ.
3. Xây dựng SOAP hoặc REST server
4. Đăng ký WSDL với UDDI registry để cho phép các
client có thể tìm thấy và truy xuất.
5. Client nhận tập tin WSDL và từ đó xây dựng SOAP
hoặc REST client để có thể kết nối với SOAP hoặc
REST server
6. Xây dựng ứng dụng phía client và sau đó gọi thực
Xây dựng và triển khai Web Service cho ứng dụng di động

24


1.7 Tích hợp dịch vụ Web theo
chuẩn
Giám sát (monitoring)

Giám sát các dịch vụ Web chạy như thế nào qua toàn bộ
mạng, từ một chi nhánh con của một công ty trên mạng tới
các chi nhánh khác trong công ty hay giao tiếp với doanh
nghiệp
khác.
Xác định
đường đi dữ liệu (Data
routing)
Hướng tới tối đa hóa khả năng sử dụng lại.
Những thể hiện của cùng một thành phần có thể dễ dàng
được sử dụng lại trong các ứng dụng phân tán khác bởi vì
chúng hoàn toàn độc lập và không phụ thuộc lẫn nhau.

Xây dựng và triển khai Web Service cho ứng dụng di động

25


×