SOA "trong tiếng Anh đơn giản" là gì? [đóng cửa]


112

Ai đó có thể giải thích bằng tiếng Anh đơn giản SOA là gì không? Tôi nghe thấy SOA ở đây, SOA ở đó nhưng tôi không thể hiểu chính xác nó là gì và được sử dụng để làm gì. Đó có phải là một khái niệm đơn giản nào đó và sau đó được phát triển thành một thứ gì đó khổng lồ hay không?

Tất cả các tài liệu, kể cả wiki đều hơi trừu tượng hoặc có thể tôi là một tên ngốc và không hiểu. Có một hướng dẫn của một thằng ngốc về điều này?

Chính xác thì có gì đằng sau ba chữ cái này?


7
Tôi nghĩ cũng sẽ rất tuyệt nếu mọi người ngừng giải thích SOA một cách trừu tượng theo những cách mà chỉ những người đã hiểu về nó mới có thể hiểu và hiển thị các ví dụ mã hóa "Xin chào, thế giới". Mã demo nói lớn hơn.
Phil

@Phil - Kiểm tra câu trả lời của tôi. Tôi đã cố gắng sử dụng một phép loại suy.
Niklas

Có hướng dẫn của một thằng ngốc, thực sự: amazon.com/Service-Oriented-Architecture-Dummies-Edition/dp/...
nullability

3
Amazon thực sự là một ví dụ hoàn hảo. Tại một số thời điểm, Bezos nhấn mạnh rằng mọi phần trong cơ sở mã của Amazon phải là một API và phản hồi các yêu cầu web. Bài viết tại đây: apievangelist.com/2012/01/12/… . Bạn có thể thấy điều này khi đăng nhập - Amazon sử dụng OpenID cho hệ thống đăng nhập của riêng mình! Hầu hết các trang web sử dụng một hệ thống tích hợp để đăng nhập. Một lợi thế là tôi nghĩ rằng họ có thể sử dụng cùng một thông tin đăng nhập cho tất cả các trang web và dịch vụ của họ.
Jordan Reiter

Câu trả lời:


49

Bạn có thể thấy bài viết này (SOA là gì? - Giải thích về SOA và Dịch vụ Web) hữu ích.

Một chút trêu ghẹo:

  • SOA là một phong cách kiến ​​trúc các ứng dụng theo cách mà chúng bao gồm các tác nhân phần mềm rời rạc có giao diện đơn giản, được xác định rõ và được sắp xếp thông qua một khớp nối lỏng lẻo để thực hiện một chức năng cần thiết.

  • Có 2 vai trò trong SOA- nhà cung cấp dịch vụ và người tiêu dùng dịch vụ. Một tác nhân phần mềm có thể đóng cả hai vai trò. SOA không phải là một khái niệm hoàn toàn mới - tuy nhiên, bài viết này chủ yếu tập trung vào SOA khi được triển khai với các dịch vụ web.


6
Mmmmm ... CORBA, IDL, client-server ... nghe có vẻ đau khổ những năm 1980! ;-D
CesarGon

64

SOA là một huy hiệu mới cho một số ý tưởng rất cũ:

  • Chia mã của bạn thành các mô-đun có thể sử dụng lại.

  • Đóng gói trong một mô-đun bất kỳ quyết định thiết kế nào có khả năng thay đổi.

  • Thiết kế các mô-đun của bạn theo cách mà chúng có thể được kết hợp theo những cách hữu ích khác nhau (đôi khi được gọi là "gia đình" hoặc "dòng sản phẩm").

Đây là tất cả các nguyên tắc phát triển phần mềm cơ bản, nhiều nguyên tắc trong số đó được David Parnas trình bày rõ ràng đầu tiên.

Có gì mới trong SOA là

  • Bạn đang làm điều đó trên mạng.

  • Các mô-đun đang giao tiếp bằng cách gửi tin nhắn cho nhau qua mạng, thay vì bằng các cơ chế ngôn ngữ lập trình mang tính giao dịch hơn như các lệnh gọi thủ tục. Đặc biệt, trong kiến ​​trúc hướng dịch vụ, các phần thường không chia sẻ trạng thái có thể thay đổi (các biến toàn cục trong chương trình truyền thống). Hoặc nếu họ chia sẻ trạng thái, trạng thái đó được khóa cẩn thận trong cơ sở dữ liệu mà bản thân nó là một tác nhân và có thể dễ dàng quản lý nhiều máy khách đồng thời.


43

Tôi thấy nhiều câu trả lời giải thích Kiến trúc hướng dịch vụ (SOA) bằng cách sử dụng các từ và thuật ngữ kỹ thuật thậm chí còn nâng cao hơn. Tôi muốn giải thích nó cho giáo dân, sử dụng một phép loại suy bằng tiếng Anh đơn giản.

Nhưng trước tiên, mô tả về SOA
SOA có thể được mô tả trong ba lớp như trong hình bên dưới. Một bên chúng tôi có Nhà cung cấp và bên kia chúng tôi có Người tiêu dùng , được ngăn cách bởi một Cầu nối nơi hai bên giao tiếp.

Người tiêu dùng sử dụng một số Ứng dụng cần thiết cho hoạt động kinh doanh của mình và nhà cung cấp sử dụng Thành phần cung cấp thông tin cho các ứng dụng này. Chúng giao tiếp thông qua một tập hợp các Dịch vụ sử dụng một kiến ​​trúc chung.


nhập mô tả hình ảnh ở đây


Sự tương tự
Hãy tưởng tượng một ngôi nhà ở vùng nông thôn, theo nhiều cách là một phần của một cộng đồng lớn hơn, như một thành phố hoặc thị trấn. Thành phố có các hệ thống phức hợp riêng để cung cấp nước và điện, xử lý vệ sinh, cung cấp giao thông và các tiện ích khác. Các nhà là người tiêu dùng trong mô hình này, các thành phố (hoặc cộng đồng) là nhà cung cấp và các đường ống, cống, đường dây điện, sợi quang học vv là những cơ sở hạ tầng , trong đó họ giao tiếp.

Mô hình này có thể được so sánh một cách lỏng lẻo với một SOA. Những người trong nhà sử dụng một số "ứng dụng" khác nhau như bộ tản nhiệt, máy tính, nhà vệ sinh, đèn, hệ thống sưởi dưới sàn, bồn tắm, v.v. Những ứng dụng này không quan tâm đến cách thành phố tạo ra nước, tạo ra điện hay xử lý chất thải miễn là khi nó hoạt động. Các thành phần của thành phố là máy phát điện, máy bơm nước và khu vệ sinh. Nó cung cấp cho ngôi nhà tất cả những nhu cầu này nhưng tùy thuộc vào ngôi nhà để sử dụng nó theo cách nào mà nó thấy phù hợp.

Tôi hy vọng điều này cho ít nhất ai đó một bức tranh tốt hơn về SOA.


27

Giả sử bạn có bốn đầu bếp. Trong SOA, bạn cho rằng họ ghét nhau, vì vậy bạn cố gắng để họ phải nói chuyện với nhau càng ít càng tốt.

Làm thế nào để bạn làm điều đó? Vâng, trước tiên bạn sẽ xác định vai trò và giao diện - đầu bếp 1 sẽ làm salad, đầu bếp 2 sẽ làm súp, đầu bếp 3 sẽ làm bít tết, v.v. Sau đó, bạn sẽ đặt các món ăn được sắp xếp hợp lý trên bàn (vì vậy đây là ) và nói, "Mọi người vui lòng đặt sáng tạo của bạn vào các món ăn được giao. Đừng quan tâm đến bất kỳ ai khác.".

Bằng cách này, bốn đầu bếp phải nói chuyện với nhau ít nhất có thể, điều này rất tốt trong việc phát triển phần mềm - không nhất thiết vì họ ghét nhau, mà vì những lý do khác như vị trí thực tế, hiệu quả trong việc đưa ra quyết định, v.v.

Nó cũng có nghĩa là bạn có thể tổng hợp lại các món ăn (dịch vụ) theo ý muốn. Ví dụ: bạn có thể chỉ dùng món tráng miệng để phục vụ một quán cà phê hoặc chỉ lấy súp và kết hợp với bánh mì bạn mua từ một công ty khác để cung cấp thực đơn rẻ hơn hoặc để các nhà hàng khác sử dụng món salad của bạn để kết hợp với các món ăn của họ, v.v. .

Một trong những triển khai thành công nhất của SOA là tại Amazon. Do thiết kế của họ, họ có thể đóng gói lại toàn bộ cơ sở hạ tầng của mình và bán nó dưới dạng Amazon Web Service.

* Đây chỉ là một khía cạnh của SOA.


17

SOA là một phong cách kiến ​​trúc nhưng cũng là một tầm nhìn về cách ứng dụng không đồng nhất nên được phát triển và tích hợp. Mục đích chính của SOA là chuyển khỏi các ứng dụng nguyên khối và thay vào đó là một tập hợp các dịch vụ có thể tái sử dụng có thể được cấu tạo để xây dựng các ứng dụng.

IMHO, SOA chỉ có ý nghĩa ở cấp doanh nghiệp và không có ý nghĩa gì đối với một ứng dụng duy nhất.

Trong nhiều doanh nghiệp, mỗi bộ phận có một bộ ứng dụng doanh nghiệp riêng, ngụ ý

  1. Tính năng tương tự đã được triển khai nhiều lần

  2. Dữ liệu (ví dụ: dữ liệu khách hàng hoặc nhân viên) cần được chia sẻ giữa một số ứng dụng

  3. Các ứng dụng tập trung vào bộ phận.

Với SOA, ý tưởng là cung cấp các dịch vụ có thể tái sử dụng trong toàn doanh nghiệp, để ứng dụng có thể được xây dựng và cấu thành từ chúng. Lời hứa của SOA là

  1. Không cần thực hiện lặp đi lặp lại các tính năng tương tự (ví dụ: cung cấp dịch vụ cho khách hàng hoặc nhân viên)

  2. Tạo điều kiện tích hợp các ứng dụng với nhau và truy cập vào dữ liệu hoặc tính năng chung

  3. Nỗ lực phát triển lấy doanh nghiệp làm trung tâm.

Tầm nhìn SOA đòi hỏi sự thay đổi công nghệ cũng như sự thay đổi về tổ chức . Trong khi nó giải quyết một số vấn đề, nó cũng giới thiệu một số vấn đề khác, ví dụ như bảo mật khó hơn nhiều với SOA với ứng dụng nguyên khối. Vì vậy SOA là đối tượng để thảo luận về việc nó có hoạt động hay không.

Đây là góc nhìn 1000ft của SOA. Tuy nhiên, nó không dừng lại ở đây. Có các khái niệm khác bổ sung cho SOA như điều phối quy trình kinh doanh (BPM), bus dịch vụ doanh nghiệp (ESB), xử lý sự kiện phức tạp (CEP), v.v. Tất cả đều giải quyết vấn đề về CNTT / điều chỉnh kinh doanh , tức là làm thế nào để có CNTT có thể hỗ trợ công việc kinh doanh một cách hiệu quả.


1
có, nhưng người khác muốn bạn mua hoặc sử dụng nguyên khối của họ để kiểm soát mọi thứ như Oracle SOA hoặc sử dụng Microsoft WCF. Sẽ không luôn luôn có một nguyên khối?
johnny

WCF và Oracle SOA là các phụ thuộc công nghệ không liên quan đến giải pháp SOA. Khái niệm này dựa trên các dịch vụ độc lập dễ bảo trì chứ không phải một số công nghệ cụ thể.
BentOnCoding

4
+1 vì đã đề cập đến ý nghĩa 'lớn' cấp tổ chức của SOA. Nhiều câu trả lời khác tập trung vào khía cạnh thành phần phần mềm, mà nói một cách chính xác không phải là toàn bộ bức tranh (ngay cả khi đó là ý nghĩa mà mọi người sử dụng rất nhiều thời gian).
Occulus

10

SOA là từ viết tắt của Service Oriented Architecture.

SOA đang thiết kế và viết các ứng dụng phần mềm theo cách mà các mô-đun phần mềm riêng biệt có thể được tích hợp liền mạch với khả năng tái sử dụng cao.

Hầu hết mọi người hạn chế SOA như viết phần mềm máy khách / máy chủ-dịch vụ web. Nhưng đó là bối cảnh quá nhỏ của SOA. SOA lớn hơn thế nhiều và trong vài năm qua, dịch vụ web là phương tiện thông dụng chính, đó có lẽ là lý do tại sao mọi người nghĩ SOA là dịch vụ web nói chung hạn chế ranh giới và ý nghĩa của SOA.

Bạn có thể nghĩ đến việc viết một mô-đun truy cập cơ sở dữ liệu độc lập đến mức nó có thể tự hoạt động mà không cần bất kỳ sự phụ thuộc nào. Mô-đun này có thể hiển thị các lớp có thể được sử dụng bởi bất kỳ phần mềm máy chủ nào cần truy cập cơ sở dữ liệu. Không có cấu hình khởi động trong ứng dụng máy chủ. Bất cứ điều gì cần thiết hoặc được yêu cầu đều được truyền đạt thông qua các lớp được mô-đun truy cập cơ sở dữ liệu hiển thị. Chúng ta có thể gọi các lớp này là dịch vụ và coi mô-đun là dịch vụ được kích hoạt.

Thực hành SOA mang lại khả năng tái sử dụng ở mức độ cao bằng cách thực thi DRY [Đừng lặp lại bản thân], điều này dẫn đến phần mềm có khả năng bảo trì cao. Khả năng bảo trì là điều đầu tiên mà bất kỳ kiến ​​trúc phần mềm nào nghĩ đến - SOA cung cấp cho bạn điều đó.


6

Theo như tôi hiểu, khái niệm cơ bản ở đó là bạn tạo ra các "dịch vụ" nhỏ để cung cấp thứ gì đó hữu ích cho các hệ thống khác và tránh xây dựng các hệ thống lớn có xu hướng làm mọi thứ bên trong hệ thống.

Vì vậy, bạn xác định một giao thức mà bạn sẽ sử dụng để tương tác (giả sử, đó có thể là các dịch vụ web SOAP) và để "hệ thống-điều-đó-một-việc-kinh-doanh" của bạn tương tác với các dịch vụ nhỏ để đạt được "mục tiêu lớn" của bạn .


2
Xin đừng đoán ở câu hỏi kiến ​​trúc. Stackoverflow là nơi để nhận câu trả lời của Chuyên gia, không phải là phỏng đoán ngẫu nhiên từ một bài báo bạn đã xem qua năm ngoái. Thật đáng buồn khi câu trả lời này nhận được bất kỳ phiếu bầu nào.
BentOnCoding

5

Tôi khuyên bạn nên đọc các bài báo của Thomas Erl và Roger Sessions, điều này sẽ giúp bạn nắm chắc hơn về SOA là gì. Đây cũng là những nguồn tốt, hãy xem SOA đã giải thích cho sếp của bạn một cái để biết một lời giải thích cho giáo dân

Xây dựng SOA

Mẫu thiết kế SOA

Đạt được tính toàn vẹn trong SOA

Tại sao SOA của bạn phải giống như một con bọ VW

SOA giải thích cho sếp của bạn

Hiệu suất Dịch vụ WCF


4

Điều có xu hướng xảy ra trong các tổ chức lớn là theo thời gian, mọi thứ đều là các hệ thống nguyên khối hoặc khác biệt ở khắp mọi nơi hoặc một ít của cả hai. Cuối cùng có người bước vào và nói rằng chúng tôi có một mớ hỗn độn. Bây giờ, bạn muốn thiết kế lại (tiền cho ai đó) mọi thứ được định hướng theo kiểu đơn nguyên khối tùy thuộc vào người bạn trả mô hình nhưng đồng thời có thể thêm các mảnh và bộ phận độc lập với bản chính / nguyên khối.

Vì vậy, bạn mua SOA của Oracle và Oracle trở thành ông chủ của tất cả các bộ phận của bạn. Tất cả những người chơi khác tham gia phải làm việc với SOA thông qua một dịch vụ (dịch vụ web hoặc bất kỳ dịch vụ nào mà nó có.) Khối nguyên khối Oracle đảm nhận mọi thứ (nguyên khối không có nghĩa là xúc phạm). Ồ đúng rồi, bạn có ASP.NET MVC ở mặt trước hoặc thứ gì khác.

điều chính là di chuyển mọi thứ vào và ra khỏi hệ thống của chúng mà không bị ảnh hưởng và giữ nhà cung cấp Oracle SOA, Microsoft WCF, là bộ não của tất cả. mọi thứ đều giống như linh hoạt, linh hoạt, mọi thứ di chuyển vào và ra với ít hoặc không có tác động, ngay cả các dịch vụ con người, không chỉ máy tính.

Đối với tôi, nó chỉ có nghĩa là một loạt các dịch vụ web (hoặc bất cứ thứ gì chúng ta gọi chúng trong tương lai) với giao diện người dùng tốt. Và nếu bạn sở hữu cơ sở dữ liệu chỉ cần nhấn vào cơ sở dữ liệu và ngừng lo lắng về từ thông dụng. không sao đâu.



3

Bạn thấy đấy .. SOA là viết tắt của Service Oriented Architecture .... Nói một cách đơn giản nhất, bạn viết một đoạn mã rất chung chung, tức là nó thực hiện một số việc có thể được sử dụng trong rất nhiều ứng dụng ... có thể là một cái gì đó như một sổ địa chỉ hoặc có thể là một máy tính. và bạn khởi chạy mã này trên IIS. Vì vậy, bạn cung cấp một dịch vụ thông qua mã của bạn. Vì vậy, bạn là một nhà cung cấp dịch vụ. Bây giờ ai đó muốn sử dụng một mã tương tự thì anh ta không phải viết lại mã. Anh ấy chỉ đơn giản sử dụng mã của bạn có thể thông qua một dịch vụ web. Do đó anh ta trở thành người tiêu dùng dịch vụ. Do đó, việc tạo một chương trình sử dụng các dịch vụ như vậy được gọi là SOA. Và sự kết hợp lỏng lẻo ở đó vì nhà cung cấp dịch vụ và người tiêu dùng có thể tương tác ngay cả khi họ đang sử dụng các ngôn ngữ lập trình khác nhau. Mong là bạn hiểu.


3

từ các blog ittoolbox.

Sau đây phác thảo những điểm giống và khác nhau đối với các kỹ thuật thiết kế trước đây:

• SOA so với Lập trình có cấu trúc o Điểm giống nhau: Giống nhất với các lệnh gọi chương trình con trong đó các tham số được truyền và hoạt động của hàm được trừu tượng hóa từ trình gọi - ví dụ: liên kết và thực thi CICS và từ dành riêng COBOL CALL. Các bản sao được sử dụng để xác định cấu trúc dữ liệu thường được định nghĩa như một lược đồ XML cho các dịch vụ. o Sự khác biệt: SOA được kết hợp lỏng lẻo ngụ ý rằng những thay đổi đối với dịch vụ sẽ ít ảnh hưởng hơn đến người tiêu dùng (chương trình "gọi điện") và các dịch vụ có thể tương tác giữa các ngôn ngữ và nền tảng.

• SOA so với OOA / OOD o Sự giống nhau: Đóng gói, Trừu tượng hóa và Giao diện xác định o Sự khác biệt: SOA được kết hợp lỏng lẻo mà không có phân cấp hoặc kế thừa lớp, Tính trừu tượng mức thấp - mức lớp so với dịch vụ kinh doanh

• SOA so với phát triển dựa trên thành phần kế thừa (CBD) - ví dụ: CORBA, DCOM, EJB o Điểm giống nhau: Tái sử dụng thông qua việc lắp ráp các thành phần, Giao diện, Cuộc gọi từ xa o Sự khác biệt: Áp dụng rộng rãi các tiêu chuẩn, Lược đồ XML so với Đối tượng Marshaled, Điều phối dịch vụ, Thiết kế để sử dụng lại dễ dàng hơn, các dịch vụ tập trung vào kinh doanh so với tập trung vào CNTT, các dịch vụ kinh doanh tất nhiên là chi tiết (phạm vi rộng)

• SOA (để tích hợp) so với Tích hợp ứng dụng doanh nghiệp (EAI) o Điểm giống nhau: Các phương pháp hay nhất (giao diện được xác định rõ, lược đồ chuẩn hóa, kiến ​​trúc hướng sự kiện), giao diện có thể sử dụng lại, lược đồ chung o Sự khác biệt: Tiêu chuẩn, áp dụng và các công cụ cải tiến


3

Đọc các phản hồi ở trên, tôi thấy rằng SOA là điều mà các nhà phát triển (ít nhất là những người giỏi) đã làm từ ngày đầu tiên.


2

Nó cũng có thể là viết tắt của "Struct of Arrays" (trái ngược với "Array of Structs") là một chủ đề phổ biến trong lập trình song song (đặc biệt là SIMD), nhưng tôi đoán đó không phải là ý của bạn ở đây!


Chút phản đối gay gắt mà không có bình luận !!
Tom

2
@Downvoters: Câu hỏi không thực sự đưa ra đủ ngữ cảnh để chứng minh câu trả lời của Toms phản đối. Chỉ vì mọi người khác bị tê liệt bởi thuật ngữ SOA trong bối cảnh kiến ​​trúc dịch vụ không làm cho điều này sai.
Sebastian Mach

1
@phresnel Thẻ này thật tuyệt và nếu bạn có thể di chuột qua đó trong giây lát, bạn sẽ thấy mô tả rõ ràng về ngữ cảnh của quesiton.
BentOnCoding

4
@Robotsushi: Và nếu bạn có thể nghiên cứu thẻ trong giây lát, bạn có thể thấy rằng mô tả đã được thêm vào hơn một năm sau câu trả lời của Toms.
Sebastian Mach

Tôi nghĩ nếu bạn không chắc về ngữ cảnh của một câu hỏi thì bạn không thể đưa ra câu trả lời của chuyên gia. Một câu hỏi đơn giản trong bình luận liên quan đến bản chất của câu hỏi sẽ nhanh chóng giải đáp được bí ẩn này.
BentOnCoding

2

SOA là một từ thông dụng được các nhà cung cấp công nghệ phát minh để giúp bán các công nghệ liên quan đến Xe buýt Dịch vụ Doanh nghiệp của họ. Ý tưởng là bạn làm cho các ứng dụng đảo nhỏ của mình trong doanh nghiệp (ví dụ: hệ thống kế toán, hệ thống kiểm soát chứng khoán, v.v.) tất cả đều thể hiện các dịch vụ, để chúng có thể được sắp xếp linh hoạt thành 'ứng dụng', hoặc đúng hơn là trở thành một phần của hoạt động kinh doanh có phạm vi doanh nghiệp tổng hợp Hợp lý.

Về cơ bản là một đống đồ cũ gần như không bao giờ hoạt động, bởi vì nó bỏ sót điểm rằng lý do tại sao công nghệ là cách nó hoạt động trong một tổ chức là phụ thuộc vào văn hóa, sự tiến hóa, lịch sử của công ty và mức độ chốt giữ cao đến mức bất kỳ nỗ lực tái cấu trúc công nghệ chắc chắn sẽ thất bại.


1

Hãy nghe ấn bản tuần này của podcast Floss Weekly , bao gồm SOA. Các mô tả ở cấp độ khá cao và không đi sâu vào quá nhiều chi tiết kỹ thuật (mặc dù các ví dụ cụ thể và dễ nhận biết hơn về các dự án SOA sẽ rất hữu ích.


1

Một kiến ​​trúc ứng dụng truyền thống là:

  • Một giao diện người dùng
  • Nội dung không xác định (triển khai) được đóng gói / ẩn đằng sau giao diện người dùng

Nếu bạn muốn truy cập dữ liệu theo chương trình, bạn có thể cần sử dụng đến phương pháp quét màn hình.

SOA đối với tôi dường như là một kiến ​​trúc tập trung vào việc hiển thị dữ liệu và / hoặc API có thể đọc được của máy, thay vì hiển thị giao diện người dùng.


1

SOA hoặc Kiến trúc hướng dịch vụ là một mẫu kiến ​​trúc phần mềm trong đó các ứng dụng hoặc hệ thống được xây dựng từ các dịch vụ phần mềm cơ bản (và thường được phân phối) tuân theo một tập hợp các đặc điểm cụ thể, cụ thể là:

  1. Giao diện, Chính sách và dựa trên Hợp đồng
  2. Vị trí minh bạch
  3. Tự trị
  4. trừu tượng
  5. Có thể tái sử dụng
  6. Có thể dùng một lần
  7. Không quốc tịch
  8. Có thể khám phá
  9. Có thể mở rộng
  10. Kết hợp lỏng lẻo

Mục tiêu chính của SOA là sự nhanh nhẹn trong phát triển phần mềm, tức là khả năng đáp ứng sự thay đổi một cách dễ dàng và rẻ, do đó cho phép các doanh nghiệp nhanh chóng phản ứng với thị trường đang thay đổi.

Các dịch vụ thường (nhưng không phải là dành riêng) được triển khai dưới dạng dịch vụ web, tức là chúng hoạt động trên giao thức web HTTP phổ biến và được triển khai bằng cách sử dụng SOAP dựa trên XML hoặc mô hình REST nhẹ (và phổ biến hơn).


1

Phụ thuộc vào bạn là ai!

Nếu bạn là chủ doanh nghiệp, SOA là một giải pháp để tăng thu nhập và sự nhanh nhạy trong kinh doanh của bạn. Nếu bạn là một kiến ​​trúc sư chuyên nghiệp, SOA là một cách để vẽ phần mềm đẹp và sạch sẽ trên một khung vẽ trống. Nếu bạn là một kiến ​​trúc sư, SOA là giải pháp để thiết kế các dịch vụ được kết hợp lỏng lẻo trên một nền tảng tích hợp, để chỉ cần cắm các dịch vụ vào các cửa hàng. Nếu bạn là một nhà phát triển, SOA là một mô hình lập trình nơi dịch vụ nằm ở trung tâm của thiết kế và mã.

Bạn nên đọc 100 câu hỏi SOA [pdf]

Chúc mừng


1

Kiến trúc hướng dịch vụ (SOA) là một phong cách kiến ​​trúc phần mềm xây dựng các ứng dụng như một tập hợp các phần có thể cắm được, mỗi phần trong số đó có thể được sử dụng lại bởi các ứng dụng khác.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.