Kết nối tới đám mây, Phần 2: Thực hiện mô hình đám mây lai

Kéo dữ liệu hàng đợi JMS sang hàng đợi SQS của Amazon

Đây là phần 2 của loạt bài viết gồm ba phần về kết nối đến đám mây. Để xác định giải pháp tốt nhất để tạo ra ứng dụng điện toán đám mây lai, phần 1 đã xem xét một số các sản phẩm chào hàng của các nhà cung cấp nền tảng điện toán đám mây chính. Trong bài viết này, phần 2 của loạt bài viết, bạn sẽ thực hiện ứng dụng điện toán đám mây lai, ứng dụng này kết hợp các thành phần ứng dụng cục bộ với điện toán đám mây. Ứng dụng này sử dụng hàng đợi JMS tại máy chủ cục bộ cũng như hàng đợi SQS trong đám mây, sau đó kết hợp hai hàng đợi trong ứng dụng lai.

Mark O'Neill, Giám đốc công nghệ, Vordel

Mark O'Neill là giám đốc kỹ thuật (CTO) tại Vordel, một công ty mạng XML. Ông cũng là tác giả của cuốn sách “An ninh dịch vụ web” và là một trong những tác giả của cuốn sách "Củng cố an ninh mạng", cả hai cuốn được nhà xuất bản McGraw-Hill/Osborne Media phát hành. Mark chịu trách nhiệm giám sát lộ trình phát triển sản phẩm của Vordel và cũng tư vấn cho các chính phủ và công ty thuộc danh sách Global 2000 trên toàn thế giới trong chiến thuật và chiến lược để chọn dùng các công nghệ XML, dịch vụ Web và kiến trúc hướng dịch vụ của họ. Ông có bằng về toán học và tâm lý học tại trường Trinity College Dublin và trình độ đại học về lập trình mạng thần kinh tại đại học Oxford. Mark sống ở Boston, Massachusetts.



29 08 2012

Mô hình lai

Đối với bài viết này, tôi tập trung vào việc tạo ra ứng dụng điện toán đám mây lai với một nhà cung cấp điện toán đám mây: Đó là Amazon. Ứng dụng mẫu, được gọi là HybridCloud, lấy dữ liệu từ hàng đợi JMS và chuyển dữ liệu đến hàng đợi SQS của Amazon, được lưu trú trong đám mây Amazon. Một khi đã ở trong hàng đợi SQS của Amazon, dữ liệu có thể được kéo xuống bởi ứng dụng khác có các quyền với hàng đợi đó.

Để hiểu được bối cảnh, ta hãy xem ví dụ. Hãy xem xét một tổ chức y tế yêu cầu xử lý hình ảnh X quang bằng ứng dụng xử lý hình ảnh. Tổ chức y tế ghi một cách an toàn các hình ảnh X quang vào hàng đợi SQS Amazon, nơi chúng được lưu trữ tạm thời. Ngay cả khi kích thước tập tin của mỗi hình ảnh X-quang là rất lớn, nhưng đó không phải là vấn đề đối với nhà cung cấp dịch vụ điện toán đám mây. Cùng lúc đó, ứng dụng xử lý hình ảnh tiêu thụ hàng đợi, đọc hình ảnh X quang khi chúng đã được lưu trữ ở đó. Ứng dụng xử lý hình ảnh, đòi hỏi sức mạnh xử lý đáng kể, phù hợp một cách lý tưởng cho việc triển khai trong môi trường ảo (đám mây riêng tư), ở đây khả năng phần cứng có thể được thêm vào một cách nhanh chóng và dễ dàng. Sau khi xử lý bằng ứng dụng xử lý hình ảnh, hình ảnh X quang được đặt trở lại vào hàng đợi khác, được ứng dụng y tế nhận trở lại. Mặc dù hình ảnh X quang là đối tượng của ví dụ này, có thể sử dụng bất kỳ dữ liệu nào. Rõ ràng là hình ảnh X quang đưa ra các vấn đề an ninh và riêng tư quan trọng. Phần 3 của loạt bài viết này sẽ nghiên cứu tính bảo mật và quản trị cho đám mây.

Các từ viết tắt thường được sử dụng

  • FTP (File Transfer Protocol): Giao thức chuyển tải tệp tin
  • API (Application Programming Interface): Giao diện lập trình ứng dụng
  • HTTP (Hypertext Transfer Protocol): Giao thức chuyển tải siêu văn bản
  • JMS (Java Message Service): Dịch vụ tin nhắn Java
  • JNDI (Java Naming and Directory Interface): Giao diện định danh và thư mục Java
  • REST (Representational State Transfer): Chuyển tải trạng thái đại diện
  • SQS (Simple Queue Service): Dịch vụ hàng đợi đơn giản
  • URL (Uniform Resource Locator): Vị trí tài nguyên thống nhất
  • XML (Extensible Markup Language) Ngôn ngữ đánh dấu có thể mở rộng được

Những lợi thế của kiến trúc này bao gồm:

  • Hệ thống không dựa vào các trình ghi hàng đợi (ứng dụng y tế) hoặc trình đọc hàng đợi (ứng dụng xử lý hình ảnh) đang trực tuyến cùng một lúc. Nếu các tập tin được chuyển giao bằng FTP một cách đơn giản giữa hai ứng dụng, hệ thống ngừng hoạt động nếu một trong hai bên không kết nối với mạng. Bằng cách sử dụng hàng đợi SQS của Amazon, hệ thống có tính chất co dãn.
  • Có thể thêm khả năng cho bất cứ bên nào của giải pháp, mà không ảnh hưởng đến hoạt động của toàn thể hệ thống. Ví dụ: Bạn có thể làm tăng khả năng tính toán về phía ứng dụng xử lý hình ảnh, ứng dụng này sau đó có thể tăng gấp đôi tốc độ xử lý hình ảnh. Sự thay đổi này là trong suốt đối với các ứng dụng y tế, vẫn tiếp tục ghi các tập tin hình ảnh X quang của chúng vào hàng đợi SQS của Amazon.
  • Mô hình lai này là mô hình được khuyến cáo rộng rãi cho các kiến trúc sư đang xem xét việc sử dụng điện toán đám mây. Thay vì giải pháp tất cả hoặc không gì hết, nghĩa là hoặc chuyển mọi thứ vào nền tảng điện toán đám mây, hoặc hoàn toàn chê bai điện toán đám mây, lựa chọn tốt hơn là chọn những gì hữu ích của điện toán đám mây và sử dụng nó có chiến thuật. Đối với ứng dụng cục bộ, việc ảo hóa (đám mây tư nhân) làm cho nó trở nên tương đối dễ dàng để thêm khả năng một cách động, điều này quan trọng cho các ứng dụng cần xử lý nhiều như xử lý hình ảnh. Đối với đám mây, dịch vụ SQS của Amazon cung cấp dịch vụ hàng đợi giữa các ứng dụng, ngay cả khi chúng không được kết nối tới mạng.

Tự nhận dạng đến dịch vụ đám mây của SQS của Amazon

Ứng dụng Java HybridCloud của bạn sử dụng SQS của Amazon (xem phần Tải về để có mã nguồn ứng dụng). Kết nối từ ứng dụng HybridCloud lên đám mây SQS của Amazon sử dụng các dịch vụ Web, các dịch vụ này được xác thực. Có hai lý do chính cho xác thực này: Đầu tiên, Amazon tính phí cho việc sử dụng SQS của Amazon, và do đó phải theo dõi việc sử dụng cá nhân, thứ hai: Truy cập vào hàng đợi cá nhân phải được kiểm soát. Trong trường hợp ứng dụng HybridCloud của chúng ta, cho các bên thứ ba truy cập vào hàng đợi SQS của Amazon có chứa hình ảnh X quang cá nhân rõ ràng là không thích hợp.

Bước đầu tiên để sử dụng hàng đợi SQS của Amazon là trở thành người sử dụng dịch vụ web của Amazon (AWS), việc này yêu cầu đăng nhập vào trang Amazon.com. Người sở hữu đăng nhập vào Amazon.com là bất kỳ ai đã từng mua sách trên trang web Amazon.com đã đăng nhập vào trang web Amazon.com. Tuy nhiên, việc đăng nhập vào Amazon.com chỉ là bước đầu tiên. Các dịch vụ web Amazon đòi hỏi có "ID của khóa truy cập" và một khóa bí mật liên quan.

Chìa khóa truy cập bí mật trong mô hình của các dịch vụ web Amazon có thể hiểu là bí mật được chia sẻ giữa Amazon.com và nhà phát triển người kết nối tới dịch vụ web của Amazon. Ngược lại, ID của khóa truy cập không phải là bí mật, vì nó được sử dụng để nhận biết chứ không phải để xác thực. Trong phần 3, bạn sẽ nghiên cứu hai khóa này chi tiết hơn, cũng như mô hình xác thực thay thế được sử dụng bởi các nhà cung cấp dịch vụ điện toán đám mây khác.

Một khi nhà phát triển đã đăng ký với dịch vụ web của Amazon và nhận được ID của khóa truy cập của họ và khóa truy cập bí mật của họ, họ có thể đăng ký thuê bao các dịch vụ cụ thể. Trong trường hợp này, chúng ta sẽ đăng ký dịch vụ SQS của Amazon.com. Nhà phát triển phải đăng ký thẻ tín dụng với công ty dịch vụ web Amazon để sử dụng các dịch vụ như SQS. Các chi tiết thẻ tín dụng phải được lưu trữ tại Amazon, các chi tiết này không thể chỉ đơn giản là được nhập vào khi phiếu thanh toán đến hạn – Đây là mô hình “Dùng bao nhiêu trả tiền bấy nhiêu (pay-as-you-go)”. Nếu bạn cố gắng truy cập dịch vụ SQS mà không có đăng ký trước dịch vụ này, bạn sẽ bị từ chối với dòng chữ "Id của chìa khoá truy cập dịch vụ web của Amazon cần thuê bao dịch vụ".


Thiết kế ứng dụng lai của bạn

Như được mô tả tại phần trên, ứng dụng lai xử lý dữ liệu tại máy tính cục bộ và sử dụng dịch vụ điện toán đám mây SQS của Amazon. Vì vậy, nó có thành phần cục bộ và thành phần đám mây. Trong thiết kế ứng dụng này, dữ liệu được lấy ra tại máy cục bộ từ hàng đợi JMS (có lẽ từ ứng dụng máy tính lớn) và sau đó được gửi đến hàng đợi SQS của Amazon bằng cách sử dụng HTTP GET và POST. Bạn sẽ sử dụng Java là ngôn ngữ của ứng dụng của bạn.

Ứng dụng này có ba phần chính:

  1. Tạo hàng đợi SQS của Amazon.
  2. Đọc dữ liệu cục bộ (từ hàng đợi JMS) và đưa nó lên hàng đợi SQS của Amazon.
  3. Lấy ra dữ liệu đáp ứng từ hàng đợi SQS của Amazon.

Trong các đoạn mã cho ứng dụng tại phần Sử dụng SQS của Amazon, hãy lưu ý sự tương đồng giữa việc xử lý kết nối đến hàng đợi JMS cục bộ và kết nối đến hàng đợi SQS của Amazon.


Sử dụng SQS của Amazon

Trong ứng dụng Java HybridCloud của bạn, đầu tiên kéo vào các lớp SQS của Amazon (xem liệt kê 1).

Liệt kê 1. Nhập khẩu các lớp SQS của Amazon
Import com.amazonaws.queue.*;

Ứng dụng HybridCloud sử dụng SQS của Amazon để ghi dữ liệu vào hàng đợi và để sau đó đọc lấy lại dữ liệu từ hàng đợi. Kết nối với SQS của Amazon là thông qua kết nối đến dịch vụ Web được xác thực, nơi mà khách hàng được nhận biết danh tính bằng cách sử dụng ID của khóa truy cập Amazon và được xác thực bằng cách sử dụng ID của khóa bí mật của Amazon. Để sử dụng SQS của Amazon từ mã Java của bạn, trước tiên bạn đưa ID của chía khóa của Amazon Key và ID của chìa bí mật của Amazon vào mã (xem liệt kê 2).

Liệt kê 2. Thiết lập các chìa khóa của Amazon
String accessKeyId = "12345678901234567890";
String secretAccessKey = "abcdefghijklmnopqrstuvwxyz";

Tiếp theo bạn khởi tạo một triển khai thực hiện trình khách HTTP của SQS của Amazon bằng cách chuyển giao ID khóa truy cập và khóa truy cập bí mật như là các biến (xem liệt kê 3).

Liệt kê 3. Khởi tạo trình khách http của SQS của Amazon
AmazonSQS service = new
   AmazonSQSClient(accessKeyId, secretAccessKey);

Tại thời điểm này, bây giờ bạn đã khởi tạo đối tượng trình khách của SQS của Amazon, nhưng bạn chưa kết nối tới dịch vụ SQS của Amazon trên Internet. Đây là bước tiếp theo, trong đó bạn tạo ra hàng đợi trên dịch vụ đám mây của SQS của Amazon.


Tạo hàng đợi SQS của Amazon

Ứng dụng này sử dụng hàng đợi để lưu trữ các tập tin hình ảnh X quang. Trước khi bạn có thể sử dụng hàng đợi SQS của Amazon, bạn phải tạo ra nó. Hàng đợi phải có tên, trong trường hợp này là "imageQueue". Đây là nơi ứng dụng HybridCloud của bạn đặt các tập tin hình ảnh X quang của nó (xem liệt kê 4).

Liệt kê 4. Tạo hàng đợi Amazon
CreateQueueRequest request = new CreateQueueRequest();
request.setQueueName("imageQueue");

Bây giờ bạn chạy phương thức của đối tượng dịch vụ SQS của Amazon được gọi là createQueue, nó tạo ra yêu cầu HTTP GET (kiểu REST) đến dịch vụ web của Amazon để tạo ra hàng đợi của bạn (xem liệt kê 5).

Liệt kê 5. Tạo ra hàng đợi của Amazon
CreateQueueResponse response = service.createQueue(request);

Nó tạo ra cuộc gọi kiểu REST của dịch vụ web trên SQS của Amazon. Khi bạn chạy mã để tạo ra hàng đợi SQS của Amazon, thì rất thú vị khi nghiên cứu URL kiểu REST được gửi đi trên mạng đến SQS của Amazon. Trong URL này, bạn có thể nhìn thấy rõ ID của khóa truy cập, chữ ký (sử dụng ID của khóa bí mật) và hàng đợi SQS thực tế, nó được tạo ra và được gọi là imageQueue. Tất nhiên ID của khóa bí mật không được gửi đi. Thành phần của chữ ký của thông điệp (xem liệt kê 6) cung cấp bằng chứng về sở hữu ID của khóa bí mật. Chỉ có người giữ khóa này có thể tạo ra thành phần chữ ký ấy.

Liệt kê 6. Yêu cầu dịch vụ web kiểu REST được gửi đến các dịch vụ web của Amazon
queue.amazonaws.com?Action=CreateQueue&SignatureMethod=HmacSHA256&AWSAccessKeyId
  =12345678901234567890&QueueName=imageQueue&SignatureVersion=2&Version
  =2008-01-01&Signature=U859J2Hoi5qBqlQx1R18dKPgSgrgjlOiJIDD8ug9FPI%3D&Timestamp
  =2009-04-01T03%3A25%3A13.575Z

Chữ ký được tạo ra không chỉ bằng cách sử dụng tên của hàng đợi, mà nó cũng được tính toán theo dấu thời gian. Điều này đảm bảo rằng yêu cầu đến SQS của Amazon không thể dễ dàng bị kẻ khác sao chép và sử dụng lại, tức là bắt chước các người dùng hợp lệ. Nếu kẻ đó lại gửi yêu cầu đến các dịch vụ SQS của Amazon, việc sử dụng lại chữ ký của kẻ đó chỉ rõ rằng yêu cầu là một cuộc tấn công kiểu bắt giữ và phát lại, và các dịch vụ web của Amazon sẽ ngăn chặn nó.

Tại thời điểm này bạn đã tạo ra hàng đợi imageQueue, là nơi bạn sẽ nạp dữ liệu hình ảnh vào. Bây giờ bạn lấy nguồn dữ liệu từ hàng đợi JMS cục bộ. Hàng đợi cục bộ này, bản thân nó, lại có thể đến từ môi trường ảo hóa (đám mây cục bộ).


Lấy dữ liệu từ hàng đợi JMS cục bộ

Bây giờ bạn đã tạo ra hàng đợi SQS Amazon của mình, hãy chú ý đến các khía cạnh cục bộ của ứng dụng lai này. Bạn phải đọc dữ liệu từ hàng đợi cục bộ, trước khi cấp dữ liệu đến hàng đợi SQS của Amazon. Bạn sẽ học được nhiều khi so sánh các bước áp dụng cho các hàng đợi cục bộ với các bước cần thiết để kết nối với hàng đợi SQS của Amazon.

Các thư viện Java cần thiết được nhập vào, đầu tiên là tất cả các tệp jar của JMS và sau đó là tệp jar của JNDI. Những tệp tin này cho phép ứng dụng Java của bạn sử dụng JMS (xem liệt kê 7).

Liệt kê 7. Nhập khẩu các lớp JMS
import javax.jms.ConnectionFactory; 
import javax.jms.Connection; 
import javax.jms.Session; 
import javax.jms.MessageProducer;
import javax.jms.MessageConsumer; 
import javax.jms.Queue; 
import javax.jms.Session;
import javax.jms.Message; 
import javax.jms.TextMessage; //Required for JNDI. 
import javax.naming.*;

Bạn sử dụng JNDI để thiết lập bối cảnh cho kết nối JMS của mình. Ví dụ: Nếu bạn đọc dữ liệu từ hệ thống tệp tin, bạn có thể sử dụng mã trong liệt kê 8.

Liệt kê 8. Đọc các tệp tin từ hàng đợi cục bộ
ConnectionFactory myConnFactory; 
Queue myQueue;
Hashtable env; 
Context ctx = null; 
env = new Hashtable();
env.put(Context.INITIAL_CONTEXT_FACTORY,
             "com.sun.jndi.fscontext.RefFSContextFactory"); 
env.put(Context.PROVIDER_URL, "file:///C:/Images"); 
ctx = new InitialContext(env);

Bây giờ tạo hàng đợi của bạn và nhà máy sản xuất kết nối (xem liệt kê 9):

Liệt kê 9. Tạo hàng đợi và nhà máy sản xuất kết nối
String MYCONNECTIONFACTORY = "MyConnectionFactory"; 
String MYQUEUE = "MyQueue"; 
myConnFactory = (javax.jms.ConnectionFactory) 
             ctx.lookup(MYCONNECTIONFACTORY); 
myQueue = (javax.jms.Queue)ctx.lookup(MYQUEUE);

Tiếp theo tạo kết nối và sau đó là phiên làm việc trong kết nối (xem liệt kê 10).

Liệt kê 10. Tạo kết nối đến hàng đợi JMS cục bộ
Connection myConn = myConnFactory.createConnection(); 
Session mySess = myConn.createSession(false, Session.AUTO_ACKNOWLEDGE);

Để đọc thông điệp từ hàng đợi (trong trường hợp này rốt cuộc là đọc từ hệ thống tệp tin vì chúng ta sử dụng mã định danh JNDI cho hệ thống tệp tin), sử dụng mã trong liệt kê 11.

Liệt kê 11. Đọc từ một hàng đợi JMS cục bộ
MessageConsumer myMsgConsumer = mySess.createConsumer(myQueue); 
myConn.start(); 
Message msg = myMsgConsumer.receive();

Bây giờ hãy xem xét nội dung của thông điệp mà bạn lấy tại máy tính cục bộ (xem liệt kê 12).

Liệt kê 12. Xem xét nội dung của thông điệp lấy ra tại máy tính cục bộ
if (msg instanceof TextMessage) { 
   TextMessage txtMsg = (TextMessage) msg; 
   String inputText = txtMsg.getText()); 
}

Cuối cùng, đóng kết nối đến hàng đợi JMS (xem liệt kê 13).

Listing 13. Closing the connection to the local JMS queue
mySess.close(); 
myConn.close();

Tại thời điểm này, bạn có dữ liệu mà bạn muốn ghi vào hàng đợi SQS của Amazon trong chuỗi gọi là inputText. Tiếp theo là những gì bạn ghi vào hàng đợi SQS của Amazon.


Ghi vào hàng đợi SQS của Amazon

Dữ liệu được chuyển đến hàng đợi SQS của Amazon được gửi đi như là một chuỗi. Mặc dù dữ liệu của bạn là hình ảnh, nó vẫn được gửi đến SQS của Amazon như là chuỗi ký tự. Bạn thấy nó được thiết lập dưới đây trong đối tượng SendMessageRequest, sử dụng để gửi thông điệp tới hàng đợi SQS của Amazon (xem liệt kê 14).

Liệt kê 14. Gửi thông điệp đến hàng đợi SQS của Amazon
SendMessageRequest sendRequest = new SendMessageRequest(); 
sendRequest.setMessageBody(inputText);

Bạn cũng phải thiết lập tên hàng đợi thích hợp, tên đó giống như tên hàng đợi bạn đã tạo ra trước đó (xem liệt kê 15).

Liệt kê 15. Thiết lập tên của hàng đợi trên SQS Amazon
sendRequest.setQueueName("imageQueue");

Bây giờ gửi thông điệp của bạn đến hàng đợi SQS của Amazon bằng cách sử dụng phương thức sendMessage của đối tượng SQS Amazon của bạn (xem liệt kê 16).

Liệt kê 16. Gửi dữ liệu của chúng ta đến hàng đợi SQS của Amazon
SendMessageResponse response = service.sendMessage(sendRequest);

Đọc phản hồi của SQS Amazon

Bước tiếp theo là đọc phản hồi từ hàng đợi SQS Amazon. Trước tiên bạn tạo ra đối tượng ReceiveMessageRequest (xem liệt kê 17).

Liệt kê 17. Tạo đối tượng ReceiveMessageObject để lấy dữ liệu từ hàng đợi SQS Amazon
receiveRequest = new ReceiveMessageRequest();

Tiếp theo, đặt tên cho hàng đợi (xem liệt kê 18).

Liệt kê 19. Tạo đối tượng ReceiveMessageObject để lấy dữ liệu từ hàng đợi SQS Amazon
receiveRequest.setQueueName("imageQueue");

Bây giờ sử dụng phương thức receiveMessage để nhận được thông điệp từ hàng đợi SQS của Amazon (xem liệt kê 19).

Liệt kê 19. Nhận được phản hồi từ hàng đợi SQS Amazon
ReceiveMessageResponse response = service.receiveMessage(receiveRequest);

Để kiểm tra kết quả, gồm cả ID của thông điệp và thân thông điệp của thông điệp đươc lấy ra từ đám mây (xem liệt kê 20), hãy chuyển nó đến đầu ra tiêu chuẩn.

Liệt kê 20. Kiểm tra phản hồi từ hàng đợi SQS Amazon
if (response.isSetReceiveMessageResult()) { 
   ReceiveMessageResult receiveMessageResult =
                  response.getReceiveMessageResult(); 
   java.util.List<Message> messageList = 
                  receiveMessageResult.getMessage(); 
   for (Message message : messageList) { 
      if (message.isSetMessageId()) { 
         System.out.print(" MessageId"); 
         System.out.print(" " + message.getMessageId()); 
         System.out.println(); 
      } 
      if (message.isSetBody()) {
           System.out.print(" Body"); 
           System.out.println(); 
           System.out.print(" " + message.getBody()); 
           System.out.println(); 
      } 
   }
}

Sử dụng cổng XML để kết nối ứng dụng cục bộ đến đám mây

Trong bài viết này bạn đã sử dụng mã Java để kết nối ứng dụng cục bộ đến môi trường điện toán đám mây. Đây là một giải pháp lý tưởng cho các nhà phát triển, nhưng vì là một phần của ứng dụng, nên kết nối tới dịch vụ điện toán đám mây của Amazon không nằm dưới sự kiểm soát của nhóm thao tác mạng, những người có thể giám sát việc sử dụng, lưu lượng và khả năng có sẵn. Ngoài ra, bất kỳ thay đổi nào đến kết nối điện toán đám mây cũng liên quan đến thay đổi mã. Mặc dù nó nằm ngoài phạm vi của bài viết này, nhưng hoàn toàn có thể nhận được cùng kết nối giữa hàng đợi JMS cục bộ và các dịch vụ đám mây SQS của Amazon bằng cách sử dụng cơ sở hạ tầng mạng, và như vậy sẽ đặt kết nối dưới sự kiểm soát của các nhân viên thao tác mạng.

Để kết nối một thành phần của ứng dụng cục bộ, chẳng hạn như hàng đợi JMS, đến đám mây, đòi hỏi phải có cổng (gateway) XML chứa các bộ nối của điện toán đám mây (xem phầnTài nguyên để có ví dụ về cổng). Tác vụ kết nối hàng đợi JMS đến hàng đợi SQS của Amazon liên quan đến kéo và thả gắn các bộ lọc kết nối với nhau, vì vậy dữ liệu được kéo từ hàng đợi JMS và sau đó được chuyển đến dịch vụ điện toán đám mây của Amazon.

Ví dụ tương tự hữu ích là hộp truyền hình cáp quen thuộc. Hộp này kết nối cơ sở hạ tầng cục bộ (máy vô tuyến truyền hình) đến đám mây (công ty truyền hình cáp). Cổng XML cung cấp vai trò của hộp cáp cục bộ. Ngoài việc cung cấp các kết nối đến các dịch vụ điện toán đám mây, nó cũng cung cấp việc theo dõi và bảo đảm an ninh cho kết nối đó.


Tóm tắt

Bạn đã thấy ứng dụng Java có thể bắc cầu nối giữa hàng đợi JMS cục bộ và đám mây SQS của Amazon như thế nào. Ứng dụng HybridCloud của bạn sử dụng tài nguyên cục bộ (hàng đợi JMS) và các nguồn tài nguyên dựa trên đám mây (SQS Amazon) để thực hiện ví dụ mẫu về tác vụ chia sẻ hình ảnh. Các phương thức tương đối giống nhau kết nối đến hàng đợi cục bộ và hàng đợi SQS của Amazon, mặc dù ở cấp độ mạng lưới, kết nối tới SQS của Amazon được gửi qua các HTTP GET và PUT với các thông số được chuyển trong các URL.

Trong phần 3, phần cuối cùng của loạt bài viết này, bạn sẽ nghiên cứu các vấn đề quản trị và bảo đảm an toàn đi kèm với điện toán đám mây. Bạn sẽ thấy các mô hình xác thực được sử dụng bởi các nhà cung cấp dịch vụ điện toán đám mây khác nhau và nghiên cứu những thách thức phát sinh từ tính riêng tư, tuân thủ quy định và bảo vệ khỏi các mối đe dọa tấn công từ chối dịch vụ.


Tải về

Mô tảTênKích thước
Hybrid Cloud Sample AppHybridCloud.zip3KB

Tài nguyên

Học tập

Lấy sản phẩm và công nghệ

Thảo luận

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=832309
ArticleTitle=Kết nối tới đám mây, Phần 2: Thực hiện mô hình đám mây lai
publish-date=08292012