Năm 2005 được dự đoán là năm bùng nổ của dịch vụ Web. Nhưng người ta cũng tự hỏi liệu cái công nghệ với mục đích ban đầu là đơn giản hóa công việc lập trình này có làm phức tạp hóa mọi việc lên hay không?
Một cuộc tranh luận đang rộ lên gay gắt xung quanh việc các chuẩn kiểu như Ngôn Ngữ đánh dấu mở rộng (XML), đã phát triển vượt quá tầm kiểm soát của con người hay chưa. Những người bảo vệ dịch vụ Web thì nói rằng, cần có các chuẩn dịch vụ ngày càng hiện đại để đảm bảo cấu trúc máy tính mới đủ linh động và tương thích được với các ứng dụng vừa "sành điệu" lại vừa có kích thước "nhỏ, nhỏ nữa". Còn phe phản đối thì cũng có lập luận của riêng mình khi cho rằng, các phương pháp phát triển ứng dụng càng đơn giản càng tốt, vì nếu dịch vụ Web phức tạp thì làm sao người ta sử dụng chúng để xây dựng nên những chương trình đơn giản?
Giọt nước làm tràn ly cho sự chịu đựng của những người ưa thích sự đơn giản là một chuẩn công nghệ có tên REST, hay Representational State Transfer (Trạng thái truyền đại diện). Phương pháp này cho phép xây dựng các ứng dụng bằng cách gửi tài liệu XML qua các IP hiện hành. Các nhà lập trình cũng có thể phát triển ứng dụng từ các công cụ và cơ sở hạ tầng sẵn có mà đáng chú ý nhất là HTTP (Giao thức truyền siêu văn bản). Nhưng thay vì làm người ta được "nghỉ ngơi", nó lại khiến giới lập trình ...khóc thét vì sự phức tạp, rối rắm và cực khó sử dụng.
Cuộc tranh luận kéo dài nói trên còn lôi vào cuộc cả một số bậc cây đa cây đề được tôn vinh là cha đẻ kỹ thuật của dịch vụ Web. Tim Bray, người đồng phát minh ra XML và giám đốc công nghệ Web tại Sun Microsystems gần đây có tuyên bố rằng, càng chuẩn dịch vụ Web đã trở nên "Tối tăm, "phì nộn" và phức tạp không thể chấp nhận được".
Lúc này, vấn đề chơi vơi nhất là liệu người tiêu dùng có còn chịu bỏ tiền ra đầu tư cho các phần mềm dịch vụ Web mới hay không? Họ sẽ mất bao lâu để đưa ra quyết định thay thế các phương pháp lập trình ứng dụng kinh doanh có dây kiểu cũ bằng những hệ thống điện toán không dây hiện đại? Các nhà nghiên cứu tại Radacati Group tuần trước có dự đoán rằng, thị trường phần mềm và dịch vụ Web sẽ bùng nổ từ mức 950 triệu USD hồi năm ngoái lên con số 6,2 tỷ USD sau bốn năm nữa.
Đơn giản là nhất là hiệu quả nhất, nhưng...
Biểu đồ dịch vụ WEb thế giới trong năm 2004. |
Thuật ngữ "Dịch vụ Web" bắt đầu nổi lên cách đây khoảng bốn năm, miêu tả một bộ chuẩn phần mềm hoặc blueprint được thiết kế với mục đích giúp đỡ các chương trình không tương thích "giao tiếp" với nhau qua giao thức Internet. Các đại gia như IBM, Microsoft và một số hãng khác đồng ý hậu thuẫn cho dịch vụ Web, thay vì theo đuổi việc cung cấp các phần mềm tương thích như họ từng làm trong quá khứ.
Trong một nỗ lực nhằm bảo đảm các hệ thống sử dụng dịch vụ Web cũng đáng tin cậy như các hệ thống máy tính cũ, nhưng linh hoạt và cơ động hơn nhiều, các doanh nghiệp đã bổ sung thêm vào bộ chuẩn dịch vụ Web gốc ban đầu một loạt chuẩn mở rộng. Những hãng cung cấp phần mềm cơ sở hạ tầng như IBM, Microsoft, BEA Systems, Oracle... đã tạo ra nhiều chuẩn mới để nâng cao tính bảo mật, độ tin cậy và nhiều tính năng khác trên nền giao thức dịch vụ Web cơ bản. Đáng chú ý nhất là SOAP (Giao thức truy cập mục tiêu đơn giản) và WSDL (Ngôn ngữ mô tả dịch vụ Web).
Quá trình phát triển rầm rộ của các chuẩn mở rộng này đã khiến không ít người "thất kinh". Họ cho rằng, các nhà lập trình và khách hàng của họ không thể ngốn được từng ấy chuẩn mới ồ ạt dội đến. Tính đến thời điểm hiện nay đã có hơn 30 chuẩn, đi kèm với chúng là hàng trăm trang chỉ dẫn kỹ thuật. IBM và Microsoft thậm chí còn cổ vũ mạnh mẽ cho công tác phát triển và công bố nhiều chuẩn trong số đó.
Mối quan ngại về mức độ phức tạp đến phi lý của dịch vụ Web như được "đổ thêm dầu" trong mấy tuần gần đây với sự góp mặt của ba chuẩn mới: WS-Transfer và WS-Enumeration, hai giao thức cho phép nhà phát triển kiểm soát sự truyền dữ liệu giữa hai chương trình, và WS-MetaData-Exchange cung cấp cơ chế chia sẻ thông tin về các khả năng của từng dịch vụ Web khác nhau.
Nhiều nhà lập trình cũng chia sẻ nỗi lo ngại này với Bray. Thay vì è cổ học cách sử dụng các chuẩn mới nhất để xây dựng phần mềm bảo mật, một số người tuyên bố : chỉ cần gửi tài liệu dạng XML qua giao thức Internet hiện hành đã là quá đủ. Đơn giản nhất là hiệu quả nhất.
Đó cũng là cách hành xử của không ít khách hàng tập đoàn đối với sự bùng nổ của công nghệ dịch vụ Web và chuẩn hóa. Nhiều hãng đã kiên quyết bám chặt lấy giao thức dịch vụ Web cơ bản nhất chứ nhất định không thèm để mắt tới những chuẩn mở rộng mới nhất. "Việc quá tập trung vào sự không tương thích là một sai lầm. Rất nhiều thứ đã được đặt đúng chỗ của nó".
... Lựa chọn thế nào đây?
Amazon.com, một trong số ít những thành công với dịch vụ Web của REST. |
Những người ủng hộ REST tất nhiên cũng có lý lẽ riêng của mình. Họ cho rằng với REST, giới lập trình có thể thiết lập sự "giao tiếp" giữa các ứng dụng như dịch vụ Web luôn hứa hẹn. Một trong những dịch vụ Web sử dụng REST thành công nhất chính là của Amazon.com, khi hãng này cho phép các nhà lập trình sử dụng dịch vụ của Amazon trong những ứng dụng thương mại điện tử.
Song rõ ràng là REST có nhiều hạn chế. Trước hết, việc tích hợp các ứng dụng doanh nghiệp cồng kềnh đòi hỏi một giao thức và các phương pháp tiếp cận hiện đại hơn, tức là yêu cầu đầu tư thêm nữa cho cơ sở hạ tầng chung. REST có thể tạo ra hiệu quả tốt hơn trong các môi trường cô lập, song nếu mở rộng ra toàn bộ môi trường Web, nơi tính liên thông giữa các sản phẩm từ các doanh nghiệp khác nhau là mục đích cuối cùng thì REST không thể. "Bạn có thể phát triển bất cứ thứ gì bạn muốn rồi tối ưu hóa nó đằng sau tường lửa của mình. Nhưng nếu bạn muốn có được sự liên thông, bạn phải thỏa hiệp. Không phải là tối ưu hóa mà là các công ty phải thoả hiệp với nhau, phải cùng nhau tìm một tiếng nói chung cho sản phẩm của họ", giới phân tích cho biết.
Trong khi phức tạp như vậy, nhưng những vấn đề gai góc nhất của máy tính hiện đại là bảo mật, tin nhắn tin cậy và tự động hóa quá trình kinh doanh lại không được REST thực hiện theo cách chuẩn.
Randy Heffner, nhà phân tích tại Forrester Research nhấn mạnh rằng REST có thể phù hợp với các ứng dụng tương đối đơn giản. Song nếu các tập đoàn muốn gặt hái được lợi ích từ một cấu trúc hệ thống cơ động thì họ nên ứng dụng những dịch vụ Web được xây dựng trên nền SOAP.
-
Cầm Thi (Theo CNET)