Mô hình lập trình SOA để triển khai thực hiện các dịch vụ Web, Phần 1: Giới thiệu về mô hình lập trình SOA của IBM

Mô hình lập trình IBM® với Kiến trúc Hướng-Dịch vụ (Service-Oriented Architecture - SOA) cho phép các lập trình viên không chuyên tạo ra và tái sử dụng các tài sản công nghệ thông tin (CNTT) mà không cần thông thạo các kỹ năng CNTT. Mô hình bao gồm các kiểu thành phần, kết nối giữa chúng, các bản mẫu, các bộ tiếp hợp ứng dụng, biểu diễn dữ liệu đồng dạng và kênh dịch vụ doanh nghiệp (Enterprise Service Bus - ESB). Đây là bài viết đầu tiên trong một loạt các bài viết về mô hình lập trình SOA của IBM và những điều cần thiết để lựa chọn, phát triển, triển khai và tiến cử các phần tử của mô hình lập trình. Các nội dung được trình bày ở đây có tính đến các nhà phát triển tìm hiểu mô hình này với các trình độ kỹ năng và các vai trò khác nhau

Donald Ferguson, Kiến trúc sư trưởng SWG, IBM Corporation

Tiến sĩ Donald F. Ferguson là một trong 55 ủy viên Hội đồng IBM, vị trí kỹ thuật cao nhất trong cộng đồng kĩ nghệ của IBM gồm 200.000 các nhà kỹ thuật chuyên nghiệp. Don là kiến trúc sư trưởng và nhà lãnh đạo kỹ thuật của Tập đoàn phần mềm IBM gồm dòng các sản phẩm Lotus, Rational, WebSphere, DB2. Don là chủ tịch Hội đồng Kiến trúc SWG, tập hợp các kiến trúc sư của các sản phẩm hàng đầu của SWG. Mọi nỗ lực mới đây nhất của Don đều tập trung vào các dịch vụ web, quản lý quá trình nghiệp vụ, nền tảng máy khách, nền tảng gia công/lưu trữ trên máy chủ, các dịch vụ Lưới (Grid) và phát triển ứng dụng cho WebSphere. Don đã là kiến trúc sư trưởng cho dòng các sản phầm WebSphere từ lúc khởi đầu cho đến khi đảm nhận vai trò kiến trúc sư trưởng của SWG vào năm 2003



05 07 2009

Loạt bài mô hình lập trình SOA

Ngày càng trở nên khó khăn hơn cho bất kì cá nhân lập trình viên nào, chứ chưa nói đến người không phải là một lập trình viên chuyên nghiệp, để làm chủ được và áp dụng được một cách có hiệu quả các công nghệ phần mềm, các thông lệ, các công cụ và các hệ thống nền; chúng đang ngày càng gia tăng ở mức báo động. Thế nhưng, nếu sự biến đổi quá trình nghiệp vụ vẫn tiếp tục diễn ra thì một số lượng đáng kể các lập trình viên không chuyên vẫn cần sử dụng các tài sản CNTT hiện có để thực hiện các nhiệm vụ của mình trong khi không thể mong đợi tìm hiểu hết các thông tin chi tiết rất khắt khe của các công nghệ nền bên dưới. Loạt các bài viết này mô tả một mô hình lập trình kiến trúc hướng dịch vu (SOA) mới, đã thành công trong việc tách biệt các mối quan tâm, sao cho những người có trình độ kỹ năng và các vai trò khác nhau trong doanh nghiệp, không nhất thiết phải là các chuyên gia CNTT, có thể tạo ra và sử dụng các tài sản CNTT trong mọi giai đoạn của vòng đời phát triển phần mềm. Kết quả là sự lanh lợi trong kinh doanh được cải thiện đáng kể theo yêu cầu doanh nghiệp.


Giới thiệu

Các sản phẩm của IBM triển khai thực hiện SOA và mô hình lập trình SOA ngày càng nhiều hơn. Các lập trình viên xây dựng các dịch vụ, sử dụng các dịch vụ và phát triển các giải pháp để kết hợp các dịch vụ. Chúng tôi sử dụng thuật ngữ "lập trình viên" (programmer) ở đây theo nghĩa rộng vì một khía cạnh quan trọng của mô hình lập trình SOA là mở rộng "việc lập trình" sang cho một tập hợp rộng hơn các vai trò và các kỹ năng của nhà phát triển không truyền thống, ví dụ như là các nhà phân tích nghiệp vụ và những người sử dụng ngôn ngữ kịch bản lệnh (scripting).

Hầu hết các tài liệu về các dịch vụ web tập trung chủ yếu vào các giao diện dịch vụ và việc sử dụng chúng. Để bổ sung đầy đủ các tiêu chuẩn giao diện và các cách làm thực tế tốt nhất, IBM giới thiệu một mô hình lập trình để triển khai thực hiện các dịch vụ và lắp ráp chúng thành các giải pháp. Bằng việc mở rộng khả năng tiếp cận các nền tảng phần mềm của IBM đến cộng đồng những người sử dụng rộng lớn hơn -- bao gồm cả các nhà lập trình không truyền thống -- mô hình này cung cấp các kiểu thành phần mới phù hợp với vai trò, các mục tiêu, các kỹ năng và khung thiết kế của người sử dụng. Các kiểu thành phần này cho phép áp dụng các công cụ phát triển trực quan hơn. Một chủ đề chính khác nữa là tăng khả năng tiêu thụ thông qua bộc lộ dần từng bước các đặc tính và các khả năng của mô hình lập trình này.

Đây là bài đầu tiên của một loạt các bài viết về mô hình lập trình SOA của IBM đặc biệt dành cho các nhà phát triển phần mềm chuyên nghiệp. Trong loạt bài này, chúng tôi trình bày một số các phần tử của mô hình lập trình mới phục vụ các mục tiêu này. Chúng tôi cho bạn thấy cách bạn có thể tận dụng chúng như thế nào để làm cho phần mềm mà bạn lựa chọn, phát triển, triển khai, đề cử, hoặc quản lý sẽ được phát triển, tái sử dụng và tiêu thụ dễ dàng hơn. Phần mềm được cấu trúc dưới dạng các dịch vụ đặc biệt có giá trị trong trường hợp của hệ thống phần mềm doanh nghiệp theo yêu cầu bởi vì nó có thể dễ dàng được "nối" lại với nhau thành một giải pháp bởi một nhà phát triển dù kỹ năng chưa cao, hoặc được hòa phối thành luồng đã dàn dựng các quy trình nghiệp vụ để đáp ứng yêu cầu nghiệp vụ thay đổi rất nhanh. Cho dù bạn là một nhà phát triển tại một doanh nghiệp lớn hay một công ty nhỏ, một nhà cung cấp phần mềm độc lập (ISV), một nhà cung cấp ứng dụng, hoặc một nhà cung cấp phần mềm trung gian (middleware), bạn đều có thể hưởng lợi từ cách cấu trúc phần mềm của bạn dưới dạng các dịch vụ. Vì vậy, chúng ta hãy bắt đầu áp dụng các nguyên tắc SOA ngay bây giờ.


Những điểm nổi bật nhất của mô hình lập trình SOA

Hãy bắt đầu bằng cách nêu bật một số đặc tính chính của mô hình lập trình SOA.

Service Data Objects (SDOs-Các đối tượng Dữ liệu Dịch vụ) là một khái niệm cơ bản trong SOA của IBM. Các SDO làm cho các nhà phát triển đạt hiệu suất cao hơn và giải phóng bạn không phải quan tâm đến các chi tiết kỹ thuật về cách làm thế nào để truy cập tới các nguồn dữ liệu, các ứng dụng hoặc các dịch vụ tầng sau cụ thể. Các SDO tạo ra một trừu tượng hóa đơn giản để cho phép các lập trình viên tập trung chủ yếu vào logic nghiệp vụ. Các SDO cũng cung cấp một biểu diễn thống nhất cho các thông báo để tương tác với các dịch vụ, thay thế một mê cung các công nghệ khó hiểu nhằm biểu diễn dữ liệu và truy cập bằng một mô hình thống nhất.

Mô hình lập trình SOA cũng cần có một khuôn mẫu (paradigm) thống nhất để tạo và truy cập vào logic nghiệp vụ. Để sử dụng dễ dàng, một dịch vụ nên che giấu những khác biệt trong công nghệ triển khai thực hiện và đạt mức độ trừu tượng hóa cao hơn các cấu kiện lập trình hiện có, ví dụ như Enterprise Java™Beans (EJBs). Hãy coi như các dịch vụ có thể được thực hiện bởi các thành phần được lắp ráp thành các mô-đun, mà các mô-đun này đến lượt chúng lại có thể được kết hợp thành các giải pháp. Các thành phần đưa ra các dịch vụ có thể gọi được bằng cách sử dụng các giao diện rõ ràng. Bạn có thể sử dụng Web Services Description Language (WSDL-Ngôn ngữ Mô tả Dịch vụ Web), Java hoặc các ngôn ngữ khác để mô tả các giao diện. Cách triển khai thực hiện này có thể đã không giải quyết các tham chiếu đến các dịch vụ cần thiết để thỏa mãn chúng trước khi thi hành bằng cách nối các thành phần với nhau.

Mô hình lập trình này cũng giới thiệu các kiểu thành phần được định nghĩa rõ ràng, mô hình hóa các loại tạo phẩm thông thường mà các nhà phát triển tạo ra và triển khai thành các giải pháp. Các ví dụ bao gồm "Plain old Java objects" (Các đối tượng thuần Java), các quá trình của Business Process Execution Language (BPEL-Ngôn ngữ thi hành qui trình nghiệp vụ), các dịch vụ Structured Query Language (SQL-Ngôn ngữ truy vấn có cấu trúc), Adaptive Business Objects (Các đối tượng nghiệp vụ thích nghi), các chương trình CICS® được truy cập thông qua các bộ tiếp hợp tài nguyên của Java Connector Architecture (J2C-Kiến trúc Đầu nối Java), các ứng dụng có sử dụng giao diện lập trình ứng dụng nghiệp vụ của SAP, các bean phiên không trạng thái của Java 2 Enterprise Edition (J2EE-Java 2 ấn bản doanh nghiệp) và các ứng dụng MQSeries®.

The Enterprise Service Bus (ESB-Kênh dịch vụ doanh nghiệp) đóng một vai trò quan trọng như là một kết cấu đa giao thức, lấy các thành phần dịch vụ kết lại thành một tương tác liền mạch, cho phép giải quyết các mối quan tâm của hệ thống doanh nghiệp -- ví dụ như việc kiểm toán, ghi nhật kí, định tuyến, làm thích nghi các giao diện không ăn khớp, sự thay thế dần từng bước các thành phần (componentry) tương đương, vấn đề an ninh và v.v -- trên quy mô toàn doanh nghiệp ở tuyến xương sống, bằng cách chèn các thành phần đặc biệt được gọi là các thành phần hòa giải (mediations) vào trong tuyến đường đi của các thông báo để môi giới việc tương tác giữa các dịch vụ mà không làm thay đổi các điểm cuối hiện có.

Các ngôn ngữ xử lý mới rút ngắn khoảng cách giữa các khái niệm CNTT và các tạo phẩm (artifacts) nghiệp vụ. Một ngôn ngữ then chốt là BPEL. Mặc dù một qui trình xử lý có thể được định nghĩa bằng cách sử dụng các công cụ đồ họa mà các nhà phân tích nghiệp vụ có thể liên kết đến, đó cũng là một chương trình thực thi. Các qui trình xử lý đóng một vai trò quan trọng trong việc chuyển đổi kinh doanh theo yêu cầu, ví dụ như trong việc miêu tả một quá trình được thi hành trong thời gian dài của một chuỗi giá trị mở rộng. Khi nói chuỗi giá trị mở rộng, chúng tôi muốn nói đến một sự sắp xếp hoạt động kinh doanh, bao trùm nhiều nhà cung cấp và nhiều lĩnh vực CNTT, ví dụ như là một doanh nghiệp bán lẻ và nhiều nhà cung cấp khác nhau của nó, một công ty bảo hiểm và nhiều người tính toán tổn thất của bên thứ ba, một tình huống thuê gia công CNTT và v.v.

Một máy trạng thái nghiệp vụ (business state machine) là một biến tướng lập trình khác mà một nhà phân tích nghiệp vụ có thể tạo ra bằng các công cụ đồ họa, nhưng thực thi được trong một máy dàn dựng (choreography engine) qui trình. Một máy trạng thái có thể biểu diễn một tạo phẩm (artifact) nghiệp vụ -- ví dụ như một đơn đặt mua hàng, một yêu cầu bồi thường bảo hiểm, v.v -- trải qua một số trạng thái được định nghĩa rõ ràng để đáp lại "các sự kiện" vòng đời cụ thể.

Một thành phần dùng để sử dụng lại có thể được đóng gói như là một bản mẫu với các điểm biến đổi được (points of variability) dành cho việc điều chỉnh khi đặt nó vào trong một giải pháp. Kiểu làm thích nghi như thế trở thành lớp đầu tiên của mô hình lập trình của chúng ta với việc bổ sung thêm một ngôn ngữ các quy tắc (rules language) và các công cụ kèm theo, sẽ cung cấp các khả năng tuỳ chỉnh cho nhiều loại người sử dụng mới.

Một lĩnh vực đổi mới khác là một mô hình giải pháp (solution model) mới cho phép các nhà triển khai, các quản trị viên và những người dùng nghiệp vụ khác lắp ráp các thành phần vào trong các giải pháp. Tại thời điểm phát triển, bạn có thể kết hợp việc triển khai thực hiện dịch vụ với hình thái hệ thống (topology) để lưu trữ nó (hình thái triển khai mà kiến trúc sư hệ thống đã mô hình hóa). Các yêu cầu hệ thống và các giả thiết về môi trường được nắm bắt trong mô hình sẽ được kiểm tra triển khai thực hiện sớm hơn, làm giảm các chi phí trong vòng đời của ứng dụng trong khi cải thiện rất nhiều về độ tin cậy và mức chịu trách nhiệm. Kết buộc chậm, các thành phần hòa giải để chuyển đổi dữ liệu và các bộ tiếp hợp (adapter) cho các ứng dụng hiện có cho phép các tương tác hướng-dịch vụ thông qua một Kênh Dịch vụ Doanh nghiệp (Enterprise Service Bus), là các đặc tính của mô hình này.

Tóm lại, mô hình lập trình SOA tách riêng các hoạt động phát triển và triển khai thành các pha riêng biệt, có thể diễn ra ở các thời điểm khác nhau và có thể được thực hiện bằng các kỹ năng khác nhau, bởi các cá nhân khác nhau. Điều này đem đến sự phân tách thật sự các mối quan tâm, cho phép xác định lại mục đích của các thành phần phần mềm. Nó cũng điều chỉnh lại trải nghiệm làm phần mềm tới mức vai trò nghiệp vụ, kỹ năng và nhiệm vụ của từng cá nhân người sử dụng. Cuối cùng, nó hỗ trợ một vòng đời phần mềm phù hợp với các đòi hỏi của các doanh nghiệp theo yêu cầu khi họ tìm kiếm lợi nhuận tăng thêm bằng cách tái tạo lại các quy trình CNTT để lanh lẹn hơn trong công việc kinh doanh.


Khái niệm mô hình lập trình

Một mô hình lập trình (programming model) là trung tâm của SOA IBM và của sản phẩm IBM nói chung. Nó định nghĩa các khái niệm và các sự trừu tượng hóa mà các nhà phát triển sẽ xây dựng và sử dụng. Các sản phẩm môi trường chạy (runtime), ví dụ như WebSphere® Application Server, DB2® và CICS, cho chạy hay lưu trữ các tạo phẩm của mô hình lập trình. Các công cụ phát triển hỗ trợ việc mô hình hóa và thực hiện các tạo phẩm của mô hình lập trình, lắp ráp chúng thành các ứng dụng (các giải pháp) và triển khai chúng vào môi trường chạy. Cuối cùng, các sản phẩm quản lý hệ thống, các đại lý và thiết bị đo hỗ trợ quản lý môi trường chạy và các tạo phẩm của mô hình lập trình mà chúng lưu trữ.

Một mô hình lập trình là gì? Mặc dù không có định nghĩa được chấp nhận chung, chúng tôi muốn định nghĩa nó như là:

  • Một tập hợp của các kiểu bộ phận (part types) mà các lập trình viên xây dựng. Các kiểu bộ phận bao gồm nhiều dạng tạo phẩm của mô hình lập trình: các tệp Hypertext Markup Language (HTML-Ngôn ngữ đánh dấu siêu văn bản), các thủ tục cơ sở dữ liệu lưu sẵn, các lớp Java, các định nghĩa lược đồ Extensible Markup Language (XML-Ngôn ngữ đánh dấu mở rộng), các cấu trúc (struct) trong ngôn ngữ định nghĩa các thông báo MQSeries và v.v.
  • Một tập hợp của các vai trò (roles) là nhóm các thành viên của cộng đồng phát triển và quản trị, gồm những người có kỹ năng và kiến thức như nhau. Việc phân loại các nhà phát triển theo cách này giúp tạo ra các công cụ phù hợp với vai trò, cho phép các lập trình viên không chuyên thực hiện các dịch vụ và lắp ráp các giải pháp từ các dịch vụ. Các nhà phân tích kinh doanh định nghĩa các quy trình kinh doanh và các chuyên gia tiếp thị định nghĩa các chính sách để phân loại các khách hàng và tính toán giảm giá sản phẩm là những ví dụ minh họa về các loại nhà phát triển mới mà bạn muốn tiếp cận. Mỗi vai trò bao gồm:
    • Các kỹ năng (Skills) mà vai trò đó phải có. Ví dụ, một nhà phát triển giao diện người sử dụng phát triển các giao diện để trình bày các tạo phẩm chức năng của ứng dụng hoặc giải pháp. Vai trò này được giả định là biết ứng dụng đang phát triển và các mục tiêu kinh doanh của nó, hiểu được những người dùng của ứng dụng và các nhiệm vụ của họ đủ mức cần thiết, là chuyên gia về một số phương pháp thiết kế giao diện người dùng và có khả năng tạo ra các giao diện người dùng dễ sử dụng bằng cách chọn đúng loại phù hợp cho từng nhiệm vụ.
    • Các kiểu bộ phận và và các giao diện ứng dụng (Part types and application interfaces) mà vai trò sẽ tương tác với chúng (tiêu thụ hoặc sản xuất ra). Ví dụ, các nhà thiết kế các trang web động -- đó là một vai trò (a role) -- sẽ sản xuất ra các trang JavaServer (JSPs) và tiêu dùng các EJB -- đó là các kiểu bộ phận (part types) -- chúng bao bọc các nguồn thông tin và các ứng dụng hiện có.
    • Các công cụ (Tools) mà vai trò sử dụng. Ví dụ về một công cụ phù hợp với vai trò nhà phát triển web là một công cụ thiết kế thuộc kiểu cái-bạn-thấy-là-cái-bạn-sẽ-nhận-được để xây dựng trang Web động, sử dụng các điều khiển gắn kèm với các thư viện thẻ HTML và JSP và buộc nối các điều khiển ấy với các EJB.

Chìa khóa để làm cho các dịch vụ web dễ dàng thực hiện và sử dụng là mở rộng tăng dần các kỹ năng và kiến thức hiện có của một người, như vậy sẽ làm cho SOA sử dụng được. Một dịch vụ dưới dạng của các chương trình giao dịch COBOL CICS có ít sự tương đồng với một chương trình được viết bằng BPEL. Việc gọi một dịch vụ từ một thủ tục cơ sở dữ liệu lưu sẵn khác với việc gọi nó từ một JSP; các kỹ năng và các kết quả mong đợi là khác nhau. Bạn thực hiện thành công việc tiêu thụ dịch vụ bằng cách cung cấp một bộ công cụ xếp theo loại để điều chỉnh các kiểu bộ phận thích nghi với các kỹ năng khác nhau và với các công đoạn của quá trình phát triển.

Các bài viết tiếp theo trong loạt bài này khám phá một số các kiểu bộ phận làm nên mô hình lập trình SOA một cách chi tiết hơn.


Kiến trúc của sản phẩm

Hình 1. Kiến trúc của sản phẩm
Kiến trúc của sản phẩm

Các sản phẩm hỗ trợ khung nhìn IBM về một SOA được chia thành hai thể loại lớn: các điểm cuối (endpoints) dịch vụ và kết cấu truyền dẫn thông báo liên kết chúng với nhau. Kiến trúc chung này -- được nhiều sản phẩm góp phần vào, không một sản phẩm riêng biệt nào trong số này có thể là phương tiện chuyển tải duy nhất cho SOA của IBM -- được minh họa trong Hình 1.

Ở vị trí trung tâm là một ESB cung cấp kết nối giữa các dịch vụ. ESB này là dịch vụ đa giao thức, hỗ trợ kiểu truyền thông điểm-đến-điểm và đăng ký-công bố (publish-subscribe) và trung gian hòa giải để xử lý các thông báo ngay trên đường đi. IBM WebSphere MQ, IBM WebSphere MQ Integrator Broker và hỗ trợ WebSphere cho các dịch vụ web và các dịch vụ Thông báo của Java (JMS), tất cả đều thuộc thể loại đầu tiên.

Một dịch vụ nằm trong môi trường lưu trữ trừu tượng được gọi là một thùng chứa (container) và cung cấp một biến tướng lập trình cụ thể. Thùng chứa nạp mã triển khai thực hiện của dịch vụ, cung cấp kết nối tới ESB và quản lý các cá thể dịch vụ. Các kiểu dịch vụ khác nhau nằm trong các thùng chứa khác nhau. (Trong một ví dụ đáng chú ý về đệ quy của thiết kế, ESB tự nó được coi là một thùng chứa cho các dịch vụ hòa giải). Bảng 1 liệt kê một số môi trường lưu trữ SOA IBM chính và các kiểu thành phần được lưu trữ trong đó.

Bảng 1. Các thùng chứa là lưu trữ nhiều kiểu thành phần và dịch vụ khác nhau

Kiểu thành phần/dịch vụThùng chứa
Các chương trình giao dịch được viết bằng các ngôn ngữ COBOL, PL / 1 và các ngôn ngữ khác.CICS hoặc IMS (Hệ thống quản lý thông tin -- một hệ thống xử lý giao dịch doanh nghiệp). Các lập trình viên có thể sử dụng các kết nối SOAP / HTTP, WebSphere MQ và J2EE J2C để truy cập vào các dịch vụ. .
Dàn dựng quy trình nghiệp vụ WebSphere Business Integration Server Foundation (Nền máy chủ tích hợp nghiệp vụ WebSphere). Thùng chứa này hỗ trợ các quá trình luồng công việc diễn ra kéo dài, chúng thực hiện các giao diện dịch vụ web và gọi các thao tác trên các dịch vụ web khác. Nó cũng hỗ trợ các giao dịch hoạt động nghiệp vụ thi hành trong một thời gian kéo dài.
Các bộ tiếp hợp ứng dụng -- cung cấp một diện mạo bên ngoài dịch vụ SOA/Web cho các ứng dụng và các hệ thống hiện có.Thùng chứa bộ tiếp hợp ứng dụng được cung cấp bởi nền máy chủ tích hợp nghiệp vụ WebSphere (WebSphere Business Integration Server Foundation). Một bộ tiếp hợp ứng dụng chuyển đổi giữa các giao thức và các định dạng SOA với các giao thức và các định dạng của các ứng dụng và các hệ thống hiện có. Ví dụ, một bộ tiếp hợp ứng dụng cho SAP chuyển đổi từ XML trên HTTP mã hóa theo SOA thành các định dạng của giao diện lập trình ứng dụng nghiệp vụ hiện có của SAP và Gọi chức năng từ xa (RFC).
Các dịch vụ được triển khai thực hiện bằng các truy vấn SQL, các truy vấn XML hay các thủ tục cơ sở dữ liệu lưu sẵn.DB2 cùng với Máy chủ Ứng dụng WebSphere. Các tham số cho truy vấn đến từ một thông báo đầu vào của hoạt động SOA và kết quả tạo ra thông báo đầu ra.
Các dịch vụ được các lớp Java và các EJB triển khai thực hiện.WebSphere Application Server (Máy chủ Ứng dụng WebSphere).

Tóm tắt

Phần đầu tiên này của loạt bài viết của chúng tôi về mô hình lập trình SOA của IBM cung cấp một cái nhìn tổng quan về cách làm cho các công cụ và các sản phẩm của IBM phù hợp với mô hình này như thế nào và làm thế nào để các nhà phát triển có thể sử dụng nó một cách hiệu quả trong việc phát triển ứng dụng của họ.

Các chủ đề tiếp theo trong loạt bài này sẽ bao gồm:

  • Đơn giản hóa việc truy cập dữ liệu bằng cách sử dụng các SDO.
  • Định nghĩa dịch vụ và giới thiệu về mô hình thành phần phát triển.
  • Các kiểu thành phần để đơn giản hóa việc phát triển.
  • Các kiểu thành phần cơ bản.
  • Cấu tạo và tuỳ chỉnh dịch vụ.
  • Các thành phần là quá trình xử lý: BPEL và các máy trạng thái nghiệp vụ.
  • Tuỳ chỉnh các dịch vụ: các mẫu thiết kế, các bản mẫu và các điểm biến đổi được.
  • Các giao diện người dùng hướng dịch vụ.
  • Tiếp cận quản lý theo SOA.
  • Các công cụ phát triển cho vòng đời của phần mềm SOA.
  • Bảo mật trong SOA.

Tài nguyên

  • Bạn sẽ muốn xem qua Java Message Service specification (đặc tả dịch vụ thông báo của Java) qua nhiều lần phát triển đến nay.
  • J2EE Connector architecture (Kiến trúc đầu nối J2EE) cung cấp một giải pháp công nghệ Java cho vấn đề kết nối giữa nhiều máy chủ ứng dụng và các hệ thống thông tin doanh nghiệp ngày hôm nay.
  • IBM developerWorks có một bài hướng dẫn, Introduction to the J2EE Connector Architecture (Giới thiệu về Kiến trúc đầu nối J2EE), cung cấp một tổng quan thú vị về kiến trúc đầu nối J2EE.
  • Hãy dành tâm trí cho cộng đồng developerWorks bằng cách tham gia vào các developerWorks blogs.
  • Bạn muốn biết thêm nhiều hơn nữa? Vùng SOA and Web services (dịch vụ Web và SOA) của developerWorks chứa hàng trăm bài viết nhiều thông tin và các hướng dẫn ở mức nhập môn, trung cấp và cao cấp về cách làm thế nào để phát triển các ứng dụng dịch vụ web.

Bình luận

developerWorks: Đăng nhập

Các trường được đánh dấu hoa thị là bắt buộc (*).


Bạn cần một ID của IBM?
Bạn quên định danh?


Bạn quên mật khẩu?
Đổi mật khẩu

Bằng việc nhấn Gửi, bạn đã đồng ý với các điều khoản sử dụng developerWorks Điều khoản sử dụng.

 


Ở lần bạn đăng nhập đầu tiên vào trang developerWorks, một hồ sơ cá nhân của bạn được tạo ra. Thông tin trong bản hồ sơ này (tên bạn, nước/vùng lãnh thổ, và tên cơ quan) sẽ được trưng ra cho mọi người và sẽ đi cùng các nội dung mà bạn đăng, trừ khi bạn chọn việc ẩn tên cơ quan của bạn. Bạn có thể cập nhật tài khoản trên trang IBM bất cứ khi nào.

Thông tin gửi đi được đảm bảo an toàn.

Chọn tên hiển thị của bạn



Lần đầu tiên bạn đăng nhập vào trang developerWorks, một bản trích ngang được tạo ra cho bạn, bạn cần phải chọn một tên để hiển thị. Tên hiển thị của bạn sẽ đi kèm theo các nội dung mà bạn đăng tải trên developerWorks.

Tên hiển thị cần có từ 3 đến 30 ký tự. Tên xuất hiện của bạn phải là duy nhất trên trang Cộng đồng developerWorks và vì lí do an ninh nó không phải là địa chỉ email của bạn.

Các trường được đánh dấu hoa thị là bắt buộc (*).

(Tên hiển thị cần có từ 3 đến 30 ký tự)

Bằng việc nhấn Gửi, bạn đã đồng ý với các điều khoản sử dụng developerWorks Điều khoản sử dụng.

 


Thông tin gửi đi được đảm bảo an toàn.


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=70
Zone=SOA và dịch vụ Web
ArticleID=406456
ArticleTitle=Mô hình lập trình SOA để triển khai thực hiện các dịch vụ Web, Phần 1: Giới thiệu về mô hình lập trình SOA của IBM
publish-date=07052009