1. Trang chủ
  2. » Công Nghệ Thông Tin

Tìm hiểu công nghệ Web Service

11 2,2K 16
Tài liệu được quét OCR, nội dung có thể không chính xác
Tài liệu đã được kiểm tra trùng lặp

Đ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

Tiêu đề Tìm hiểu công nghệ web service
Tác giả Phạm Ngọc Hoàng
Trường học Vinh University
Thể loại tiểu luận
Thành phố Vinh
Định dạng
Số trang 11
Dung lượng 1,57 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Ngày nay cùng với sự phát triển mạnh mẽ của môi trường Internet, các ứng dụng triển khai trên nền Web ngày càng được phát triển rộng rãi và phong phú. Trong nền kinh tế thị trường hiện nay, chuyển đ

Trang 1

Tìm hiểu công nghệ Web Service

Sinh viên thực hiện: Phạm Ngọc Hoàng

49k-Fit-Vinh university

Mở đầu Ngày nay cùng với sự phát triển mạnh mẽ của môi trường Internet, các Ứng dụng triển khai trên nền Web ngày càng được phát triển rộng rãi và phong phú Trong nền kinh tế thị trường hiện nay, chuyển đổi dỮ liệu, thông tin đang là một nhu cầu thiết yếu cho sự phát triển và tồn tại cỦa các doanh nghiệp Web Service được coi là một công nghệ mang đến cuỘc cách mạng trong cách thức hoạt động của các dich vụ B2B (Business to Business) va B2C (Business to Customer) Giá trị cơ bản của Web Service dựa trên việc cung cấp các

phuong thức theo chuẩn trong việc truy nhập đối với hệ thống đóng gói và hệ thống kế thừa Web Service ra đời đã mở ra một hướng mới cho việc phát triển các Ứng dụng trên Internet giải quyết vấn đề chuyển đổi dữ liệu trong quy trình thương mại cỦa các doanh

nghiệp Web Service kết hợp sử dụng nhiều công nghệ khác nhau cho phép các Ứng dụng

được viết bằng các ngôn ngỮ khác nhau, chạy trên các nền tảng khác nhau có chuyển đổi

dữ liệu thông qua môi trường mạng Internet Các công nghé ma web Service sU dung nhu

XML, SOAP,WSDL,UDDI

Chương 1 Giới thiệu về Ứng dụng phân tán

Công nghệ Web Service đã thay đổi diện mạo và cách thức hoạt động của Ứng dụng phân tán cũng như giải quyết khó khăn của Ứng Ụng phân tán trước đây là vấn đề với Firewall

và Proxy Server Chúng ta sẽ tìm hiểu khái quát Ứng dụng phân tán để hiểu hơn về web service

1.1 Giới thiệu về Ung dung phan tan

1.1.1 Khái niệm HỆ phân tán

- _ Hệ phân tán là một hệ thống các thành phần (máy tính) xử lý phân tán và giao tiếp nhau qua một cơ sở hạ tầng truyền thông chung

- _ Phân loại Hệ phân tán bao gỒm:

e Hé phân tán mang tính hệ thống: hệ điều hành phân tán

e _ HỆ phân tán mang tính Ứng dụng: các hệ thống truyền tin phân tán

- _ Mục tiêu của hệ phân tán

e - Giảm rủi ro và chỉ phí phát triển:

Trang 2

“_ Chỉ phí phát triển nhỮng hệ thống xử lý lớn là rất tốn kém và có thể vượt quá khả năng của nhiều tổ chức

„ _ Việc tập trung tất cả thông tin tại một nơi là nguy cơ tiểm tàng về mất mát

dữ liệu khi có sự cố xảy ra

e - SỞ hữu thông tin: Thông tin có thể ở nhiều dạng, nhiều nguồn, và thuộc sở hữu của nhiều tổ chức khác nhau Việc gom hết tất cả thông tin về một nơi là bất khả thi Do đó việc phân tán thông tin là cần thiết

e ĐỘ an toàn: đối với nhỮng dữỮ liệu quan trong và nhạy cảm nhu cầu bảo mật thông tin được đưa lên hàng đầu đồng thời dữỮ liệu phải được truy xuất dễ dàng Bởi vậy, việc dỮ liệu được chia nhỏ thành nhiều phần và phân tán nhiều nơi đáp ứng vấn đề bảo mật và truy xuất dễ dàng

- _ Đặc trưng cơ bản của hệ phân tán:

e Kết nối người sử dụng vào chia sẻ tài nguyên: giải quyết bài toán chia sẻ tài nguyên trong hệ thống

e« Tính trong suốt: ẩn dấu sự rời rạc và nhược điểm nếu có của hệ thống với người

sử dụng và nhà lập trình Ứng dụng

e Tính nhất quán: Hệ phân tán cho phép chạy những Ứng dụng khác nhau trên nhiều máy khác nhau thành một hệ thống duy nhất

e Tính mở: hệ phân tán nhằm cung cấp các dịch vụ theo quy tắc chuẩn mô tả cú pháp

và ngỮ nghĩa

« _ Tính uyển chuyển: Khả năng thay đổi tùy theo quy mô hệ thống cao

e Tính chịu lỗi

1.1.2 Mô hình hệ thống phân tan

Hình 1 Mô hình ứng dụng phân tán

1.1.3 Các vấn đề nảy sinh trong hệ thống phân tán

- _ Các hệ điều hành khác nhau sẽ hỗ trợ những kiểu dỮ liệu khác nhau Đôi khi các kiểu

dữ liệu không tương thích 100% trên các nền tảng hệ điều hành khác nhau Khi phát

Trang 3

triển ứng dụng phân tán chúng ta cần chú ý đến việc hòa hợp dữ liệu trên các môi trường

Các thành phần của một ứng dụng phân tán thường 6 nhiều nơi khác nhau trên mạng

do đó khả năng phát sinh lỗi cao hơn bình thường

Nếu server lưu trạng thái của client, khi client bị ngừng đột ngột, hệ thống cần có biện pháp thông báo cho server và thu hổi tài nguyên bị chiếm giỮ cũng như dữ liệu dang gửi đi

Dữ liệu hệ phân tán thường được gửi qua lại nhiều node trên mạng, do đo bảo mật là vấn đề quan trọng cần giải quyết

Vấn đề đồng bộ thời gian của client và server cũng rất quan trỌng

1.2 Các hệ thống phân tán

1.2.1 RMI (Remote Mothod Invocation)

Được Sun đưa ra

Là một cơ chế cho phép một đối tƯợng đang chạy trên máy ảo java này triệu gọi các phƯơng thức tồn tại trên máy ảo java khác

Cơ chế hoạt động: Thiết lập kết nối Client — Server

e Server: cung cấp dich vu RMI

e Client: triéu goi cdc phuOng thức trên đối tượng của dịch vụ do server cung cấp Được tích hợp sẵn trong java

1.2.2 DCOM (Distribited Component Object Model)

Được Microsoft đưa ra

Hoạt động dựa trên giao thức TCP-IP, thông qua việc gửi thông tin dưới dạng nhị phân

(binary)

Giao tiếp thông qua việc thiết lập Client-Server

1.2.3 CORBA (Common Object Request Broker Architecture)

Pudc OMG (Object Management Group) đƯa ra nhằm tạo nên một hệ phân tán vƯợt qua nhiều vấn đề về tính tương kết (interoperabiity) với việc tích hợp các Ứng dụng mạng

CORBA là một hệ phân tán mở, độc lập nền tẳng và độc lập ngôn ngữ

1.3 Hạn chế các hệ thống phân tán trên

Trang 4

- _ Eirewalls: các hệ thống trên khi hoạt động ở những mạng được che chắn bởi firewall đều phải được sự cho phép của nhỮng người quản trị firewall để được ra ngoài Đây là một lỗ hổng bảo mật tiềm tàng và khó chấp nhận bởi nhiều tổ chức

- - SỰ phối hợp các giao thức: các mô hình trên đều có đặc điểm và dựa trên các giao thức tầng dưới khác nhau Việc xây dựng chương trình chuyển đổi qua lại giỮa các tầng với nhau dẫn đến việc mất mát thông tin và các tầng khác nhau có thể không thể cùng làm việc được với nhau

Chương 2: Web Service 2.1 Giới thiệu Web Service

2.1.1 Khái niệm web service

Theo định nghĩa của W3C (World Wide Web Consortium), Web Service 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ả

bang XML

Web Service là tài nguyên 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 tỉn người dùng yêu cầu Một dịch vụ Web được tạo nên bằng cách lấy các chức năng và đóng gói chúng sao cho các Ứng dụng khác dễ dàng nhìn thấy và có thể truy cập đến những dịch vụ mà nó thực hiện, đồng thời có thể yêu cầu thông tin tỪ dịch vụ Web khác Nó bao gồm các mô đun độc lập cho hoạt động của khách hàng và doanh nghiệp và bản thân nó được thực thi trên server

Web Service mô tả một cách thức chuẩn để tích hợp các Ứng dụng dựa trên nền tảng Web, sử dụng các chuẩn mở XML (Extensible Markup Language), SOAP (Simple Object Access Protocol), WSDL (Web Services Description Language) va UDDI (Universal Description Discovery and Integration) thông qua giao thức Internet

Hình 2 Mô hình ứng dụng của Web Service

2.1.2 Hoạt động của Web Service

Trang 5

Một ứng dụng web Service bao gồm 2 phần: Client và Server giao tiếp với nhau qua giao thức HTTP

- _ Client gửi yêu cầu qua các lời gọi hàm thông qua HTTP Request đến Server

- - Server gửi các kết quả được thực thi các Ở các hàm thông qua HTTP Response

Mô hình hoạt động của ứng dụng Web Service gồm 3 thành phần chính:

- UDDI register: Cong cU gitip nhà phát triển Web Service công bố nhỮng thông tin về Web Service của mình cho cộng đồng các nhà phát triển Ứng dụng Người dùng sẽ dựa vào các thông tin này để sử dụng Web Service trong Ứng dụng riêng của mình tạo thành một hệ phân tán

- Web Service: chứa giao thức SOAP định dạng dữỮ liệu, tài liệu WSDL định nghĩa các hàm trong Web Service, XML để xây dựng ứng dụng phân tán

- Application Client: Ứng dụng phía Client sử dụng web Service xây dựng ứng dụng riêng

cho mình

Hình 3 Mô hình hoạt động của Web Service Cách thức hoạt động của Ứng dụng Web Service có thể được mô tả như sau:

Trang 6

Pau tién, Application Client can truy van đến các mẫu tin UDDI theo một thông tin nào

đó( chẳng hạn tên, loại ) để xác định Web Service cần tìm Khi đã xác định được Web

Service can cho ứng dụng, Client có thể lấy thông tin về địa chỉ của tài liệu WSDL của web Service này dựa trên mẫu tỉn UDDI Tài liệu WSDL sẽ mô tả cách thức liên lạc với Web Service, định dạng của gói tin truy vấn và phản hồi Dựa vào những thông tin này, Client có thể tạo nhỮng gói tin SOAP tương ứng để liên lạc với Server

2.2 Đặc điểm của Web Service

2.2.1 Đặc điểm

Web Service cho phép client và server tương tác được với nhau ngay cả trong nhỮng môi trường khác nhau

Web Services liên lạc với thế giới bên ngoài dùng thông điệp XML gửi trực tiếp qua

Web protocols

Một Web Service bao gồm có nhiều mô-đun và có thể công bố lên mạng Internet

Một Ứng dụng Web Service khi được triển khai sẽ hoạt động theo mô hình client-server

Nó có thể được triển khai bởi một phần mềm ứng dụng phía server ví dụ như J2EE,

Microsoft.Net

2.2.2 Ưu và nhược điểm của Web Service

a Ưu điểm:

Khả năng vượt firewall: Web Service hoạt động trên nên HTTP nên sử dụng port 80, là port mà firewall cho phép

Hoạt động trên đa môi trường: Web Service dựa trên công nghệ XML được hỗ trợ bởi tất cả các hệ điều hành kể cả môi trường di động

Tính linh hoạt, dễ chuyển đổi: Web Service chỈ bao gồm các hàm nên việc thay đối dễ dàng và giảm chỉ phí đường truyền do truyền dữ liệu không kèm định dạng HTML, Web Service 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ở Giao thức và định dạng dữ liệu dựa trên văn bản (text), giúp các lập trình viên dễ dàng hiểu được

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 bằng cách cho phép các tiến trình/chức năng nghiệp vụ đóng gói trong giao diện Web Service

Trang 7

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 quả với hệ thống của các doanh nghiệp

khác

Nhược điểm

Những thiệt hại lớn sẽ xảy ra vào khoảng thời gian chết của Web Service, 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 bat

Phải quan tâm nhiều hơn đến vấn đề an toàn và bảo mật của Web Service

2.3 Các thành phần của web Service

Web Service được các thành phần cấu thành nên : XML, SOAP, WSDL

2.3.1 XML ( eXtensible Markup Language)

Web Service là sự kết hợp của nhiều thành phần khác nhau và dùng các đặc trưng của các thành phần này để giao tiếp với nhau Để giải quyết vấn đề giao tiếp các thành phần, web service sử dụng XML là thành phần chính để giao tiếp giỮa các thành phần với nhau

và là kiến trúc nén tang để xây dựng web service

a Khai niém XML

Là một chuẩn mở do W3C đưa ra cho cách thức mô tả dữ liệu

Là một ngôn ngữ mô tả văn bản với cấu trúc do người dùng định nghĩa

Đặc điểm

XML là một ngôn ngữ đánh dấu độc lập với phần mềm, phần cứng và platform

Cho phép các máy tính truyền cấu trúc dỮ liệu giữa hệ thống không đồng nhất

Về hình thức: XML có cấu trúc giống HTML nhưng không tuân theo một đặc tả quy ước như HTML HTML định nghĩa các thành phần được hiển thị như thế nào, còn XML lại định nghĩa các thành phần chứa cái gì

Các thẻ XML không được định nghĩa trước mà do người lập trình tự định nghĩa

c Cấu trúc XML,

Một tài liệu XML bao gồm 2 phần:

e« Cấu trúc logic: định nghĩa các phần tử, các thuộc tính, các kiểu dữ liệu

e Cấu trúc vật lý: chứa dữỮ liệu và các phần tử chứa dữỮ liệu nhƯ text, image, media

Trang 8

d Ví dụ về XML

<?xml version="1.0" encoding="UTF-8" ?>

<Employer>

<name> tran vdn An</name>

<old>25</old>

</Employer>

2.3.2 WSDL ( Web Service Desctiption Language)

a Khai niém:

- _ WSDL là một ngôn ngữ dựa trên XML dé dinh nghia Web Service

- WSDL dinh nghĩa cách mô tả web service theo cú pháp tổng quát XML bao gồm các thong tin:

e Tén service

e« - Giao thức và kiểu mã hóa sẽ được sử dụng khi gọi các hàm của web service

e - Loại thông tin bao gồm thao tác, tham số, những kiểu dữ liệu

b Thành phần

Một WSDL, bao gồm 2 thành phần chính:

- _ Phần giao diện: mô tả giao diện và giao thức kết nối

- _ Phần thi hành: mô tả thông tin để truy xuất web service

c Cấu trúc của WSDL,

- _ WSDL định nghĩa các phần tử cơ bản như sau:

Trang 9

e Phần tỬ types: định nghĩa kiểu dữ liệu cơ bản cho thông điệp trao đổi giỮa Client-

Server

<definitions targetNamespace=" "name=" ">

<types>

<xsd:schema >

</types>

</definitions>

e Phần tỬ Message: định nghĩa thông điệp được gửi đi và hồi đáp Mỗi thông điệp có thể bao gồm một hoặc nhiéu phan <wsdl:message name=" ">

<wsdl:documentation />?

<part name=" " element=" "? type=" "?/>

</wsdl:message>

e Phan tl? portTypes: dinh nghia cach ma thong diép được gửi và nhận như thế nào

<wsdl:definitions >

<wsdl: portIype name=” ”>

<wsdl: operation name=” ” /> *

</wsdl: portType>

</wsdl: definitions>

e Phan tt binding: Dinh nghia cach th(fc truy cap web Service théng qua các giao thức bên dưới Mỗi phan tử binding sẽ mô tả cách thức liên kết một portlype vào 1

protocol nhất định Web Service hỗ trợ bao nhiêu protocol thì phải xây dựng bấy

nhiêu phần tử binding

<binding name=" " type=" ">

<soap: binding transport=http://schemas.xmlsoap.org/soap/http tyle=" "/>

<operation name=" ">

<soap:operation soapAction=""/>

<input>

<soap:body use="literal"/>

</input>

<output>

<soap: body use="literal"/>

</output>

Trang 10

</operation>

</binding>

2.3.3 SOAP (Simple Object Access Protocol)

a Khai niém

SOAP là giao thức được dùng để truyền dữ liệu qua Internet trong môi trường phân tán SOAP có thể được sử dụng cùng các giao thức khác như HTTP/HTTPS, FTP

Đặ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 str dung giao thức truyền dữỮ liệu riêng

SOAP Client không giữ bất kì một tham chiếu nào đầy đủ về đối tượng 6 xa

SOAP không bị ràng buộc bởi bất kì ngôn ngữỮ lập trình hoặc công nghệ nào

Vì nhữỮng đặc trưng này, nó không quan tâm đến công nghệ gì được sử dụng đề thực hiện mien là người dùng sử dụng các message theo dinh dang XML

Cc, Kiến trúc của SOAP

Thanh phan Headers: chi ra địa chi web service, host, content-Type, content-Length tuOng tu nhu m6t thong diép HTTP

Thành phần SOAP Envelope: bao trùm toàn bộ nội dung thông điệp SOAP

e SOAP header: phần thường được dùng để thêm các thông tin bổ sung phục vụ cho mục đích riêng của chương trình Các thông tin được thêm vào header là

Ngày đăng: 29/10/2012, 17:13

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w