1. Trang chủ
  2. » Luận Văn - Báo Cáo

Công nghệ Web Service và ứng dụng để xây dựng kiến trúc hướng dịch vụ

16 129 0

Đ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

Định dạng
Số trang 16
Dung lượng 45 KB

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

Nội dung

Hà Nội – 2009ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ Nguyễn Thị Bình Giang CÔNG NGHỆ WEB SERVICE VÀ ỨNG DỤNG ĐỂ XÂY DỰNG KIẾN TRÚC HƯỚNG DỊCH VỤ Ngành: Công nghệ thông tin Chuyê

Trang 1

ĐẠI HỌC QUỐC GIA HÀ NỘI

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ

Nguyễn Thị Bình Giang

CÔNG NGHỆ WEB SERVICE VÀ ỨNG DỤNG ĐỂ XÂY DỰNG KIẾN TRÚC HƯỚNG DỊCH VỤ

LUẬN VĂN THẠC SĨ

Trang 2

Hà Nội – 2009

ĐẠI HỌC QUỐC GIA HÀ NỘI

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ

Nguyễn Thị Bình Giang

CÔNG NGHỆ WEB SERVICE VÀ ỨNG DỤNG ĐỂ

XÂY DỰNG KIẾN TRÚC HƯỚNG DỊCH VỤ

Ngành: Công nghệ thông tin

Chuyên ngành: Công nghệ phần mềm.

Mã số: 60 48 10

LUẬN VĂN THẠC SĨ

NGƯỜI HƯỚNG DẪN KHOA HỌC

Trang 3

TS NGUYỄN VIỆT HÀ

Hà Nội – 2009

Trang 4

LỜI CẢM ƠN

Lời đầu tiên em xin chân thành cảm ơn TS Nguyễn Việt Hà – Trưởng Bộ môn Công nghệ Phần mềm, Trường Đại học Công nghệ - đã tận tình hướng dẫn, chỉ bảo và giúp đỡ em trong quá trình hoàn thành luận văn này

Em xin cảm ơn tới các thầy cô giáo Trường Đại học Công nghệ - Đại học Quốc gia

Hà nội nói chung, Khoa Công nghệ Thông tin nói riêng đã truyền đạt cho em những kiến thức, kinh nghiệm quý báu trong suốt thời gian học tập tại trường Em xin gửi lời cảm ơn tới Ban lãnh đạo Trung tâm CNTT - Ngân hàng TMCP Công Thương Việt Nam đã tạo điều kiện thuận về thời gian và sắp xếp công việc trong suốt quá trình học tập và hoàn thành luận văn này

Tuy nhiên do thời gian và trình độ có hạn nên luận văn này không thể tránh khỏi những thiếu sót Rất mong nhận được sự đóng góp ý kiến của các thầy cô giáo, bạn bè, những ai quan tâm tới vấn đề này để luận văn được hoàn thiện hơn

Trân trọng cảm ơn!

Hà Nội, 12/2009

Nguyễn Thị Bình Giang

Trang 5

MỤC LỤC

LỜI CẢM ƠN 4

MỤC LỤC 5

BẢNG KÝ HIỆU CÁC CHỮVIẾT TẮT 7

DANH MỤC CÁC BẢNG 9

DANH MỤC CÁC HÌNH 10

MỞĐẦU 11

CHƯƠNG 1 TỔNG QUAN VỀWEB SERVICE Error! Bookmark not

defined.

1.1 Các công nghệ hỗ trợtrước web service Error! Bookmark not

defined.

1.2 Web service là gì .Error! Bookmark not defined 1.3 Lợi ích của việc sửdụng web service Error! Bookmark not defined 1.4 Kiến trúc tổng quan của web service Error! Bookmark not defined CHƯƠNG 2 CÁC CÔNG NGHỆNỀN TẢNG CỦA WEB SERVICE Error! Bookmark not

defined.

2.1 XML Error! Bookmark not defined 2.1.1 Khái niệm về XML Error! Bookmark not defined 2.1.2 Các quy tắc cú pháp của XML Error! Bookmark not defined 2.1.3 XML có đị nh dạng tốt (Well-formed XML)Error! Bookmark not defined 2.1.4 XML đúng đắn (Valid XML) Error! Bookmark not defined 2.1.5 Không gian tên (Namespaces) Error! Bookmark not defined 2.1.6 Tên viết tắt (Qualified Names - QNames) Error! Bookmark not defined 2.1.7 CDATA Error! Bookmark not defined 2.1.8 Trình diễn dữliệu XML trên web Error! Bookmark not defined 2.2 SOAP Error! Bookmark not defined 2.2.1 Đặc trưng của SOAP Error! Bookmark not defined.

Trang 6

2.2.2 Cấu trúc một thông điệp (Message) theo dạng SOAP Error! Bookmark not defined.

2.2.3 SOAP trong HTTP Error! Bookmark not defined 2.3 WSDL Error! Bookmark not defined 2.4 UDDI Error! Bookmark not defined 2.5 Hoạt động chung của một web service Error! Bookmark not defined.

CHƯƠNG 3 ỨNG DỤNG WEB SERVICE ĐỂXÂY DỰNG KIẾN TRÚC HƯỚNG DỊ CH

VỤError! Bookmark not defined.

3.1 Tổng quan về kiến trúc hướng dị ch vụ Error! Bookmark not defined 3.1.1 SOA là gì? Error! Bookmark not defined 3.1.2 Các lợi ích của SOA: Error! Bookmark not defined 3.1.3 Khi nào sửdụng SOA ? Error! Bookmark not defined.

3.1.4 Mối quan hệ giữa web service và kiến trúc hướng dị ch vụ (SOA)

Error! Bookmark not defined.

3.2 Bài toán ứng dụng công nghệ Web Service trong xây dựng kiến trúc hướng dị

ch vụ Error! Bookmark not defined.

3.2.1 Mô tả hoạt động của web service Error! Bookmark not defined 3.2.2 Đặc tả về các hệ thống giao tiếp Error! Bookmark not defined.

3.2.3 Đặc tả về giao diện kết nối Error! Bookmark not defined CHƯƠNG 4 THỰC NGHIỆM Error! Bookmark not defined 4.1 Thực nghiệm Error! Bookmark

not defined 4.1.1 Giao dị ch vấn tin tài khoản (Account Inquiry)Error! Bookmark not defined 4.1.1 Giao dị ch cập nhật số dưtài khoản (Balance Update)Error! Bookmark not defined.

4.2 Đánh giá kết quả thực nghiệm Error! Bookmark not defined KẾT LUẬN .Error! Bookmark not defined TÀI LIỆU THAM KHẢO 13

Trang 8

BẢNG KÝ HIỆU CÁC CHỮ VIẾT TẮT

12. UDDI Universal Description, Discovery, andIntegration

Trang 10

DANH MỤC CÁC BẢNG

B ả ng 2.1: Các thành ph ầ n logic c ủ a web service 43

Bảng 4 1: Bảng mô tả chi tiết các trường trong phần header của thông điệp Error! Bookmark not defined.

Bảng 4.2: Bảng mô tả chi tiết các trường trong phần dữliệu của thông điệp gửi

điError! Bookmark not defined.

Bảng 4.3: Bảng mô tả chi tiết các trường trong phần dữliệu của thông điệp trả

vềError! Bookmark not defined.

Bảng 4 4: Bảng mô tả chi tiết các trường trong phần dữliệu của thông điệp gửi

điError! Bookmark not defined.

Trang 11

DANH MỤC CÁC

Hình 1.1: Kiến trúc của Web Service .Error! Bookmark not defined Hình 2.1: Mô hình trình diễn dữliệu XML trên Web Error! Bookmark not defined Hình 2.2: SOAP với các giao thức HTTP, SMTP, và Raw TCP/IP Error! Bookmark not defined.

Hình 2.3: Cấu trúc của thông điệp SOAP .Error! Bookmark not defined Hình 2.4: SOAP message path .Error! Bookmark not defined Hình 2.5: Message path của thông điệp SOAP purchase-Order Error! Bookmark not defined.

Hình 2 6: Mô hình hoạt động của SOAP Error! Bookmark not defined Hình 2.7: Thông điệp yêu cầu của SOAP Error! Bookmark not defined Hình 2.8: Thông điệp hồi đáp của SOAP Error! Bookmark not defined Hình 2.9: Cấu trúc của WSDL Error! Bookmark not defined.

Hình 2.10: Các thành phần logic của web service 45

Hình 2.11: Biểu đồ ca sử dụng của web service 46

Hình 2.12: Biểu đồ tuần tự 46

Hình 3.1: Mô hình SOA phát triển lên từmô hình đối tượng Error! Bookmark not defined.0 Hình 3.2: Mô hình kết nối giữa 2 hệ thống Error! Bookmark not defined. Hình 3.3:Mô hình kiến trúc SOA cho ngân hàng của IBM 53

Hình 3.4: Hệ thống theo kiến trúc SOA sử dụng công nghệ WS 55

Hình 3.5: Thông điệp theo đị nh dạng ABCS Error! Bookmark not defined Hình 3.6: File đặc tả các trường trong header Error! Bookmark not defined Hình 4.1: Thông điệp gửi đến .Error! Bookmark not defined Hình 4.2: Thông điệp sau khi được thêm header và chuyển sang định dạng của hệ thống core 58

Hình 4.3: Thông điệp gửi đến .Error! Bookmark not defined Hình 4.4: Giao diện luông xửlý thông điệp .Error! Bookmark not defined Hình 4.5: Thao tác với file đặc tả WSDL 61

Hình 4.6: Luồng xử lý tại nút Inquiry 62

Hình 4.7: Giao diện làm việc với môi trường coding 62

Hình 4.8: Đoạn lập trình các thao tác làm việc với core 63

Hình 4.9: Giao diện web service Error! Bookmark not defined.

Trang 12

Hình 4.10: Giao diện đăng ký web service với UDDIRegistry Error! Bookmark not defined.

Hình 4.11: Thử nghiệm với thông điệp đầu vào của giao dịch Vấn tin TK 64 Hình 4.12: K ế t qu ả tr ả v ề .65

Trang 13

MỞ ĐẦU

Tích hợp dữ liệu (Data Integration) là qui trình trao đổi dữ liệu giữa các hệ thống quản lý thông tin kinh doanh để đưa ra được thông tin đầy đủ nhằm phục vụ mục đích quản trị Khi hai ứng dụng (Applications) trao đổi dữ liệu dựa trên thông tin của các qui trình định sẵn, chúng ta gọi là tích hợp ứng dụng (Enterprise Application Integration hay

là EAI) Thông thường khi triển khai phần mềm, doanh nghiệp đều gặp phải vấn đề khó khăn là làm sao để dữ liệu từ các phần mềm khác nhau (về mặt kiến trúc và định nghĩa dữ liệu), phục vụ cho các mục đích của các bộ phận nghiệp vụ khác nhau được tập trung về

hệ thống quản lý tài chính trung tâm, nhằm đáp ứng những nhu cầu thông tin quản lý để ban lãnh đạo kịp thời ra quyết định Trong bối cảnh cạnh tranh ngày càng khốc liệt hiện nay, các doanh nghiệp đang phải đối mặt những đối thủ khổng lồ, với hệ thống thông tin tích hợp hiện đại và chính xác thì nhu cầu tích hợp càng bức thiết cho bất cứ doanh nghiệp nào muốn đứng vững trên thị trường [4]

Trong quá trình hình thành doanh nghiệp, các doanh nghiệp quản lý phần mềm thường theo nhu cầu tự phát, thiếu tính chiến lược – Các phần mềm chủ yếu là do doanh nghiệp mua hoặc tự phát triển để đáp ứng được nhanh nhất các yêu cầu về quản lý và nghiệp vụ Khi có nhu cầu cao hơn, doanh nghiệp lại tiếp tục phát triển các phần mềm mới hoặc nâng cấp các phần mềm hiện có để nhằm thỏa mãn những nhu cầu khác nhau Dần dà, doanh nghiệp nhận ra mình đang sở hữu rất nhiều phần mềm, mỗi phần mềm chỉ thỏa mãn được một nhu cầu nào đó, nhưng các phần mềm này lại không chia sẻ dữ liệu với nhau, hoặc phối hợp với nhau một cách thiếu đồng bộ Đến thời điểm hiện nay những

hệ thống như vậy bộc lộ quá nhiều khuyết điểm do nhiều nguyên nhân khách quan cũng như chủ quan như sau [3]:

- Các phần mềm thiếu một kiến trúc và chuẩn dữ liệu đồng nhất

- Các phần mềm thiếu cơ sở đồng nhất về hạ tầng

- Do doanh nghiệp phát triển nhanh chóng, số lượng giao dịch tăng làm ảnh hưởng đến hoạt động của phần mềm mà mục đích chỉ sử dụng cho các giao dịch đơn lẻ

- Có quá nhiều phần mềm nhỏ lẻ, khó quản lý, chi phí cho đội ngũ quản lý và bảo trì phần mềm rất lớn

- Việc báo cáo định kỳ đòi hỏi sự phối hợp và trao đổi dữ liệu giữa các phòng ban,

do đó Ban điều hành chậm nhận được báo cáo về tình hình hoạt động của doanh nghiệp, gây chậm trễ trong việc ra quyết định

- Việc quản lý sẽ trở nên khó kiểm soát nếu doanh nghiệp có nhiều chi nhánh hoặc

bộ phận trong nước và nước ngoài, hay công ty muốn chuyển đổi thành tập đoàn hay công ty đa quốc gia

Trang 14

Để khắc phục các điểm yếu trên, doanh nghiệp thường chọn một trong hai giải pháp:

1 Chọn mua một phần mềm hoàn toàn mới, có tất cả chức năng cần thiết cho việc quản lý tổng thể với chi phí phần mềm và chi phí triển khai, bảo trì cao với sự chuyển đổi dữ liệu phức tạp

2 Xác định một phần mềm tích hợp trung tâm (Central Integration Hub), liên kết đồng bộ dữ liệu từ các hệ thống đơn lẻ về hệ thống tích hợp này, sau đó gửi dữ liệu đã được cập nhật trực tuyến đến các hệ thống khác

Gần đây, một số doanh nghiệp lớn trong nước bắt đầu chuyển sang mua và triển khai các phần mềm ERP đã được sử dụng nhiều trên thế giới như của Oracle, SAP, Sun System , các phần mềm chuyên biệt cho hệ thống khách sạn, bảo hiểm, ngân hàng, bệnh viện với chi phí đầu tư lên đến vài trăm nghìn hoặc vài triệu USD Không phải tất cả những doanh nghiệp này đều đã nghĩ đến bài toán Tích hợp hệ thống Họ đã chọn nhiều phần mềm khác nhau để triển khai Có công ty đã chọn Oracle cho kế toán tài chính; SAP cho phân hệ CRM; Solomon cho kho bãi và phân phối [4] Triển khai như thế có lợi là sẽ

sử dụng được tất cả thế mạnh của mỗi phần mềm, nhưng việc tích hợp các hệ thống này trong tương lai sẽ là một bài toán khó cho bất kỳ một đội ngũ IT mạnh mẽ nào

Trước thực trạng trên ta thấy được bài toán tích hợp ứng dụng trong các hệ thống

là bài toán mà bất kỳ doanh nghiệp nào cũng có thể gặp phải, tuy nhiên, việc sử dụng công nghệ nào để có thể tích hợp giữa các hệ thống lại là một bài toán khác Nếu trước đây, người ta thường đề cập đến nhiều công nghệ khác nhau như COM (Common Object Manifest), CORBA (Common Object Request Broker Architecture), RMI (Remote Method Invocation), RPC (Remote Procedure Call) được dùng để gọi đối tượng từ xa thì những năm gần đây, thuật ngữ “Web service” được rất nhiều người nhắc đến như là một giải pháp lý tưởng cho bài toán tích hợp doanh nghiệp Và khi nhắc đến Web Service, người ta thường coi đó là một trong những cách thức hiệu quả để xây dựng kiến trúc hướng dịch vụ SOA (Service Oriented Architecture) – một trong những kiểu kiến trúc được đánh giá là có khả năng đem lại cho doanh nghiệp một kiến trúc linh hoạt và khả chuyển

Bài luận văn tập trung vào hai nội dung chính là: tìm hiểu những khái niệm cơ bản

về web service, và vai trò của web service trong việc tích hợp ứng dụng và khả năng ứng dụng của Web service trong việc xây dựng kiến trúc hướng dịch vụ như thế nào

Các phần còn lại của luận văn được cấu trúc như sau:

Trang 15

TÀI LIỆU THAM KHẢO

Tiếng Việt:

[1] PHẠM HẢI,“IBM chia sẻ kinh nghiệm SOA”, Tạp chí PC World

[2] NGUYỄN PHƯƠNG LAN, HOÀNG ĐỨC HẢI (2001), “XML nền tảng và ứng

dụng”, Nhà xuất bản Giáo Dục.

[3] NGÂN HÀNG CÔNG THƯƠNG VIỆT NAM (2010), “Giải pháp tích hợp

với bên ngoài và tích hợp nội bộ cho Vietinbank”, tr.10-12.

[4] NGUYỄN QUANG (2008); “Tổng quan về tích hợp ứng dụng”; Tạp chí PC

World, tr 24-26.

[5] BÙI QUANG THÁI (2006); “SOA và Web Services”, Diễn đàn Java Việt Nam.

[6] NGUYỄN ANH TUẤN; “Tìm hiểu SOA”; Tạp chí Thế giới vi tính.

[7] “Phát triển dịch vụ thanh toán trung gian”, Tạp chí Thế giới vi tính

Tiếng Anh:

[8] ELIZABETH BOOK (2006), “Web Services in Retail Banking”

[9] SANDEEP CHATTERJEE, JAMES WEBBER (2003), “Developing Enterprise

Web Services: An Architec’s Guide”, Prentice Hall.

[10] THOMAS ERL (2005), “Service-Oriented Architecture-Concepts, Technology,

and Design”, Prentice Hall, pp.26-67.

[11] BILL EVJENET (2007); “Professional XML”, Wrox Press, pp.34-90

[12] ITNOW EXTRA (2006) “The future of banking technology?”

[13] SHARAD GARG (2004), “Web Services Architecture Requirements”,

http://www.w3.org/TR/wsa-reqs/

Trang 16

[14] RICHARDMONSON HAEFEL (2003), “J2EE Web Services”, Addition Wesley,

pp 39-69

[15] REI LAI (2003), “J2EE Platform Web Services”, Prentice Hall.

[16] QUSAY H MAHMOUD (2005), “Service-Oriented Architecture (SOA) and Web

Services: The Road to Enterprise Application Integration (EAI)”,

http://java.sun.com/developer/technicalArticles/WebServices/soa/

[17] FILIP NOWAK, MOHSIN QASIM, “A Comparison of Distributed Object

Technologies CORBA vs DCOM”

[18] OBJECT MANAGEMENT GROUP (2009), “COBRA BASIC”

http://www.omg.org/gettingstarted/corbafaq.htm

[19] DAVID REILLY ,“Introduction to Java RMI”

[20] CHIYOUNG SEO, “Web Service Architecture”

Ngày đăng: 13/02/2018, 20:59

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w