text:
Sơ đồ tô pô triển khai cho thấy cách phần mềm và phần cứng của giải pháp sẽ được triển khai và định cấu hình. Sơ đồ này không chỉ cung cấp một phương tiện truyền thông tuyệt vời để chia sẻ thông tin triển khai quan trọng giữa các thành viên trong nhóm cơ sở hạ tầng, mà nó còn là một phương tiện truyền thông tuyệt vời để cho nhóm phát triển và nhóm cơ sở hạ tầng chia sẻ thông tin với nhau.
Bài viết này cho thấy cách sử dụng Rational Software Architect của IBM để tạo ra sơ đồ tô pô triển khai. Ví dụ này được dựa trên một ứng dụng web .NET hư cấu của Microsoft chứ không phải là ứng dụng web JEE, bởi vì minh họa bằng .NET cho thấy cách tạo ra và thu lại được các đơn vị tô pô có thể tái sử dụng. Điều này không trình bày được trong kịch bản ứng dụng web JEE điển hình. Tuy nhiên, sau khi hoàn thành bài tập trong bài viết này, bạn sẽ có thể mô hình hóa việc triển khai vật lý của hoặc ứng dụng web JEE hoặc của ứng dụng .NET.
Điều kiện cần có trước
Tác giả của bài viết này giả định rằng bạn đã quen với việc mô hình hóa tô pô. Nếu bạn không có kiến thức về vấn đề này, chúng tôi khuyên bạn nên xem đoạn video dài năm phút "Quản lý kiến trúc triển khai bằng trình soạn thảo tô pô” hoặc hoàn thành "Bài hướng dẫn lên kế hoạch triển khai bằng trình soạn thảo tô pô", cả hai đều được bao gồm trong hệ thống trợ giúp của Rational Software Architect.
Tác giả sử dụng Rational Software Architect cho phần mềm WebSphere, phiên bản 7.5.4, để tạo ra các ví dụ tô pô và các chỉ dẫn đó cũng áp dụng được cho Rational Software Architect Standard Edition phiên bản 7.5.4. Tuy nhiên, các bước tiến hành và các ảnh chụp màn hình sẽ hơi khác với các phiên bản trước đây của phiên bản 7.5. Mặc dù vậy, bạn sẽ có thể diễn dịch các bước tiến hành và hình chụp màn hình cho phiên bản cũ hơn.
Nền bối cảnh
Bài viết này bàn về cách để mô hình hóa ứng dụng web hư cấu về danh mục đồ gỗ nội thất của hãng JKE. Theo bối cảnh thì danh mục đồ gỗ nội thất là một ứng dụng web .NET sử dụng cơ sở dữ liệu DB2 của IBM ở mặt sau (back-end). Tô pô triển khai được tạo ra trong ví dụ này giải thích cách triển khai ứng dụng này như thế nào trong môi trường sản xuất.
Thông thường, nhóm phát triển ứng dụng bắt đầu bằng cách tạo ra mô hình lôgic và sau đó lặp lại nhiều vòng thông qua các mô hình lôgic và vật lý cùng với nhau. Tuy nhiên, bài viết này chỉ tập trung vào việc tạo ra tô pô triển khai. Có nhiều lý do chính đáng mà bạn có thể tạo ra trước tiên tô pô triển khai, nhưng việc giải thích cách xác định sẽ bắt đầu mô hình hay tô pô từ mức nào là vượt ra ngoài phạm vi của bài viết này. Thay vào đó, bài tập này đề cập đến các cơ chế để tạo ra một tô pô triển khai.
Tạo tô pô vật lý
Các mô hình tô pô cuả Rational Software Architect cần phải được lưu trữ trong một dự án. Như là một quy tắc chung, tô pô được lưu trữ cùng với các mô hình UML của giải pháp.
- Bạn hãy tạo một tô pô bằng cách chuyển sang phối cảnh Deployment và chọn File> New> Topology từ trình đơn chính.
Hình 1 chứa các giá trị được sử dụng cho tô pô triển khai của danh mục đồ gỗ nội thất của hãng JKE. Có bốn trường và giá trị mà bạn phải điền:
- Không gian tên (Namespace): com.jke.furniture.deployment
- Kiểu (Type): Triển khai
- Giao kết (Contract): Chuyển tất cả các đơn vị thành riêng theo mặc định (Make All Units Private By Default)
- Thêm tô pô vào bảng mầu (Add topology to palette): Không đánh dấu chọn (Unchecked)
Hình 1. Cửa sổ tô pô mới
Nói chung, trường Namespace sử dụng cấu trúc gói Java. Tô pô này là tô pô triển khai, do đó tên của gói kết thúc bằng từ deployment (triển khai). Quy ước đặt tên này không bắt buộc, nhưng rất hữu ích cho tính nhất quán.
Trường Contract được thiết lập là "Make All Units Private By Default" – Chuyển tất cả các đơn vị thành riêng theo mặc định, bởi vì đây là cách thực hành tốt nhất để làm theo khi tạo ra một tô pô triển khai. Tô pô triển khai là tô pô mức thấp nhất, vì vậy bằng cách thiết lập trường Contract là "Make All Units Private By Default", Rational Software Architect hiển thị tất cả các sự cố về xác nhận hợp lệ là lỗi chứ không phải là cảnh báo.
Lưu ý:
Cảnh báo được hiển thị như lỗi vì các cảnh báo có thể được thỏa mãn hoặc được giải quyết bằng cách nhập tô pô này vào tô pô khác, mà tô pô sau có thể giải quyết được. Tuy nhiên, nếu đơn vị được đánh dấu là "riêng", thì sau đó tất cả các vấn đề phải được sửa trong tô pô hiện tại, vì các đơn vị riêng không thể truy cập được khi chúng được nhập vào một tô pô khác. Sử dụng chính sách "riêng" trên tô pô làm cho tất cả các đơn vị trở thành riêng theo mặc định, nó biến cảnh báo thành các lỗi.
- Nhấn Finish.
- Đọc phần trợ giúp khởi động nhanh "Chào mừng bạn đến trình soạn thảo tô pô" và sau đó tắt văn bản trợ giúp bằng cách nhấn vào dấu gạch chéo X ở góc trên bên phải.
Sau đó bạn sẽ có một tô pô triển khai rỗng, hiển thị một sơ đồ tô pô đơn lẻ có cùng tên với mô hình tô pô.
Lưu ý:
Trên ổ đĩa, tệp tin sơ đồ tách biệt với tệp tin tô pô. Khi bạn đang sử dụng hệ thống kiểm soát phiên bản, thì bạn cần phải đặt cả hai tệp tin vào hệ thống kiểm soát phiên bản.
Mô hình hóa cơ sở dữ liệu DB2
Ứng dụng Danh mục đồ gỗ nội thất của hãng JKE lấy tất cả các thông tin của nó từ một cơ sở dữ liệu DB2 có tên là FURNDB. JKE đã tiêu chuẩn hóa ứng dụng trên DB2 phiên bản 8, do đó, các khuôn mẫu đơn vị tô pô bao gồm kèm theo có thể được sử dụng để mô hình hóa việc triển khai cơ sở dữ liệu.
Có hai cách để thêm đơn vị mới vào sơ đồ tô pô.
- Bạn có thể chọn các mẫu đơn vị từ bảng màu (Khuôn mẫu cơ sở dữ liệu DB2 ở trong ngăn kéo Configurations của bảng màu, phía dưới ngăn của DB2).
- Hoặc bạn có thể sử dụng tổ hợp phím tắt CTRL+T.
Nói chung, lựa chọn tổ hợp phím CTRL + T là cách nhanh nhất, bởi vì bạn có thể gõ tên của đơn vị. Điều này giúp bạn tiết kiệm thời gian tìm kiếm đơn vị đó bên trong các ngăn kéo bảng màu.
- Để tạo ra cơ sở dữ liệu DB2, bạn nhấn chuột vào sơ đồ tô pô mới được tạo ra và sau đó nhấn tổ hợp Ctrl+T.
- Khi cửa sổ thả xuống xuất hiện, gõ nhập *database (dấu hoa thị là một ký tự tìm kiếm đại diện).
- Khi bạn gõ nhập, hộp thoại sẽ lọc các đơn vị. Bạn chọn đơn vị cơ sở dữ liệu DB2 (xem hình 2).
Hình 2. Trình đơn thả xuống của tổ hợp CTRL+T
- Sau khi đặt đơn vị DB2 trên sơ đồ tô pô, bạn đổi tên đơn vị này thành FURNDB bằng cách di con trỏ chuột trên đơn vị và nhấn vào biểu tượng hình bút chì. Trong cửa sổ bật lên, bạn để nguyên Link with Database Name (liên kết với tên cơ sở dữ liệu) được đánh dấu chọn.
Mẹo:
Nói chung, khi đổi tên đơn vị, hãy để nguyên thuộc tính Link với XXXX được đánh dấu chọn.
Bây giờ bạn có đơn vị biểu diễn cơ sở dữ liệu thực tế lưu trữ dữ liệu. Nếu bạn có kinh nghiệm sử dụng DB2, thì bạn đã biết rằng cơ sở dữ liệu cần phải được lưu trú trên một cá thể của DB2. Trong trường hợp bạn không biết, thì Rational Software Architect thông báo cho bạn về vấn đề này bằng cách báo lỗi về lưu trú. Bạn có thể thấy lỗi lưu trú này bằng di con trỏ lên trên dấu X màu đỏ ở góc dưới bên trái của đơn vị FURNDB.
Mẹo:
Khung nhìn Topology Status (Trạng thái tô pô), nằm ở giữa, bên dưới của phối cảnh theo mặc định, là một khung nhìn hữu ích, bởi vì nó hiển thị tất cả các vấn đề của sơ đồ. Khung nhìn này sẽ giúp bạn mô hình hóa thành công tô pô của bạn bằng cách hướng dẫn bạn thông qua việc sửa chữa mọi lỗi.
- Hãy tạo một đơn vị cá thể của DB2 phiên bản 8, hoặc bằng cách sử dụng các bảng màu hoặc bằng tùy chọn tổ hợp CTRL+T, và đặt tên đơn vị là FURNINST.
- Sau khi đổi tên đơn vị thành FURNINST, bạn kéo đơn vị FURNDB vào đơn vị FURNINST.
Các hành động kéo sẽ dẫn đến kết quả lưu trú đơn vị FURDB trên đơn vị FURNINST. Việc lưu trú sửa các vấn đề của đơn vị FURNDB và mối quan hệ lưu trú cho thấy rằng cơ sở dữ liệu chạy trong cá thể DB2.
Lưu ý rằng đơn vị FURNINST mới được tạo ra có một thông báo lỗi rằng cá thể DB2 cần phải được lưu trú tại phần cài đặt hệ thống DB2. Việc sửa lỗi này rất dễ:
- Đơn giản chỉ cần tạo ra một đơn vị hệ thống của DB2 phiên bản 8 bằng cách sử dụng bảng mầu hoặc tổ hợp CTRL+T và tạo ra mối quan hệ chủ chứa bằng cách kéo đơn vị FURNINST vào đơn vị hệ thống DB2 phiên bản 8 mới được tạo ra.
Sau khi tạo hệ thống DB2 phiên bản 8 và tạo ra chủ chứa cho cá thể DB2 FURNINST trên hệ thống, sơ đồ tô pô của bạn sẽ giống như hình 3.
Hình 3. Hệ thống DB2 đang chủ chứa cơ sở dữ liệu FURNDB
Không giống như cơ sở dữ liệu FURNDB, mà vấn đề duy nhất của nó đã được giải quyết khi nó được lưu trú trên cá thể DB2 FURNINST, cá thể DB2 FURNINST vẫn còn có những vấn đề chưa được giải quyết. Tuy nhiên, điều này chấp nhận được vào lúc này, bởi vì các vấn đề sẽ được giải quyết sau khi tô pô triển khai được tiếp tục chú giải với bản triển khai DB2 lưu trú trên máy chủ của nó.
Lưu trú cơ sở dữ liệu trên máy chủ Linux
Mục trên đã chú giải cho tô pô của bản cài đặt DB2 phiên bản 8, đang chủ chứa cơ sở dữ liệu FURNDB. Mục này sẽ chú giải máy chủ vật lý là chủ chứa bản cài đặt DB2 được chú giải ở trên. Tuy nhiên, mục này trước tiên sẽ chú giải máy chủ và sau đó làm cho nó có thể chứa bản cài đặt DB2.
Chú giải máy chủ
Theo bối cảnh thì JKE Furniture chạy bản cài đặt DB2 của họ trên máy chủ Linux x86 dạng hộp đựng bánh pizza với CPU kép.
- Trên sơ đồ tô pô, bạn tạo một đơn vị cho các máy chủ x86 bằng cách sử dụng khuôn mẫu đơn vị máy chủ x86 (khuôm mẫu đó nằm trong ngăn kéo phần cứng của bảng mầu). JKE sử dụng hệ thống x của IBM, máy chủ 3450, do vậy bạn hãy đổi tên đơn vị của máy chủ x86 thành IBM x3450.
Lưu ý:
Các đơn vị máy chủ được đặt tên theo mô hình phần cứng thay vì tên máy chủ (hostname) của nó bởi vì tên máy chủ sẽ được chỉ rõ trong đơn vị hệ điều hành.
Theo mặc định, Rational Software Architect chú giải các máy chủ x86 là có một CPU duy nhất, do đó đơn vị mới được tạo ra cần phải được cập nhật để phản ánh sự việc là hãng đồ gỗ nội thất JKE có máy chủ có hai CPU. Số lượng của CPU được lưu trữ trong một thuộc tính về khả năng của đơn vị máy chủ x86.
- Để cập nhật thuộc tính này, bạn chọn mục IBM x3450 trên sơ đồ tô pô và
sau đó chuyển đến khung nhìn Properties. Tại khung nhìn Properties,
bạn chọn phiếu Capabilities. Bởi vì đơn vị máy chủ x86 chỉ có một khả
năng được đặt tên là máy chủ x86, nên thuộc tính của khả năng đó được
hiển thị theo mặc định. Bạn thiết lập giá trị của thuộc tính số lượng
của CPU là
2.
Hình 4 thể hiện rõ trình tự các bước:
- Đổi máy chủ X86 chuyển thành máy chủ IBM x3450
- Tai phiếu Properties
- Mục Capabilities
- Máy chủ X86
- Số lượng CPU: [gõ nhập] 2
Hình 4. Đường dẫn hướng để cập nhật số lượng CPU của máy chủ
- Theo mặc định, hãng đồ gỗ nội thất JKE luôn sử dụng 4GB bộ nhớ trong các máy chủ cơ sở dữ liệu của mình. Vì vậy, sau khi cập nhật thuộc tính số lượng CPU, bạn cuộn xuống ô của thuộc tính và cập nhật thuộc tính kích thước bộ nhớ lên 4GB.
Thông thường, hầu hết mọi người muốn nhìn thấy số lượng CPU và kích thước bộ nhớ của các máy chủ. Bắt đầu từ Rational Software Architect phiên bản 7.5.1 cho phép các thuộc tính được hiển thị trên sơ đồ.
- Để hiển thị các thuộc tính này trên sơ đồ tô pô, bạn chọn đơn vị IBM x3450 trên sơ đồ tô pô và sau đó chọn Diagram > Unit Details từ trình đơn.
- Tại cửa sổ Show Unit Presentation Details (Hiển thị các chi tiết của đơn vị trình bày), hãy đánh dấu chọn cho các thuộc tính CPU Count (số lượng CPU) và Memory Size (kích thước bộ nhớ) như thể hiện trong hình 5.
Hình 5. Khung nhìn Hiển thị các chi tiết của đơn vị trình bày
- Sau khi nhấn OK, sơ đồ sẽ hiển thị các thuộc tính trên máy chủ như minh họa tại hình 6.
Hình 6. Sơ đồ tô pô hiển thị 2 thuộc tính của máy chủ
Bây giờ bạn đã chú giải xong cấu hình của máy chủ vật lý, đã đến lúc để chú giải hệ điều hành được cài đặt trên máy chủ.
Chú giải hệ điều hành
Hãng đồ gỗ nội thất JKE chạy máy chủ SUSE Linux.
- Tạo một đơn vị máy chủ Linux SUSE phiên bản 9 trên sơ đồ tô pô (sử dụng tùy chọn tổ hợp phím CTRL+T có thể sẽ là dễ nhất).
- Đặt tên cho đơn vị mới được tạo ra. Trong cửa sổ bật lên, để nguyên trường Link with Hostname:URI (liên kết tới tên máy chủ: URI) đã được đánh dấu chọn và tại trường Hostname, bạn gõ nhập furn-db.jke.com. Để trống trường URI.
Lưu ý:
Thuộc tính URI được sử dụng để xác định vị trí URI của ổ đĩa máy chủ UNIX, mà chúng tôi sẽ giả định là không quan trọng trong kịch bản hãng đồ gỗ nội thất JKE hư cấu này.
Đơn vị hệ điều hành mới được tạo ra cần phải được lưu trú trên một máy chủ.
- Lưu trú đơn vị hệ điều hành furn-db.jke.com trên máy chủ hệ thống x 3450 của IBM bằng cách kéo thả hệ điều hành lên máy chủ.
Ngăn xếp máy chủ furn db.jke.com vẫn báo lỗi và khi bạn di con trỏ chuột lên các dấu X mầu đỏ của ngăn xếp sẽ lộ ra là lỗi xuất phát từ đơn vị tài khoản người dùng gốc. Tài khoản người dùng gốc cần phải có mật khẩu được thiết lập của riêng nó. Tại hãng đồ gỗ nội thất JKE chỉ có các quản trị viên hệ thống mới biết mật khẩu gốc, do đó không cần phải xác định tài khoản người dùng gốc và chúng ta sẽ xóa nó khỏi tô pô.
Lưu ý:
Thay cho việc xóa đơn vị người sử dụng gốc, một lựa chọn khác là đánh dấu chọn đơn vị tài khoản người sử dụng gốc làm đơn vị tài khoản chung có thể chỉnh sửa, việc này thay đổi lỗi thành cảnh báo. Việc đánh dấu đơn vị thành đơn vị chung có thể chỉnh sửa cho thấy rằng các giá trị của đơn vị có thể được thỏa mãn sau này thông qua việc nhập khẩu tô pô.
- Xóa tài khoản người dùng gốc khỏi hệ điều hành bằng cách chọn nó và sau đó sử dụng tổ hợp phím CTRL+DEL. Tổ hợp phím này xóa người sử dụng gốc khỏi mô hình tô pô.
Lưu ý:
Chỉ sử dụng phím DEL sẽ chỉ xóa đơn vị khỏi sơ đồ, không phải là xóa đơn vị khỏi mô hình tô pô.
Bây giờ đơn vị máy chủ không có lỗi. Tuy nhiên, khi bạn nhìn vào khung nhìn Topology Status (Tình trạng mô hình tô pô) bạn sẽ thấy rằng có một lỗi về đơn vị chủ chứa.
- Tại khung nhìn Topology Status, hãy mở rộng Host Units (các đơn vị chủ chứa).
- Chọn lỗi (Unit ("DB2 System") must be hosted (Operating System) - Đơn vị ("hệ thống DB2") phải được lưu trú (Hệ điều hành). Bạn lưu ý rằng khi bạn làm điều này, bạn sẽ có bốn lựa chọn để sửa lỗi nhanh.
- Bạn hãy sửa các lỗi bằng cách nhấp đúp chuột vào mục: Host "DB2 System" on "furn-db.jke.com" on IBM x3450
Sau khi Rational Software Architect sửa lỗi, sơ đồ sẽ giống như hình 7.
Hình 7. Hệ thống DB2 được lưu trú trên furn-db.jke.com
Hình mũi tên kép trong sơ đồ là một ký pháp thay thế, nói rằng một đơn vị đang được lưu trú trên một đơn vị khác.
Ngăn xếp DB2 vẫn có một vài lỗi cần phải sửa.
- Bạn nhấn vào dấu X mầu đỏ của đơn vị FURNINST.
- Chọn lỗi “No admin users found in OS Host(FURNIST)” - Không tìm thấy người dùng quản trị trong máy chủ hệ điều hành Host(FURNIST) và nhấn đúp vào phần sửa lỗi nhanh “Create DB2 Instance Admin User” - Tạo người sử dụng quản trị cá thể DB2.
- Tại cửa sổ Create DB2 Instance Admin User, bạn gõ nhập db2furn trong trường Create DB2 Instance Admin User ID và thiết lập mật khẩu đơn giản, chẳng hạn như abc 123.
- Nhấn OK và lưu ý rằng Rational Software Architect tạo ra một tài khoản người dùng trong hệ điều hành và vẽ liên kết phụ thuộc giữa cá thể FURNINST của DB2 và tài khoản người sử dụng db2furn mới được tạo ra.
Khi di chuyển đến các lỗi khác, di con trỏ trên dấu X màu đỏ của hệ thống DB2 sẽ lộ ra thông tin rằng các mục của classpath được thiết lập thành đường dẫn của hệ điều hành Windows.
- Cập nhật từng giá trị của classpath với một tiền tố, chẳng hạn như /opt/IBM/db2v8.2/SQLLIB /, và sử dụng sửa lỗi nhanh cho từng lỗi.
Lưu ý:
Một lựa chọn khác để sửa lỗi thông qua các lỗi và hộp thoại sửa lỗi nhanh là chọn đơn vị hệ thống của DB2 và sau đó cập nhật các thuộc tính classpath tại các khả năng khác nhau của đơn vị tại khung nhìn Properties. Điều này cũng tương tự như những gì bạn đã làm khi cập nhật các thuộc tính số lượng CPU (CPU Count) và kích thước bộ nhớ (Memory Size) của máy chủ vật lý.
Sau khi sửa tất cả các lỗi classpath, tô pô sẽ không có lỗi nào nữa.
- Để có sự nhất quán, bạn kéo thả đơn vị của hệ thống DB2 vào đơn vị furn-db.jke.com.
Điều này sẽ cập nhật sơ đồ để tất cả các đơn vị được hiển thị trong một khung nhìn hình cây. Cấu trúc hình cây giúp giữ cho sơ đồ sáng sủa trong khi vẫn hiển thị rất nhiều thông tin. Sau khi kéo thả hệ thống DB2 vào đơn vị furn db.jke.com và thay đổi kích thước, sơ đồ sẽ giống như hình 8.
Hình 8. Máy chủ hệ thống x 3450 của IBM chủ chứa cơ sở dữ liệu DB2 trên hệ điều hành Linux
Tạo các đơn vị cho ứng dụng Web ASP.NET
Sẽ luôn có các ứng dụng và lĩnh vực công nghệ mà Rational Software Architect không cung cấp các khuôn mẫu tô pô. Ví dụ: Phiên bản 7.5.4 không bao gồm các khuôn mẫu mô hình hóa tô pô cho các ứng dụng .NET của Microsoft.
Danh mục đồ gỗ nội thất của hãng JKE là một ứng dụng ASP.NET của Microsoft. Do đó, các đơn vị tô pô cần có để hỗ trợ việc mô hình hóa hệ thống .NET phải được tạo ra. Công việc này cần một ít thời gian, nhưng Rational Software Architect làm cho nó trở nên dễ dàng để tái sử dụng và chia sẻ các đơn vị mà bạn thực hiện.
Phần này tập trung vào việc tạo ra các đơn vị tô pô mới cần thiết để xử lý nền tảng ASP.NET. Phần sau giải thích cách để làm cho các đơn vị có thể tái sử dụng được.
Hãng đồ gỗ nội thất JKE lưu trú các ứng dụng ASP.NET của mình trên máy chủ Microsoft Windows 2003. Điều này có nghĩa là danh mục đồ gỗ nội thất của JKE sẽ là một ứng dụng tương thích với ASP.NET 2.0 chạy trong máy chủ thông tin Internet của Microsoft (Internet Information Server - IIS) phiên bản 6.0.
Tạo đơn vị IIS 6.0
- Để tạo đơn vị IIS 6.0, bạn tạo một đơn vị cài đặt phần mềm mới trên sơ đồ tô pô bằng cách sử dụng tổ hợp phím CTRL+T hoặc bảng mầu.
- Tạo tên của đơn vị bằng cách nhấn vào biểu tượng hình bút chì. Trong cửa sổ bật lên, bạn đánh dấu chọn Link with Product Name:Version String:Release:Major Version:Modifier.
- Thiết lập các giá trị mới của cửa sổ bật lên với các giá trị sau:
- Product Name (Tên sản phẩm): Internet Information Server
- Version string (Chuỗi phiên bản): 6.0
- Major Version (Phiên bản chính): 6
Hình 9. Cửa sổ bật lên của Software Install
- Theo mặc định, đơn vị mới tạo ra được gọi là "SoftwareInstallUnit." Để thay đổi tên của đơn vị, bạn chọn đơn vị mới và sau đó chọn mục trình đơn Diagram > Unit Style.
- Tại cửa sổ Unit Style, bạn cập nhật giá trị trong trường tiêu đề Unit là Internet Information Server 6.0, như trong hình 10 và sau đó nhấn OK .
Hình 10. Cửa sổ Unit Style
Bây giờ đơn vị phản ánh chính xác phần mềm từ bên ngoài, điều đó có nghĩa là, từ phối cảnh trực quan của sơ đồ thì đơn vị có vẻ đúng. Tuy nhiên, sức mạnh của việc sử dụng Rational Software Architect để mô hình hóa các đơn vị tô pô là ở chỗ các đơn vị biết các yêu cầu và khả năng của mình là gì. Vì vậy, các bước tiếp theo liên quan đến việc xác định các yêu cầu và khả năng của IIS 6.0.
Chú giải các yêu cầu và khả năng của IIS
Khi di con trỏ chuột lên trên chữ X màu đỏ của đơn vị IIS 6.0 sẽ lộ ra thông tin rằng đơn vị có yêu cầu được lưu trú trên hệ điều hành. Mặc dù yêu cầu này là đúng theo nghĩa tổng quát, nhưng bạn phải lưu ý rằng có một sửa lỗi nhanh để lưu trú IIS 6.0 trên máy chủ Linux. Sửa lỗi nhanh này thực sự không hợp lệ, do đó yêu cầu lưu trú của đơn vị cần được tinh chỉnh để phản ánh rằng IIS cần phải được lưu trú trên hệ điều hành Windows (và như thế, ai đó ít kinh nghiệm hơn sẽ không vô tình lập kế hoạch để lưu trú IIS trên máy chủ Linux).
- Cập nhật yêu cầu hệ điều hành bằng cách chọn đơn vị IIS 6.0 và sau đó, tại khung nhìn Properties, bạn chọn tai phiếu Requirements.
- Chọn yêu cầu Host on an Operating System và nhấp vào nút Type Selector (nút có hình bầu dục, hoặc có dấu ba chấm, ở phía bên phải trường thuộc tính của Type).
- Tại hộp thoại Set Requirement Type, bạn chọn kiểu os.WindowsOperatingSystem.
Hình 11 là hình chụp màn hình của quá trình này và nút Type Selector được làm nổi bật bằng vòng tròn mầu đỏ.
Hình 11. Cập nhật yêu cầu hệ điều hành là Windows
- Sau khi cập nhật thuộc tính Type của yêu cầu, bạn cập nhật thuộc tính Caption là "Host on a Windows Operating System" (Lưu trú trên hệ điều hành Windows).
Bây giờ khi di con trỏ chuột lên trên dấu X màu đỏ của đơn vị thì bạn sẽ thấy thông báo lỗi đã được cập nhật và sửa lỗi nhanh bằng cách lưu trú IIS 6.0 trên máy chủ Linux không còn xuất hiện nữa.
Các yêu cầu của IIS 6.0 có thể được tinh chỉnh tiếp để phản ánh các phiên bản hệ điều hành được hỗ trợ và để không có cá thể IIS khác được cài đặt trên cùng một máy chủ ấy. Tuy nhiên, bài viết này sẽ không bàn đến các chi tiết đó. Đối với mục đích của ta, chỉ cần yêu cầu hệ điều hành Window là đủ.
Phần tiếp theo của đơn vị IIS 6.0 cần phải được cập nhật là các khả năng của đơn vị này. IIS 6.0 sẽ chủ chứa ứng dụng Web ASP.NET phiên bản 2.0. Để chú giải rằng ứng dụng Danh mục đồ gỗ nội thất của hãng JKE chạy bên trong IIS, thì đơn vị IIS 6.0 cần chú giải khả năng của nó để chủ chứa các ứng dụng ASP.NET.
- Giả sử rằng đơn vị IIS 6.0 vẫn được chọn trong sơ đồ, tại khung nhìn Properties bạn tìm đến tai phiếu Capabilities. Bạn thêm khả năng mới bằng cách sử dụng nút Add Capability của khung nhìn Property và, tại cửa sổ Add Capability bạn chọn core.Capability như trong hình 12.
Hình 12. Thêm khả năng lõi
- Sau khi tạo khả năng, bạn thiết lập lời chú thích (Caption) của khả năng là "ASP.NET Runtime" và chọn mục hosting (chủ chứa) từ trường thả xuống Link type (kiểu kết nối).
- Để làm cho khả năng này có thể nhận dạng được một cách duy nhất để các đơn vị khác cũng có thể yêu cầu nó, bạn hãy nhấn vào tai phiếu phụ Stereotypes và thêm khuôn mẫu có tên là ASP.NET Runtime.
Hình 13 cho thấy các bước điều hướng cần thiết.
Hình 13. Thêm khuôn mẫu vào khả năng
- Sau khi thêm khuôn mẫu, bạn quay trở lại tai phiếu phụ Main và thêm một thuộc tính bằng cách nhấn vào nút Customize Attributes (Tùy chỉnh thuộc tính) của khung nhìn Property.
- Đặt tên thuộc tính mới là Version như trong hình 14.
- Bạn phải để nguyên kiểu của thuộc tính là String (chuỗi).
Hình 14. Cửa sổ Customize Attributes
- Sau khi bạn nhấn vào nút OK của hộp thoại Customize Attributes, bảng khả năng sẽ hiển thị các trường mục nhập cho thuộc tính mới tạo ra.
- Thiết đặt giá trị của thuộc tính Version (phiên bản) là 2.0.
Sau khi bạn đã hoàn thành các cập nhật này, các thuộc tính môi trường thời gian chạy thực của ASP.NET sẽ giống như hình 15.
Hình 15. Các khả năng của môi trường thời gian chạy thực ASP.NET
Giống như các yêu cầu, các khả năng có thể được chú giải thêm nữa, nhưng bây giờ các khả năng đã được xác định đủ để cho phép chú giải ứng dụng danh mục đồ gỗ nội thất của hãng JKE.
Tạo đơn vị cho ứng dụng web của hãng JKE
- Bạn tạo đơn vị Software Install (cài đặt phần mềm) mới bằng cách sử dụng tổ hợp phím CTRL+T hoặc bảng mầu, và đặt tên nó là JKE Furniture Catalog Web App bằng cách sử dụng biểu tượng hình bút chì và liên kết tên đó tới tên sản phẩm như bạn đã làm trước đây với IIS.
- Bằng cách sử dụng các bước tương tự như đối với đơn vị IIS 6.0, bạn cập nhật tiêu đề của đơn vị là ASP.NET 2.0 Web Component.
Sơ đồ của bạn bây giờ trông giống như Hình 16.
Hình 16. Ứng dụng web mới được tạo ra cho danh mục đồ gỗ nội thất của hãng JKE
Bây giờ vẻ bên ngoài của ứng dụng web của hãng JKE đã ổn. Tuy nhiên, các yêu cầu của nó cần phải được cập nhật để phản ánh các yêu cầu về môi trường thời gian chạy thực của ứng dụng.
- Bạn chọn JKE Furniture Catalog Web App trong sơ đồ.
- Sau đó, tại khung nhìn Properties, bạn chọn tai phiếu Requirements.
Yêu cầu về lưu trú của đơn vị cần được cập nhật để phản ánh yêu cầu của môi trường thời gian chạy thực ASP.NET.
- Bạn bắt đầu bằng cách thay đổi lời chú thích của yêu cầu " Host on an Operating System" thành Host on an ASP.NET Runtime.
- Bạn cũng thay đổi thuộc tính Type thành core.Capability.
Nói chung, bây giờ ứng dụng Web đang yêu cầu đơn vị IIS 6.0 một phần, bởi vì kiểu của yêu cầu đã khớp với kiểu của khả năng của đơn vị IIS 6.0 (core.Capability). Tuy nhiên, yêu cầu về lưu trú cần phải được tinh chỉnh tiếp bằng cách sử dụng các ràng buộc.
- Vẫn tại yêu cầu "Host on an ASP.NET Runtime", bạn nhấn vào tai phiếu phụ Constraints (các ràng buộc).
- Thêm ràng buộc Stereotype (bản mẫu) bằng cách sử dụng nút Add Constraint.
- Thiết lập các giá trị của ràng buộc mới như sau:
- Caption (lời chú thích): Requires ASP.NET Runtime
- Includes (bao gồm): ASP.NET Runtime
- Bạn thêm ràng buộc thứ hai của một ràng buộc Equals bằng cách sử dụng nút Add Constraint.
- Thiết lập các giá trị ràng buộc mới như sau:
- Attribute (thuộc tính): Version
- Caption (lời chú thích): .NET 2.0
- Value (giá trị): 2.0
Các ràng buộc này cũng giống như các giá trị cho đơn vị IIS 6.0. Tại hình 17 các lần nhấn chuột phải thực hiện được tô rõ bằng các vòng tròn mầu đỏ và cho thấy các ràng buộc.
Hình 17. Các ràng buộc môi trường thời gian chạy thực ASP.NET
Bây giờ bạn đã đáp ứng được yêu cầu để đảm bảo rằng các thành phần web ASP.NET được lưu trú trên (đơn vị) máy chủ IIS.
Chú giải yêu cầu về cơ sở dữ liệu
Ứng dụng JKE cũng sử dụng dữ liệu từ cơ sở dữ liệu FURNDB, vì vậy bước tiếp theo là chú giải yêu cầu này.
Bạn có thể tạo ra bằng cách thủ công các yêu cầu và khả năng tương ứng như bạn đã làm cho môi trường thời gian chạy thực ASP.NET, nhưng có một cách dễ dàng hơn để tạo ra các phụ thuộc tương ứng.
Mẹo:
Bạn có thể định cấu hình cho Rational Software Architect để tự động tạo ra và so khớp các phụ thuộc giữa một yêu cầu đơn lẻ và khả năng tại phần Topology Editor (trình biên tập tô pô) của mục Preferences (các ưu tiên). Bạn chỉ cần đánh dấu chọn trường Create a link automatically when only one match exists (Tạo liên kết tự động khi chỉ có một cái khớp đúng). Chúng tôi khuyến cáo bạn đánh dấu chọn trường này để tránh một khiếm khuyết đã biết của phiên bản 7.5.4.
- Tại khung nhìn Palette (bảng mầu), bạn chọn công cụ Dependency Link (liên kết phụ thuộc) và vẽ một liên kết từ đơn vị JKE Furniture Web App đến đơn vị FURNDB. Rational Software Architect sẽ báo rằng không có so khớp, nhưng sau khi bạn nhả chuột, hộp thoại liên kết phụ thuộc sẽ hiện ra.
- Tại cột Source Unit(s) (đơn vị nguồn), bạn chọn JKE Furniture Catalog Web App và nhấn nút Create Both (tạo cả hai đường dẫn).
Hình 18 cho thấy đường dẫn hướng.
Hình 18. Tạo liên kết phụ thuộc
- Sau khi tạo ra yêu cầu và khả năng khớp nhau, bạn chọn yêu cầu mới được tạo ra ở bên trái và nhấp vào nút Edit Properties (chỉnh sửa thuộc tính).
- Đổi tên yêu cầu thành Requires FURNDB, và thêm ràng buộc bản mẫu cho FURNDB.
- Sau đó đổi lại tên của khả năng bằng cách chọn khả năng ở bên phải và nhấn vào nút Edit Properties. Hộp thoại Properties của khả năng sẽ mở ra tại cùng vị trí như hộp thoại yêu cầu. Đổi tên khả năng thành Provides FURNDB và sau đó nhấn OK trong hộp thoại Create Dependency Link.
Sau khi hoàn thành hộp thoại, sơ đồ sẽ có lỗi (xem hình 19).
Hình 19. Ứng dụng web với các lỗi phụ thuộc
- Nhấn vào lỗi liên kết phụ thuộc và chọn sửa lỗi nhanh sau: Add missing stereotypes to capability "Provides FURNDB" Thêm khuôn mẫu bị thiếu vào " Provides FURNDB"
Bây giờ tất cả các yêu cầu cho ứng dụng web Danh mục đồ gỗ nội thất của hãng JKE đã được chú giải.
- Di con trỏ của chuột lên trên chữ X màu đỏ của đơn vị sẽ hiện chỉ một lỗi. Bằng cách sử dụng các sửa lỗi nhanh, hãy lưu trú ứng dụng web Danh mục đồ gỗ nội thất của hãng JKE trên IIS 6.0.
Sau khi sử dụng các sửa lỗi nhanh, sơ đồ sẽ giống như Hình 20.
Hình 20. Ứng dụng web Danh mục đồ gỗ nội thất của hãng JKE được lưu trú trên ISS 6.0 và phụ thuộc vào FURNDB
Lưu trú máy chủ ASP.NET trên máy chủ Windows
Bây giờ bạn đã chú giải xong ứng dụng danh mục trong tô pô. Bước cuối cùng là chú giải ứng dụng đó được lưu trú trên máy chủ Windows, nơi mà nó sẽ chạy.
Các bước của việc chú giải máy chủ và hệ điều hành của nó được mô tả trong phần Lưu trú cơ sở dữ liệu trên máy chủ Linux. Vì vậy, phần này sẽ chỉ giải thích các bước một cách ngắn gọn, xin xem phần trước để biết chi tiết.
Hãng đồ gỗ nội thất JKE chạy các ứng dụng web của mình trên các máy chủ vật lý tương tự như các máy chủ cơ sở dữ liệu.
- Bạn hãy tạo một đơn vị máy chủ x86 và đặt tên là IBM x3450. Thiết đặt CPU Count (số lượng CPU) của máy chủ là 2 và bộ nhớ là 2GB và sau đó cập nhật các chi tiết trình bày của đơn vị sao cho hai thuộc tính này được hiển thị trên sơ đồ.
- Tiếp theo, bạn tạo một đơn vị Windows Server 2003 và thiết lập thuộc tính tên máy chủ của nó là "furn-www.jke.com ". Người sử dụng Administrator của đơn vị Windows Server có lỗi, bởi vì mật khẩu không được thiết lập, tuy nhiên, bởi vì các tài khoản người dùng không quan trọng đối với tô pô này, chỉ cần xóa tất cả các đơn vị tài khoản người sử dụng và nhóm người sử dụng khỏi đơn vị Windows Server.
- Sau khi xóa các người sử dụng và nhóm người sử dụng, bạn kéo thả đơn vị furn-www.jke.com vào máy chủ IBM x3450 mới được tạo ra.
- Sau đó kéo thả đơn vị Internet Information Server 6.0 vào đơn vị Windows Server 2003 bây giờ được lồng bên ngoài.
- Sau đó, kéo thả đơn vị JKE Furniture Catalog Web App vào đơn vị Internet Information Server 6.0.
Tại thời điểm này, tô pô triển khai của bạn sẽ không có lỗi nào và được hoàn tất. Sơ đồ cuối cùng sẽ giống như hình 21.
Hình 21. Mô hình vận hành vật lý của ứng dụng đã hoàn tất
Tạo mục Palette (bảng mầu) cho đơn vị máy chủ ASP.NET
Sơ đồ triển khai tô pô đã hoàn tất. Các bước chú giải khả năng và yêu cầu của đơn vị ASP.NET cần phải tốn một chút thời gian, bởi vì phần mềm không bao gồm các khuôn mẫu cho miền .NET. Tuy nhiên, Rational Software Architect làm cho dễ dàng hơn khi thu hoạch các đơn vị có thể sử dụng lại được và chia sẻ chúng như là các mục của bảng màu cho người khác sử dụng.
Cách dễ dàng nhất để thu hoạch và đưa một đơn vị lên bảng mầu để khuyến khích sử dụng là nhấn chuột phải vào đơn vị đó và từ trình đơn thả xuống, bạn chọn mục trình đơn Add to Palette. Tuy nhiên, cách tốt hơn để thu hoạch và chia sẻ các đơn vị là sử dụng tô pô khuôn mẫu. Các tô pô khuôn mẫu tốt hơn bởi vì tô pô khuôn mẫu có thể được lưu trữ và chia sẻ thông qua hệ thống kiểm soát phiên bản hoặc thông qua Rational Asset Manager của IBM (trình quản lý tài sản Rational). Trong phần này, bạn sẽ tạo ra hai tô pô khuôn mẫu: một cho đơn vị Internet Information Server 6.0 và một cho đơn vị thành phần web của ASP.NET 2.0. Mỗi khuôn mẫu sẽ dẫn đến kết quả là một mục bảng mầu mà những người khác có thể tái sử dụng.
Tạo khuôn mẫu
- Để tạo khuôn mẫu, bạn hãy tạo tô pô mới từ các mục trình đơn File>
New> Topology. Hình 22 cho thấy các giá trị tại cửa sổ New
Topology. Đây là những giá trị quan trọng phải thiết lập:
- Name (Tên): MicrosoftInternetInformationServer6
- Source (Nguồn): FurnitureCatalogModels/templates
- Namespace (Không gian tên): com.jke.templates
- Type (Loại): Template Design
- Mục (Add topology to palette) Thêm tô pô vào mục bảng màu: Đánh dấu chọn
- Sau đó nhấn Next.
Hình 22. Cửa sổ New Topology để tạo ra một mục trong bảng mầu
- Hình 23 cho thấy các giá trị cuối cùng và biểu tượng cho trang Add
Topology to Palette. Các giá trị quan trọng để thiết lập trên trang
này là:
- Label (Nhãn): Internet Information Server 6
- Stack (Ngăn xếp): Microsoft
- Maintain visual structure (Duy trì cấu trúc trực quan): Đánh dấu chọn
- Nhấn Finish.
Hình 23. Màn hình Add Topology to Palette
Nếu dòng chữ Welcome to the Topology Editor Help (Chào mừng bạn đến với Trợ giúp trình soạn thảo tô pô) xuất hiện trên sơ đồ của bạn, thì bạn bỏ nó đi bằng cách nhấn vào dấu X ở góc trên bên phải.
Tạo sơ đồ tô pô khuôn mẫu
Sơ đồ tô pô khuôn mẫu về cơ bản hành động giống như sơ đồ tô pô bình thường. Sự khác biệt chính là khi một ai đó sử dụng mục bảng mầu từ khuôm mẫu, thì một bản sao sâu, bảo toàn định dạng giao diện người dùng của toàn bộ sơ đồ được tạo ra và được đặt vào sơ đồ khác.
Tô pô ProductionDeployment tạo ra trước đó có các đơn vị cần thiết cho khuôn mẫu này.
- Bạn tìm đến sơ đồ ProductionDeployment và sao chép đơn vị Internet Information Server 6.0 bằng cách chọn nó. Sau đó nhấn chuột phải và từ trình đơn thả xuống, chọn Edit > Copy.
- Bạn quay trở lại sơ đồ Microsoft Internet Information Server 6, nhấn chuột phải, từ trình đơn thả xuống, bạn chọn Edit > Paste.
Hành động sao chép đã tạo ra cả đơn vị Internet Information Server 6.0 và đơn vị JKE Furniture Catalog Web App. Vì đây là khuôn mẫu chỉ cho riêng IIS, thì khuôn mẫu IIS không nên có đơn vị JKE Furniture Catalog Web App.
- Bạn chọn đơn vị ứng dụng Web và xóa nó khỏi tô pô khuôn mẫu bằng cách sử dụng tổ hợp phím CTRL+DEL.
Sau khi đơn vị ứng dụng web đã bị xoá, sơ đồ sẽ chỉ có một đơn vị duy nhất là Internet Information Server 6.0 và nó sẽ giống như trong hình 24.
Lưu ý::
Rational Software Architect phiên bản 7.5.1 có một lỗi nhỏ (được sửa trong phiên bản 7.5.4) với các khuôn mẫu kết thúc bằng số và dấu chấm (Ví dụ: 6.0). Vì vậy, để làm dễ dàng cho việc sử dụng các mục bảng mầu, bạn đổi lại tên của đơn vị chỉ là Internet Information Server 6.
Hình 24. Sơ đồ tô pô khuôn mẫu Internet Information Server 6
Việc tạo tô pô khuôn mẫu cho các thành phần web ASP.NET hoàn toàn tương tự như các bước này.
- Hãy tạo tô pô mới sử dụng các giá trị quan trọng sau:
- Name (Tên): MicrosoftASPDotNET2WebComponent
- Source (Nguồn): FurnitureCatalogModels/templates
- Namespace (Không gian tên): com.jke.templates
- Type (Loại): Template Design
- Add topology to palette item (Thêm tô pô vào mục bảng mầu): Đánh dấu chọn
- Label (Nhãn): ASP.NET 2.0 Web Component
- Stack (Ngăn xếp): Microsoft
- Maintain visual structure (Duy trì cấu trúc trực quan): Đánh dấu chọn
- Một lần nữa, tô pô ProductionDeployment có đơn vị cần thiết cho tô pô này, do đó, bạn tìm đến sơ đồ Production Deployment (triển khai sản xuất), sao chép đơn vị JKE Furniture Catalog Web Component từ sơ đồ và dán nó vào sơ đồ Microsoft ASP Dot NET2 Web Component.
Sự khác biệt lớn trong việc thu hoạch đơn vị này là đơn vị đó cần phải được đổi tên và các yêu cầu phải được điều chỉnh.
- Đổi tên đơn vị thành ASP.NET 2.0 Web Component.
- Sau khi đổi tên đơn vị, bạn đến tai phiếu Requirements của khung nhìn Properties. Đơn vị vẫn còn phụ thuộc vào cơ sở dữ liệu FURNDB. Vì bảng mầu khuôn mẫu này sẽ tạo ra các thành phần web ASP.NET 2.0 tổng quát, bạn xóa yêu cầu FURNDB bằng cách sử dụng nút Delete Requirement của khung nhìn Properties.
Sau khi thực hiện các thay đổi này, sơ đồ tô pô khuôn mẫu sẽ giống như hình 25.
Hình 25. Sơ đồ tô pô khuôn mẫu ASP.NET 2.0 Web Component
Bây giờ các khuôn mẫu sẵn sàng để sử dụng và các mục bảng màu có sẵn trong ngăn kéo các mở rộng của bảng màu cục bộ. Các khuôn mẫu này có thể được tái sử dụng ngay lập tức và được cập nhật sau này nếu bạn cần phải thực hiện các cải tiến theo thời gian. Mặc dù vậy, bạn phải nhớ rằng nếu khuôn mẫu được cập nhật, thì các đơn vị được tạo ra bởi mẫu trước đó không được cập nhật.
Nếu bạn chưa hoàn thành tất cả các bước của bài tập, thì bạn có thể tải về dự án Rational Software Architect ví dụ mẫu cho bài viết này (xem phần Tải về).
Tóm tắt
Tô pô triển khai nắm bắt cách phần mềm và phần cứng của một giải pháp sẽ được triển khai và được định cấu hình như thế nào. Sơ đồ tô pô triển khai là một cách tuyệt vời để chia sẻ thông tin giữa các đội phát triển ứng dụng và các đội cơ sở hạ tầng.
Tô pô triển khai có thể được tạo ra một cách nhanh chóng bằng cách sử dụng các khuôn mẫu được bao gồm trong sản phẩm Rational Software Architect. Bạn mất nhiều thời gian hơn một chút để tạo ra một tô pô triển khai khi lĩnh vực công nghệ không được cung cấp kèm theo, tuy nhiên, bạn có thể dễ dàng thu hoạch và chia sẻ các lĩnh vực này để các tô pô vật lý tương lai có thể được tạo ra một cách nhanh chóng.
Tải về
Tài nguyên
Học tập
- Ví dụ về tô pô vật lý: Ví dụ về tô pô vật lý: Mô hình tô pô triển khai của bài viết này ở định dạng trao đổi giữa các dự án. Mô hình này được tạo ra bằng cách sử dụng Rational Software Architect, phiên bản 7.5.4.
- Tìm hiểu thêm về sản phẩmRational Software Architect cho phần mềm WebSphere:
- Tìm hiểu thêm về bản Rational Software Architect Standard..
- Tìm hiểu về các ứng dụng khác trong sản phẩm Rational Software Delivery Platform của IBM, bao gồm các công cụ cộng tác cho các đội phát triển song song và phân tán về mặt địa lý, cùng với phần mềm chuyên dụng cho quản lý kiến trúc, quản lý tài sản, quản lý thay đổi và phát hành, quản lý các yêu cầu được tích hợp, quản lý quy trình và danh mục và quản lý chất lượng. Bạn có thể tìm thấy các hướng dẫn sử dụng sản phẩm, hướng dẫn cài đặt, và tài liệu khác tại Trung tâm Tài liệu trực tuyến của IBM Rational..
- Truy cập vào khu vực phần mềm Rational trên trang developerWorks để tìm các nguồn tài nguyên kỹ thuật và thực hành tốt nhất cho sản phẩm Rational Software Delivery Platform.
- Khám phá các khóa học trực tuyến Rational trên máy tính, trên web và có giảng viên hướng dẫn. Rèn luyện kỹ năng của bạn và tìm hiểu thêm về các công cụ Rational với các khóa học này, từ mức nhập môn đến nâng cao. Các khóa học trong danh mục này có sẵn để mua thông qua đào tạo trên máy tính hoặc đào tạo trên web. Ngoài ra, có một số khóa học "Bắt đầu" miễn phí.
- Đăng ký vào trang tin developerWorks của IBM, được cập nhật hàng tuần với các hướng dẫn, các bài viết, các phần tải về tốt nhất, các hoạt động cộng đồng, tin tức trên web và những sự kiện đáng chú ý nhất của developerWorks.
- Duyệt hiệu sách công nghệ để tìm các cuốn sách về chủ để này và về các chủ đề kỹ thuật khác.
Lấy sản phẩm và công nghệ
- Tải về phiên bản dùng thử của phần mềm Rational của IBM.
- Tải về các phiên bản đánh giá sản phẩm của IBM và có được các công cụ phát triển ứng dụng và các sản phẩm phần mềm trung gian của Rational®, Lotus®, Tivoli® và WebSphere®.
Thảo luận
- Tham gia vào các blog của trang developerWorks và tham gia vàocộng đồng developerWorks.
Bình luận
-
Vùng dữ liệu trên developerWorks
Khám phá các bài viết xoay quanh lĩnh vực dữ liệu, Quản lý hệ thống thông tin
-
Vùng mã nguồn mở trên developerWorks
Xem các bài viết về HTML, CSS, JavaScript,...
-
Điện toán đám mây
Tìm hiểu về điện toán đám mây

markdown:
Sơ đồ tô pô triển khai cho thấy cách phần mềm và phần cứng của giải pháp sẽ được triển khai và định cấu hình. Sơ đồ này không chỉ cung cấp một phương tiện truyền thông tuyệt vời để chia sẻ thông tin triển khai quan trọng giữa các thành viên trong nhóm cơ sở hạ tầng, mà nó còn là một phương tiện truyền thông tuyệt vời để cho nhóm phát triển và nhóm cơ sở hạ tầng chia sẻ thông tin với nhau.
Bài viết này cho thấy cách sử dụng Rational Software Architect của IBM để tạo ra sơ đồ tô pô triển khai. Ví dụ này được dựa trên một ứng dụng web .NET hư cấu của Microsoft chứ không phải là ứng dụng web JEE, bởi vì minh họa bằng .NET cho thấy cách tạo ra và thu lại được các đơn vị tô pô có thể tái sử dụng. Điều này không trình bày được trong kịch bản ứng dụng web JEE điển hình. Tuy nhiên, sau khi hoàn thành bài tập trong bài viết này, bạn sẽ có thể mô hình hóa việc triển khai vật lý của hoặc ứng dụng web JEE hoặc của ứng dụng .NET.
## Điều kiện cần có trước
Tác giả của bài viết này giả định rằng bạn đã quen với việc mô hình hóa tô pô. Nếu bạn không có kiến thức về vấn đề này, chúng tôi khuyên bạn nên xem đoạn video dài năm phút "Quản lý kiến trúc triển khai bằng trình soạn thảo tô pô” hoặc hoàn thành "Bài hướng dẫn lên kế hoạch triển khai bằng trình soạn thảo tô pô", cả hai đều được bao gồm trong hệ thống trợ giúp của Rational Software Architect.
Tác giả sử dụng Rational Software Architect cho phần mềm WebSphere, phiên bản 7.5.4, để tạo ra các ví dụ tô pô và các chỉ dẫn đó cũng áp dụng được cho Rational Software Architect Standard Edition phiên bản 7.5.4. Tuy nhiên, các bước tiến hành và các ảnh chụp màn hình sẽ hơi khác với các phiên bản trước đây của phiên bản 7.5. Mặc dù vậy, bạn sẽ có thể diễn dịch các bước tiến hành và hình chụp màn hình cho phiên bản cũ hơn.
## Nền bối cảnh
Bài viết này bàn về cách để mô hình hóa ứng dụng web hư cấu về danh mục đồ gỗ nội thất của hãng JKE. Theo bối cảnh thì danh mục đồ gỗ nội thất là một ứng dụng web .NET sử dụng cơ sở dữ liệu DB2 của IBM ở mặt sau (back-end). Tô pô triển khai được tạo ra trong ví dụ này giải thích cách triển khai ứng dụng này như thế nào trong môi trường sản xuất.
Thông thường, nhóm phát triển ứng dụng bắt đầu bằng cách tạo ra mô hình lôgic và sau đó lặp lại nhiều vòng thông qua các mô hình lôgic và vật lý cùng với nhau. Tuy nhiên, bài viết này chỉ tập trung vào việc tạo ra tô pô triển khai. Có nhiều lý do chính đáng mà bạn có thể tạo ra trước tiên tô pô triển khai, nhưng việc giải thích cách xác định sẽ bắt đầu mô hình hay tô pô từ mức nào là vượt ra ngoài phạm vi của bài viết này. Thay vào đó, bài tập này đề cập đến các cơ chế để tạo ra một tô pô triển khai.
## Tạo tô pô vật lý
Các mô hình tô pô cuả Rational Software Architect cần phải được lưu trữ trong một dự án. Như là một quy tắc chung, tô pô được lưu trữ cùng với các mô hình UML của giải pháp.
- Bạn hãy tạo một tô pô bằng cách chuyển sang phối cảnh Deployment và chọn File> New> Topology từ trình đơn chính.
Hình 1 chứa các giá trị được sử dụng cho tô pô triển khai của danh mục đồ gỗ nội thất của hãng JKE. Có bốn trường và giá trị mà bạn phải điền:
- Không gian tên (Namespace): com.jke.furniture.deployment
- Kiểu (Type): Triển khai
- Giao kết (Contract): Chuyển tất cả các đơn vị thành riêng theo mặc định (Make All Units Private By Default)
- Thêm tô pô vào bảng mầu (Add topology to palette): Không đánh dấu chọn (Unchecked)
##### Hình 1. Cửa sổ tô pô mới
![ Hình 1. Cửa sổ tô pô mới](image001.jpg)
Nói chung, trường Namespace sử dụng cấu trúc gói Java. Tô pô này là tô pô triển khai, do đó tên của gói kết thúc bằng từ deployment (triển khai). Quy ước đặt tên này không bắt buộc, nhưng rất hữu ích cho tính nhất quán.
Trường Contract được thiết lập là "Make All Units Private By Default" – Chuyển tất cả các đơn vị thành riêng theo mặc định, bởi vì đây là cách thực hành tốt nhất để làm theo khi tạo ra một tô pô triển khai. Tô pô triển khai là tô pô mức thấp nhất, vì vậy bằng cách thiết lập trường Contract là "Make All Units Private By Default", Rational Software Architect hiển thị tất cả các sự cố về xác nhận hợp lệ là lỗi chứ không phải là cảnh báo.
**Lưu ý:**
Cảnh báo được hiển thị như lỗi vì các cảnh báo có thể được thỏa mãn hoặc được giải quyết bằng cách nhập tô pô này vào tô pô khác, mà tô pô sau có thể giải quyết được. Tuy nhiên, nếu đơn vị được đánh dấu là "riêng", thì sau đó tất cả các vấn đề phải được sửa trong tô pô hiện tại, vì các đơn vị riêng không thể truy cập được khi chúng được nhập vào một tô pô khác. Sử dụng chính sách "riêng" trên tô pô làm cho tất cả các đơn vị trở thành riêng theo mặc định, nó biến cảnh báo thành các lỗi.
- Nhấn
**Finish.**
- Đọc phần trợ giúp khởi động nhanh "Chào mừng bạn đến trình soạn thảo tô pô" và sau đó tắt văn bản trợ giúp bằng cách nhấn vào dấu gạch chéo X ở góc trên bên phải.
Sau đó bạn sẽ có một tô pô triển khai rỗng, hiển thị một sơ đồ tô pô đơn lẻ có cùng tên với mô hình tô pô.
**Lưu ý:**
Trên ổ đĩa, tệp tin sơ đồ tách biệt với tệp tin tô pô. Khi bạn đang sử dụng hệ thống kiểm soát phiên bản, thì bạn cần phải đặt cả hai tệp tin vào hệ thống kiểm soát phiên bản.
### Mô hình hóa cơ sở dữ liệu DB2
Ứng dụng Danh mục đồ gỗ nội thất của hãng JKE lấy tất cả các thông tin của nó từ một cơ sở dữ liệu DB2 có tên là FURNDB. JKE đã tiêu chuẩn hóa ứng dụng trên DB2 phiên bản 8, do đó, các khuôn mẫu đơn vị tô pô bao gồm kèm theo có thể được sử dụng để mô hình hóa việc triển khai cơ sở dữ liệu.
Có hai cách để thêm đơn vị mới vào sơ đồ tô pô.
- Bạn có thể chọn các mẫu đơn vị từ bảng màu (Khuôn mẫu cơ sở dữ liệu DB2 ở trong ngăn kéo Configurations của bảng màu, phía dưới ngăn của DB2).
- Hoặc bạn có thể sử dụng tổ hợp phím tắt CTRL+T.
Nói chung, lựa chọn tổ hợp phím CTRL + T là cách nhanh nhất, bởi vì bạn có thể gõ tên của đơn vị. Điều này giúp bạn tiết kiệm thời gian tìm kiếm đơn vị đó bên trong các ngăn kéo bảng màu.
- Để tạo ra cơ sở dữ liệu DB2, bạn nhấn chuột vào sơ đồ tô pô mới được tạo ra và sau đó nhấn tổ hợp Ctrl+T.
- Khi cửa sổ thả xuống xuất hiện, gõ nhập *database (dấu hoa thị là một ký tự tìm kiếm đại diện).
- Khi bạn gõ nhập, hộp thoại sẽ lọc các đơn vị. Bạn chọn đơn vị cơ sở dữ liệu DB2 (xem hình 2).
##### Hình 2. Trình đơn thả xuống của tổ hợp CTRL+T
![ Hình 2. Trình đơn thả xuống của tổ hợp CTRL+T](image002.jpg)
- Sau khi đặt đơn vị DB2 trên sơ đồ tô pô, bạn đổi tên đơn vị này thành FURNDB bằng cách di con trỏ chuột trên đơn vị và nhấn vào biểu tượng hình bút chì. Trong cửa sổ bật lên, bạn để nguyên Link with Database Name (liên kết với tên cơ sở dữ liệu) được đánh dấu chọn.
**Mẹo:**
Nói chung, khi đổi tên đơn vị, hãy để nguyên thuộc tính Link với XXXX được đánh dấu chọn.
Bây giờ bạn có đơn vị biểu diễn cơ sở dữ liệu thực tế lưu trữ dữ liệu. Nếu bạn có kinh nghiệm sử dụng DB2, thì bạn đã biết rằng cơ sở dữ liệu cần phải được lưu trú trên một cá thể của DB2. Trong trường hợp bạn không biết, thì Rational Software Architect thông báo cho bạn về vấn đề này bằng cách báo lỗi về lưu trú. Bạn có thể thấy lỗi lưu trú này bằng di con trỏ lên trên dấu X màu đỏ ở góc dưới bên trái của đơn vị FURNDB.
**Mẹo:**
Khung nhìn Topology Status (Trạng thái tô pô), nằm ở giữa, bên dưới của phối cảnh theo mặc định, là một khung nhìn hữu ích, bởi vì nó hiển thị tất cả các vấn đề của sơ đồ. Khung nhìn này sẽ giúp bạn mô hình hóa thành công tô pô của bạn bằng cách hướng dẫn bạn thông qua việc sửa chữa mọi lỗi.
- Hãy tạo một đơn vị cá thể của DB2 phiên bản 8, hoặc bằng cách sử dụng các bảng màu hoặc bằng tùy chọn tổ hợp CTRL+T, và đặt tên đơn vị là FURNINST.
- Sau khi đổi tên đơn vị thành FURNINST, bạn kéo đơn vị FURNDB vào đơn vị FURNINST.
Các hành động kéo sẽ dẫn đến kết quả lưu trú đơn vị FURDB trên đơn vị FURNINST. Việc lưu trú sửa các vấn đề của đơn vị FURNDB và mối quan hệ lưu trú cho thấy rằng cơ sở dữ liệu chạy trong cá thể DB2.
Lưu ý rằng đơn vị FURNINST mới được tạo ra có một thông báo lỗi rằng cá thể DB2 cần phải được lưu trú tại phần cài đặt hệ thống DB2. Việc sửa lỗi này rất dễ:
- Đơn giản chỉ cần tạo ra một đơn vị hệ thống của DB2 phiên bản 8 bằng cách sử dụng bảng mầu hoặc tổ hợp CTRL+T và tạo ra mối quan hệ chủ chứa bằng cách kéo đơn vị FURNINST vào đơn vị hệ thống DB2 phiên bản 8 mới được tạo ra.
Sau khi tạo hệ thống DB2 phiên bản 8 và tạo ra chủ chứa cho cá thể DB2 FURNINST trên hệ thống, sơ đồ tô pô của bạn sẽ giống như hình 3.
##### Hình 3. Hệ thống DB2 đang chủ chứa cơ sở dữ liệu FURNDB
![ Hình 3. Hệ thống DB2 đang chủ chứa cơ sở dữ liệu FURNDB](image003.jpg)
Không giống như cơ sở dữ liệu FURNDB, mà vấn đề duy nhất của nó đã được giải quyết khi nó được lưu trú trên cá thể DB2 FURNINST, cá thể DB2 FURNINST vẫn còn có những vấn đề chưa được giải quyết. Tuy nhiên, điều này chấp nhận được vào lúc này, bởi vì các vấn đề sẽ được giải quyết sau khi tô pô triển khai được tiếp tục chú giải với bản triển khai DB2 lưu trú trên máy chủ của nó.
### Lưu trú cơ sở dữ liệu trên máy chủ Linux
Mục trên đã chú giải cho tô pô của bản cài đặt DB2 phiên bản 8, đang chủ chứa cơ sở dữ liệu FURNDB. Mục này sẽ chú giải máy chủ vật lý là chủ chứa bản cài đặt DB2 được chú giải ở trên. Tuy nhiên, mục này trước tiên sẽ chú giải máy chủ và sau đó làm cho nó có thể chứa bản cài đặt DB2.
### Chú giải máy chủ
Theo bối cảnh thì JKE Furniture chạy bản cài đặt DB2 của họ trên máy chủ Linux x86 dạng hộp đựng bánh pizza với CPU kép.
- Trên sơ đồ tô pô, bạn tạo một đơn vị cho các máy chủ x86 bằng cách sử dụng khuôn mẫu đơn vị máy chủ x86 (khuôm mẫu đó nằm trong ngăn kéo phần cứng của bảng mầu). JKE sử dụng hệ thống x của IBM, máy chủ 3450, do vậy bạn hãy đổi tên đơn vị của máy chủ x86 thành IBM x3450.
**Lưu ý:**
Các đơn vị máy chủ được đặt tên theo mô hình phần cứng thay vì tên máy chủ (hostname) của nó bởi vì tên máy chủ sẽ được chỉ rõ trong đơn vị hệ điều hành.
Theo mặc định, Rational Software Architect chú giải các máy chủ x86 là có một CPU duy nhất, do đó đơn vị mới được tạo ra cần phải được cập nhật để phản ánh sự việc là hãng đồ gỗ nội thất JKE có máy chủ có hai CPU. Số lượng của CPU được lưu trữ trong một thuộc tính về khả năng của đơn vị máy chủ x86.
- Để cập nhật thuộc tính này, bạn chọn mục IBM x3450 trên sơ đồ tô pô và
sau đó chuyển đến khung nhìn Properties. Tại khung nhìn Properties,
bạn chọn phiếu Capabilities. Bởi vì đơn vị máy chủ x86 chỉ có một khả
năng được đặt tên là máy chủ x86, nên thuộc tính của khả năng đó được
hiển thị theo mặc định. Bạn thiết lập giá trị của thuộc tính số lượng
của CPU là
2.
Hình 4 thể hiện rõ trình tự các bước:
- Đổi máy chủ X86 chuyển thành máy chủ IBM x3450
- Tai phiếu Properties
- Mục Capabilities
- Máy chủ X86
- Số lượng CPU: [gõ nhập] 2
##### Hình 4. Đường dẫn hướng để cập nhật số lượng CPU của máy chủ
![ Hình 4. Đường dẫn hướng để cập nhật số lượng CPU của máy chủ](image004.jpg)
- Theo mặc định, hãng đồ gỗ nội thất JKE luôn sử dụng 4GB bộ nhớ trong các máy chủ cơ sở dữ liệu của mình. Vì vậy, sau khi cập nhật thuộc tính số lượng CPU, bạn cuộn xuống ô của thuộc tính và cập nhật thuộc tính kích thước bộ nhớ lên 4GB.
Thông thường, hầu hết mọi người muốn nhìn thấy số lượng CPU và kích thước bộ nhớ của các máy chủ. Bắt đầu từ Rational Software Architect phiên bản 7.5.1 cho phép các thuộc tính được hiển thị trên sơ đồ.
- Để hiển thị các thuộc tính này trên sơ đồ tô pô, bạn chọn đơn vị IBM x3450 trên sơ đồ tô pô và sau đó chọn Diagram > Unit Details từ trình đơn.
- Tại cửa sổ Show Unit Presentation Details (Hiển thị các chi tiết của đơn vị trình bày), hãy đánh dấu chọn cho các thuộc tính CPU Count (số lượng CPU) và Memory Size (kích thước bộ nhớ) như thể hiện trong hình 5.
##### Hình 5. Khung nhìn Hiển thị các chi tiết của đơn vị trình bày
![ Hình 5. Khung nhìn Hiển thị các chi tiết của đơn vị trình bày](image005.jpg)
- Sau khi nhấn OK, sơ đồ sẽ hiển thị các thuộc tính trên máy chủ như minh họa tại hình 6.
##### Hình 6. Sơ đồ tô pô hiển thị 2 thuộc tính của máy chủ
![ Hình 6. Sơ đồ tô pô hiển thị 2 thuộc tính của máy chủ](image006.jpg)
Bây giờ bạn đã chú giải xong cấu hình của máy chủ vật lý, đã đến lúc để chú giải hệ điều hành được cài đặt trên máy chủ.
### Chú giải hệ điều hành
Hãng đồ gỗ nội thất JKE chạy máy chủ SUSE Linux.
- Tạo một đơn vị máy chủ Linux SUSE phiên bản 9 trên sơ đồ tô pô (sử dụng tùy chọn tổ hợp phím CTRL+T có thể sẽ là dễ nhất).
- Đặt tên cho đơn vị mới được tạo ra. Trong cửa sổ bật lên, để nguyên trường Link with Hostname:URI (liên kết tới tên máy chủ: URI) đã được đánh dấu chọn và tại trường Hostname, bạn gõ nhập furn-db.jke.com. Để trống trường URI.
**Lưu ý:**
Thuộc tính URI được sử dụng để xác định vị trí URI của ổ đĩa máy chủ UNIX, mà chúng tôi sẽ giả định là không quan trọng trong kịch bản hãng đồ gỗ nội thất JKE hư cấu này.
Đơn vị hệ điều hành mới được tạo ra cần phải được lưu trú trên một máy chủ.
- Lưu trú đơn vị hệ điều hành furn-db.jke.com trên máy chủ hệ thống x 3450 của IBM bằng cách kéo thả hệ điều hành lên máy chủ.
Ngăn xếp máy chủ furn db.jke.com vẫn báo lỗi và khi bạn di con trỏ chuột lên các dấu X mầu đỏ của ngăn xếp sẽ lộ ra là lỗi xuất phát từ đơn vị tài khoản người dùng gốc. Tài khoản người dùng gốc cần phải có mật khẩu được thiết lập của riêng nó. Tại hãng đồ gỗ nội thất JKE chỉ có các quản trị viên hệ thống mới biết mật khẩu gốc, do đó không cần phải xác định tài khoản người dùng gốc và chúng ta sẽ xóa nó khỏi tô pô.
**Lưu ý:**
Thay cho việc xóa đơn vị người sử dụng gốc, một lựa chọn khác là đánh dấu chọn đơn vị tài khoản người sử dụng gốc làm đơn vị tài khoản chung có thể chỉnh sửa, việc này thay đổi lỗi thành cảnh báo. Việc đánh dấu đơn vị thành đơn vị chung có thể chỉnh sửa cho thấy rằng các giá trị của đơn vị có thể được thỏa mãn sau này thông qua việc nhập khẩu tô pô.
- Xóa tài khoản người dùng gốc khỏi hệ điều hành bằng cách chọn nó và sau đó sử dụng tổ hợp phím CTRL+DEL. Tổ hợp phím này xóa người sử dụng gốc khỏi mô hình tô pô.
**Lưu ý:**
Chỉ sử dụng phím DEL sẽ chỉ xóa đơn vị khỏi sơ đồ, không phải là xóa đơn vị khỏi mô hình tô pô.
Bây giờ đơn vị máy chủ không có lỗi. Tuy nhiên, khi bạn nhìn vào khung nhìn Topology Status (Tình trạng mô hình tô pô) bạn sẽ thấy rằng có một lỗi về đơn vị chủ chứa.
- Tại khung nhìn Topology Status, hãy mở rộng Host Units (các đơn vị chủ chứa).
- Chọn lỗi (Unit ("DB2 System") must be hosted (Operating System) - Đơn vị ("hệ thống DB2") phải được lưu trú (Hệ điều hành). Bạn lưu ý rằng khi bạn làm điều này, bạn sẽ có bốn lựa chọn để sửa lỗi nhanh.
- Bạn hãy sửa các lỗi bằng cách nhấp đúp chuột vào mục: Host "DB2 System" on "furn-db.jke.com" on IBM x3450
Sau khi Rational Software Architect sửa lỗi, sơ đồ sẽ giống như hình 7.
##### Hình 7. Hệ thống DB2 được lưu trú trên furn-db.jke.com
![ Hình 7. Hệ thống DB2 được lưu trú trên furn-db.jke.com](image007.jpg)
Hình mũi tên kép trong sơ đồ là một ký pháp thay thế, nói rằng một đơn vị đang được lưu trú trên một đơn vị khác.
Ngăn xếp DB2 vẫn có một vài lỗi cần phải sửa.
- Bạn nhấn vào dấu X mầu đỏ của đơn vị FURNINST.
- Chọn lỗi “No admin users found in OS Host(FURNIST)” - Không tìm thấy người dùng quản trị trong máy chủ hệ điều hành Host(FURNIST) và nhấn đúp vào phần sửa lỗi nhanh “Create DB2 Instance Admin User” - Tạo người sử dụng quản trị cá thể DB2.
- Tại cửa sổ Create DB2 Instance Admin User, bạn gõ nhập db2furn trong trường Create DB2 Instance Admin User ID và thiết lập mật khẩu đơn giản, chẳng hạn như abc 123.
- Nhấn OK và lưu ý rằng Rational Software Architect tạo ra một tài khoản người dùng trong hệ điều hành và vẽ liên kết phụ thuộc giữa cá thể FURNINST của DB2 và tài khoản người sử dụng db2furn mới được tạo ra.
Khi di chuyển đến các lỗi khác, di con trỏ trên dấu X màu đỏ của hệ thống DB2 sẽ lộ ra thông tin rằng các mục của classpath được thiết lập thành đường dẫn của hệ điều hành Windows.
- Cập nhật từng giá trị của classpath với một tiền tố, chẳng hạn như /opt/IBM/db2v8.2/SQLLIB /, và sử dụng sửa lỗi nhanh cho từng lỗi.
**Lưu ý:**
Một lựa chọn khác để sửa lỗi thông qua các lỗi và hộp thoại sửa lỗi nhanh là chọn đơn vị hệ thống của DB2 và sau đó cập nhật các thuộc tính classpath tại các khả năng khác nhau của đơn vị tại khung nhìn Properties. Điều này cũng tương tự như những gì bạn đã làm khi cập nhật các thuộc tính số lượng CPU (CPU Count) và kích thước bộ nhớ (Memory Size) của máy chủ vật lý.
Sau khi sửa tất cả các lỗi classpath, tô pô sẽ không có lỗi nào nữa.
- Để có sự nhất quán, bạn kéo thả đơn vị của hệ thống DB2 vào đơn vị furn-db.jke.com.
Điều này sẽ cập nhật sơ đồ để tất cả các đơn vị được hiển thị trong một khung nhìn hình cây. Cấu trúc hình cây giúp giữ cho sơ đồ sáng sủa trong khi vẫn hiển thị rất nhiều thông tin. Sau khi kéo thả hệ thống DB2 vào đơn vị furn db.jke.com và thay đổi kích thước, sơ đồ sẽ giống như hình 8.
##### Hình 8. Máy chủ hệ thống x 3450 của IBM chủ chứa cơ sở dữ liệu DB2 trên hệ điều hành Linux
![ Hình 8. Máy chủ hệ thống x 3450 của IBM chủ chứa cơ sở dữ liệu DB2 trên hệ điều hành Linux](image008.jpg)
## Tạo các đơn vị cho ứng dụng Web ASP.NET
Sẽ luôn có các ứng dụng và lĩnh vực công nghệ mà Rational Software Architect không cung cấp các khuôn mẫu tô pô. Ví dụ: Phiên bản 7.5.4 không bao gồm các khuôn mẫu mô hình hóa tô pô cho các ứng dụng .NET của Microsoft.
Danh mục đồ gỗ nội thất của hãng JKE là một ứng dụng ASP.NET của Microsoft. Do đó, các đơn vị tô pô cần có để hỗ trợ việc mô hình hóa hệ thống .NET phải được tạo ra. Công việc này cần một ít thời gian, nhưng Rational Software Architect làm cho nó trở nên dễ dàng để tái sử dụng và chia sẻ các đơn vị mà bạn thực hiện.
Phần này tập trung vào việc tạo ra các đơn vị tô pô mới cần thiết để xử lý nền tảng ASP.NET. Phần sau giải thích cách để làm cho các đơn vị có thể tái sử dụng được.
Hãng đồ gỗ nội thất JKE lưu trú các ứng dụng ASP.NET của mình trên máy chủ Microsoft Windows 2003. Điều này có nghĩa là danh mục đồ gỗ nội thất của JKE sẽ là một ứng dụng tương thích với ASP.NET 2.0 chạy trong máy chủ thông tin Internet của Microsoft (Internet Information Server - IIS) phiên bản 6.0.
### Tạo đơn vị IIS 6.0
- Để tạo đơn vị IIS 6.0, bạn tạo một đơn vị cài đặt phần mềm mới trên sơ đồ tô pô bằng cách sử dụng tổ hợp phím CTRL+T hoặc bảng mầu.
- Tạo tên của đơn vị bằng cách nhấn vào biểu tượng hình bút chì. Trong cửa sổ bật lên, bạn đánh dấu chọn Link with Product Name:Version String:Release:Major Version:Modifier.
- Thiết lập các giá trị mới của cửa sổ bật lên với các giá trị sau:
**Product Name (Tên sản phẩm):**Internet Information Server **Version string (Chuỗi phiên bản):**6.0 **Major Version (Phiên bản chính):**6
##### Hình 9. Cửa sổ bật lên của Software Install
![ Hình 9. Cửa sổ bật lên của Software Install](image009.jpg)
- Theo mặc định, đơn vị mới tạo ra được gọi là "SoftwareInstallUnit." Để thay đổi tên của đơn vị, bạn chọn đơn vị mới và sau đó chọn mục trình đơn Diagram > Unit Style.
- Tại cửa sổ Unit Style, bạn cập nhật giá trị trong trường tiêu đề Unit là Internet Information Server 6.0, như trong hình 10 và sau đó nhấn OK .
##### Hình 10. Cửa sổ Unit Style
![ Hình 10. Cửa sổ Unit Style](image010.jpg)
Bây giờ đơn vị phản ánh chính xác phần mềm từ bên ngoài, điều đó có nghĩa là, từ phối cảnh trực quan của sơ đồ thì đơn vị có vẻ đúng. Tuy nhiên, sức mạnh của việc sử dụng Rational Software Architect để mô hình hóa các đơn vị tô pô là ở chỗ các đơn vị biết các yêu cầu và khả năng của mình là gì. Vì vậy, các bước tiếp theo liên quan đến việc xác định các yêu cầu và khả năng của IIS 6.0.
### Chú giải các yêu cầu và khả năng của IIS
Khi di con trỏ chuột lên trên chữ X màu đỏ của đơn vị IIS 6.0 sẽ lộ ra thông tin rằng đơn vị có yêu cầu được lưu trú trên hệ điều hành. Mặc dù yêu cầu này là đúng theo nghĩa tổng quát, nhưng bạn phải lưu ý rằng có một sửa lỗi nhanh để lưu trú IIS 6.0 trên máy chủ Linux. Sửa lỗi nhanh này thực sự không hợp lệ, do đó yêu cầu lưu trú của đơn vị cần được tinh chỉnh để phản ánh rằng IIS cần phải được lưu trú trên hệ điều hành Windows (và như thế, ai đó ít kinh nghiệm hơn sẽ không vô tình lập kế hoạch để lưu trú IIS trên máy chủ Linux).
- Cập nhật yêu cầu hệ điều hành bằng cách chọn đơn vị IIS 6.0 và sau đó, tại khung nhìn Properties, bạn chọn tai phiếu Requirements.
- Chọn yêu cầu Host on an Operating System và nhấp vào nút Type Selector (nút có hình bầu dục, hoặc có dấu ba chấm, ở phía bên phải trường thuộc tính của Type).
- Tại hộp thoại Set Requirement Type, bạn chọn kiểu os.WindowsOperatingSystem.
Hình 11 là hình chụp màn hình của quá trình này và nút Type Selector được làm nổi bật bằng vòng tròn mầu đỏ.
##### Hình 11. Cập nhật yêu cầu hệ điều hành là Windows
![ Hình 11. Cập nhật yêu cầu hệ điều hành là Windows](image011.jpg)
- Sau khi cập nhật thuộc tính Type của yêu cầu, bạn cập nhật thuộc tính Caption là "Host on a Windows Operating System" (Lưu trú trên hệ điều hành Windows).
Bây giờ khi di con trỏ chuột lên trên dấu X màu đỏ của đơn vị thì bạn sẽ thấy thông báo lỗi đã được cập nhật và sửa lỗi nhanh bằng cách lưu trú IIS 6.0 trên máy chủ Linux không còn xuất hiện nữa.
Các yêu cầu của IIS 6.0 có thể được tinh chỉnh tiếp để phản ánh các phiên bản hệ điều hành được hỗ trợ và để không có cá thể IIS khác được cài đặt trên cùng một máy chủ ấy. Tuy nhiên, bài viết này sẽ không bàn đến các chi tiết đó. Đối với mục đích của ta, chỉ cần yêu cầu hệ điều hành Window là đủ.
Phần tiếp theo của đơn vị IIS 6.0 cần phải được cập nhật là các khả năng của đơn vị này. IIS 6.0 sẽ chủ chứa ứng dụng Web ASP.NET phiên bản 2.0. Để chú giải rằng ứng dụng Danh mục đồ gỗ nội thất của hãng JKE chạy bên trong IIS, thì đơn vị IIS 6.0 cần chú giải khả năng của nó để chủ chứa các ứng dụng ASP.NET.
- Giả sử rằng đơn vị IIS 6.0 vẫn được chọn trong sơ đồ, tại khung nhìn
Properties bạn tìm đến tai phiếu
**Capabilities**. Bạn thêm khả năng mới bằng cách sử dụng nút Add Capability của khung nhìn Property và, tại cửa sổ Add Capability bạn chọn core.Capability như trong hình 12.
##### Hình 12. Thêm khả năng lõi
![ Hình 12. Thêm khả năng lõi](image012.jpg)
- Sau khi tạo khả năng, bạn thiết lập lời chú thích (Caption) của khả năng là "ASP.NET Runtime" và chọn mục hosting (chủ chứa) từ trường thả xuống Link type (kiểu kết nối).
- Để làm cho khả năng này có thể nhận dạng được một cách duy nhất để các đơn vị khác cũng có thể yêu cầu nó, bạn hãy nhấn vào tai phiếu phụ Stereotypes và thêm khuôn mẫu có tên là ASP.NET Runtime.
Hình 13 cho thấy các bước điều hướng cần thiết.
##### Hình 13. Thêm khuôn mẫu vào khả năng
![ Hình 13. Thêm khuôn mẫu vào khả năng](image013.jpg)
- Sau khi thêm khuôn mẫu, bạn quay trở lại tai phiếu phụ Main và thêm một thuộc tính bằng cách nhấn vào nút Customize Attributes (Tùy chỉnh thuộc tính) của khung nhìn Property.
- Đặt tên thuộc tính mới là Version như trong hình 14.
- Bạn phải để nguyên kiểu của thuộc tính là String (chuỗi).
##### Hình 14. Cửa sổ Customize Attributes
![ Hình 14. Cửa sổ Customize Attributes](image014.jpg)
- Sau khi bạn nhấn vào nút OK của hộp thoại Customize Attributes, bảng khả năng sẽ hiển thị các trường mục nhập cho thuộc tính mới tạo ra.
- Thiết đặt giá trị của thuộc tính Version (phiên bản) là 2.0.
Sau khi bạn đã hoàn thành các cập nhật này, các thuộc tính môi trường thời gian chạy thực của ASP.NET sẽ giống như hình 15.
##### Hình 15. Các khả năng của môi trường thời gian chạy thực ASP.NET
![ Hình 15. Các khả năng của môi trường thời gian chạy thực ASP.NET](image015.jpg)
Giống như các yêu cầu, các khả năng có thể được chú giải thêm nữa, nhưng bây giờ các khả năng đã được xác định đủ để cho phép chú giải ứng dụng danh mục đồ gỗ nội thất của hãng JKE.
### Tạo đơn vị cho ứng dụng web của hãng JKE
- Bạn tạo đơn vị Software Install (cài đặt phần mềm) mới bằng cách sử dụng tổ hợp phím CTRL+T hoặc bảng mầu, và đặt tên nó là JKE Furniture Catalog Web App bằng cách sử dụng biểu tượng hình bút chì và liên kết tên đó tới tên sản phẩm như bạn đã làm trước đây với IIS.
- Bằng cách sử dụng các bước tương tự như đối với đơn vị IIS 6.0, bạn cập nhật tiêu đề của đơn vị là ASP.NET 2.0 Web Component.
Sơ đồ của bạn bây giờ trông giống như Hình 16.
##### Hình 16. Ứng dụng web mới được tạo ra cho danh mục đồ gỗ nội thất của hãng JKE
![ Hình 16. Ứng dụng web mới được tạo ra cho danh mục đồ gỗ nội thất của hãng JKE](image016.jpg)
Bây giờ vẻ bên ngoài của ứng dụng web của hãng JKE đã ổn. Tuy nhiên, các yêu cầu của nó cần phải được cập nhật để phản ánh các yêu cầu về môi trường thời gian chạy thực của ứng dụng.
- Bạn chọn JKE Furniture Catalog Web App trong sơ đồ.
- Sau đó, tại khung nhìn Properties, bạn chọn tai phiếu Requirements.
Yêu cầu về lưu trú của đơn vị cần được cập nhật để phản ánh yêu cầu của môi trường thời gian chạy thực ASP.NET.
- Bạn bắt đầu bằng cách thay đổi lời chú thích của yêu cầu " Host on an Operating System" thành Host on an ASP.NET Runtime.
- Bạn cũng thay đổi thuộc tính Type thành core.Capability.
Nói chung, bây giờ ứng dụng Web đang yêu cầu đơn vị IIS 6.0 một phần, bởi vì kiểu của yêu cầu đã khớp với kiểu của khả năng của đơn vị IIS 6.0 (core.Capability). Tuy nhiên, yêu cầu về lưu trú cần phải được tinh chỉnh tiếp bằng cách sử dụng các ràng buộc.
- Vẫn tại yêu cầu "Host on an ASP.NET Runtime", bạn nhấn vào tai phiếu phụ Constraints (các ràng buộc).
- Thêm ràng buộc Stereotype (bản mẫu) bằng cách sử dụng nút Add Constraint.
- Thiết lập các giá trị của ràng buộc mới như sau:
**Caption (lời chú thích):**Requires ASP.NET Runtime **Includes (bao gồm):**ASP.NET Runtime
- Bạn thêm ràng buộc thứ hai của một ràng buộc Equals bằng cách sử dụng nút Add Constraint.
- Thiết lập các giá trị ràng buộc mới như sau:
**Attribute (thuộc tính):**Version **Caption (lời chú thích):**.NET 2.0 **Value (giá trị):**2.0
Các ràng buộc này cũng giống như các giá trị cho đơn vị IIS 6.0. Tại hình 17 các lần nhấn chuột phải thực hiện được tô rõ bằng các vòng tròn mầu đỏ và cho thấy các ràng buộc.
##### Hình 17. Các ràng buộc môi trường thời gian chạy thực ASP.NET
![ Hình 17. Các ràng buộc môi trường thời gian chạy thực ASP.NET](image017.jpg)
Bây giờ bạn đã đáp ứng được yêu cầu để đảm bảo rằng các thành phần web ASP.NET được lưu trú trên (đơn vị) máy chủ IIS.
### Chú giải yêu cầu về cơ sở dữ liệu
Ứng dụng JKE cũng sử dụng dữ liệu từ cơ sở dữ liệu FURNDB, vì vậy bước tiếp theo là chú giải yêu cầu này.
Bạn có thể tạo ra bằng cách thủ công các yêu cầu và khả năng tương ứng như bạn đã làm cho môi trường thời gian chạy thực ASP.NET, nhưng có một cách dễ dàng hơn để tạo ra các phụ thuộc tương ứng.
**Mẹo:**
Bạn có thể định cấu hình cho Rational Software Architect để tự động tạo ra và so khớp các phụ thuộc giữa một yêu cầu đơn lẻ và khả năng tại phần Topology Editor (trình biên tập tô pô) của mục Preferences (các ưu tiên). Bạn chỉ cần đánh dấu chọn trường Create a link automatically when only one match exists (Tạo liên kết tự động khi chỉ có một cái khớp đúng). Chúng tôi khuyến cáo bạn đánh dấu chọn trường này để tránh một khiếm khuyết đã biết của phiên bản 7.5.4.
- Tại khung nhìn Palette (bảng mầu), bạn chọn công cụ Dependency Link (liên kết phụ thuộc) và vẽ một liên kết từ đơn vị JKE Furniture Web App đến đơn vị FURNDB. Rational Software Architect sẽ báo rằng không có so khớp, nhưng sau khi bạn nhả chuột, hộp thoại liên kết phụ thuộc sẽ hiện ra.
- Tại cột Source Unit(s) (đơn vị nguồn), bạn chọn JKE Furniture Catalog Web App và nhấn nút Create Both (tạo cả hai đường dẫn).
Hình 18 cho thấy đường dẫn hướng.
##### Hình 18. Tạo liên kết phụ thuộc
![ Hình 18. Tạo liên kết phụ thuộc](image018.jpg)
- Sau khi tạo ra yêu cầu và khả năng khớp nhau, bạn chọn yêu cầu mới được tạo ra ở bên trái và nhấp vào nút Edit Properties (chỉnh sửa thuộc tính).
- Đổi tên yêu cầu thành Requires FURNDB, và thêm ràng buộc bản mẫu cho FURNDB.
- Sau đó đổi lại tên của khả năng bằng cách chọn khả năng ở bên phải và nhấn vào nút Edit Properties. Hộp thoại Properties của khả năng sẽ mở ra tại cùng vị trí như hộp thoại yêu cầu. Đổi tên khả năng thành Provides FURNDB và sau đó nhấn OK trong hộp thoại Create Dependency Link.
Sau khi hoàn thành hộp thoại, sơ đồ sẽ có lỗi (xem hình 19).
##### Hình 19. Ứng dụng web với các lỗi phụ thuộc
![ Hình 19. Ứng dụng web với các lỗi phụ thuộc](image019.jpg)
- Nhấn vào lỗi liên kết phụ thuộc và chọn sửa lỗi nhanh sau: Add missing stereotypes to capability "Provides FURNDB" Thêm khuôn mẫu bị thiếu vào " Provides FURNDB"
Bây giờ tất cả các yêu cầu cho ứng dụng web Danh mục đồ gỗ nội thất của hãng JKE đã được chú giải.
- Di con trỏ của chuột lên trên chữ X màu đỏ của đơn vị sẽ hiện chỉ một lỗi. Bằng cách sử dụng các sửa lỗi nhanh, hãy lưu trú ứng dụng web Danh mục đồ gỗ nội thất của hãng JKE trên IIS 6.0.
Sau khi sử dụng các sửa lỗi nhanh, sơ đồ sẽ giống như Hình 20.
##### Hình 20. Ứng dụng web Danh mục đồ gỗ nội thất của hãng JKE được lưu trú trên ISS 6.0 và phụ thuộc vào FURNDB
![ Hình 20. Ứng dụng web Danh mục đồ gỗ nội thất của hãng JKE được lưu trú trên ISS 6.0 và phụ thuộc vào FURNDB](image020.jpg)
### Lưu trú máy chủ ASP.NET trên máy chủ Windows
Bây giờ bạn đã chú giải xong ứng dụng danh mục trong tô pô. Bước cuối cùng là chú giải ứng dụng đó được lưu trú trên máy chủ Windows, nơi mà nó sẽ chạy.
Các bước của việc chú giải máy chủ và hệ điều hành của nó được mô tả trong phần Lưu trú cơ sở dữ liệu trên máy chủ Linux. Vì vậy, phần này sẽ chỉ giải thích các bước một cách ngắn gọn, xin xem phần trước để biết chi tiết.
Hãng đồ gỗ nội thất JKE chạy các ứng dụng web của mình trên các máy chủ vật lý tương tự như các máy chủ cơ sở dữ liệu.
- Bạn hãy tạo một đơn vị máy chủ x86 và đặt tên là IBM x3450. Thiết đặt CPU Count (số lượng CPU) của máy chủ là 2 và bộ nhớ là 2GB và sau đó cập nhật các chi tiết trình bày của đơn vị sao cho hai thuộc tính này được hiển thị trên sơ đồ.
- Tiếp theo, bạn tạo một đơn vị Windows Server 2003 và thiết lập thuộc tính tên máy chủ của nó là "furn-www.jke.com ". Người sử dụng Administrator của đơn vị Windows Server có lỗi, bởi vì mật khẩu không được thiết lập, tuy nhiên, bởi vì các tài khoản người dùng không quan trọng đối với tô pô này, chỉ cần xóa tất cả các đơn vị tài khoản người sử dụng và nhóm người sử dụng khỏi đơn vị Windows Server.
- Sau khi xóa các người sử dụng và nhóm người sử dụng, bạn kéo thả đơn vị furn-www.jke.com vào máy chủ IBM x3450 mới được tạo ra.
- Sau đó kéo thả đơn vị Internet Information Server 6.0 vào đơn vị Windows Server 2003 bây giờ được lồng bên ngoài.
- Sau đó, kéo thả đơn vị JKE Furniture Catalog Web App vào đơn vị Internet Information Server 6.0.
Tại thời điểm này, tô pô triển khai của bạn sẽ không có lỗi nào và được hoàn tất. Sơ đồ cuối cùng sẽ giống như hình 21.
##### Hình 21. Mô hình vận hành vật lý của ứng dụng đã hoàn tất
![ Hình 21. Mô hình vận hành vật lý của ứng dụng đã hoàn tất](image021.jpg)
## Tạo mục Palette (bảng mầu) cho đơn vị máy chủ ASP.NET
Sơ đồ triển khai tô pô đã hoàn tất. Các bước chú giải khả năng và yêu cầu của đơn vị ASP.NET cần phải tốn một chút thời gian, bởi vì phần mềm không bao gồm các khuôn mẫu cho miền .NET. Tuy nhiên, Rational Software Architect làm cho dễ dàng hơn khi thu hoạch các đơn vị có thể sử dụng lại được và chia sẻ chúng như là các mục của bảng màu cho người khác sử dụng.
Cách dễ dàng nhất để thu hoạch và đưa một đơn vị lên bảng mầu để khuyến khích sử dụng là nhấn chuột phải vào đơn vị đó và từ trình đơn thả xuống, bạn chọn mục trình đơn Add to Palette. Tuy nhiên, cách tốt hơn để thu hoạch và chia sẻ các đơn vị là sử dụng tô pô khuôn mẫu. Các tô pô khuôn mẫu tốt hơn bởi vì tô pô khuôn mẫu có thể được lưu trữ và chia sẻ thông qua hệ thống kiểm soát phiên bản hoặc thông qua Rational Asset Manager của IBM (trình quản lý tài sản Rational). Trong phần này, bạn sẽ tạo ra hai tô pô khuôn mẫu: một cho đơn vị Internet Information Server 6.0 và một cho đơn vị thành phần web của ASP.NET 2.0. Mỗi khuôn mẫu sẽ dẫn đến kết quả là một mục bảng mầu mà những người khác có thể tái sử dụng.
### Tạo khuôn mẫu
- Để tạo khuôn mẫu, bạn hãy tạo tô pô mới từ các mục trình đơn File>
New> Topology. Hình 22 cho thấy các giá trị tại cửa sổ New
Topology. Đây là những giá trị quan trọng phải thiết lập:
**Name (Tên):**MicrosoftInternetInformationServer6 **Source (Nguồn):**FurnitureCatalogModels/templates **Namespace (Không gian tên):**com.jke.templates **Type (Loại):**Template Design **Mục (Add topology to palette) Thêm tô pô vào mục bảng màu:**Đánh dấu chọn
- Sau đó nhấn
**Next**.
##### Hình 22. Cửa sổ New Topology để tạo ra một mục trong bảng mầu
![ Hình 22. Cửa sổ New Topology để tạo ra một mục trong bảng mầu](image022.jpg)
- Hình 23 cho thấy các giá trị cuối cùng và biểu tượng cho trang Add
Topology to Palette. Các giá trị quan trọng để thiết lập trên trang
này là:
**Label (Nhãn):**Internet Information Server 6 **Stack (Ngăn xếp):**Microsoft **Maintain visual structure (Duy trì cấu trúc trực quan):**Đánh dấu chọn
- Nhấn
**Finish**.
##### Hình 23. Màn hình Add Topology to Palette
![ Hình 23. Màn hình Add Topology to Palette](image023.jpg)
Nếu dòng chữ Welcome to the Topology Editor Help (Chào mừng bạn đến với Trợ giúp trình soạn thảo tô pô) xuất hiện trên sơ đồ của bạn, thì bạn bỏ nó đi bằng cách nhấn vào dấu X ở góc trên bên phải.
### Tạo sơ đồ tô pô khuôn mẫu
Sơ đồ tô pô khuôn mẫu về cơ bản hành động giống như sơ đồ tô pô bình thường. Sự khác biệt chính là khi một ai đó sử dụng mục bảng mầu từ khuôm mẫu, thì một bản sao sâu, bảo toàn định dạng giao diện người dùng của toàn bộ sơ đồ được tạo ra và được đặt vào sơ đồ khác.
Tô pô ProductionDeployment tạo ra trước đó có các đơn vị cần thiết cho khuôn mẫu này.
- Bạn tìm đến sơ đồ ProductionDeployment và sao chép đơn vị Internet Information Server 6.0 bằng cách chọn nó. Sau đó nhấn chuột phải và từ trình đơn thả xuống, chọn Edit > Copy.
- Bạn quay trở lại sơ đồ Microsoft Internet Information Server 6, nhấn chuột phải, từ trình đơn thả xuống, bạn chọn Edit > Paste.
Hành động sao chép đã tạo ra cả đơn vị Internet Information Server 6.0 và đơn vị JKE Furniture Catalog Web App. Vì đây là khuôn mẫu chỉ cho riêng IIS, thì khuôn mẫu IIS không nên có đơn vị JKE Furniture Catalog Web App.
- Bạn chọn đơn vị ứng dụng Web và xóa nó khỏi tô pô khuôn mẫu bằng cách sử dụng tổ hợp phím CTRL+DEL.
Sau khi đơn vị ứng dụng web đã bị xoá, sơ đồ sẽ chỉ có một đơn vị duy nhất là Internet Information Server 6.0 và nó sẽ giống như trong hình 24.
**Lưu ý::**
Rational Software Architect phiên bản 7.5.1 có một lỗi nhỏ (được sửa trong phiên bản 7.5.4) với các khuôn mẫu kết thúc bằng số và dấu chấm (Ví dụ: 6.0). Vì vậy, để làm dễ dàng cho việc sử dụng các mục bảng mầu, bạn đổi lại tên của đơn vị chỉ là Internet Information Server 6.
##### Hình 24. Sơ đồ tô pô khuôn mẫu Internet Information Server 6
![ Hình 24. Sơ đồ tô pô khuôn mẫu Internet Information Server 6](image024.jpg)
Việc tạo tô pô khuôn mẫu cho các thành phần web ASP.NET hoàn toàn tương tự như các bước này.
- Hãy tạo tô pô mới sử dụng các giá trị quan trọng sau:
**Name (Tên):**MicrosoftASPDotNET2WebComponent **Source (Nguồn):**FurnitureCatalogModels/templates **Namespace (Không gian tên):**com.jke.templates **Type (Loại):**Template Design **Add topology to palette item (Thêm tô pô vào mục bảng mầu):**Đánh dấu chọn **Label (Nhãn):**ASP.NET 2.0 Web Component **Stack (Ngăn xếp):**Microsoft **Maintain visual structure (Duy trì cấu trúc trực quan):**Đánh dấu chọn
- Một lần nữa, tô pô ProductionDeployment có đơn vị cần thiết cho tô pô này, do đó, bạn tìm đến sơ đồ Production Deployment (triển khai sản xuất), sao chép đơn vị JKE Furniture Catalog Web Component từ sơ đồ và dán nó vào sơ đồ Microsoft ASP Dot NET2 Web Component.
Sự khác biệt lớn trong việc thu hoạch đơn vị này là đơn vị đó cần phải được đổi tên và các yêu cầu phải được điều chỉnh.
- Đổi tên đơn vị thành ASP.NET 2.0 Web Component.
- Sau khi đổi tên đơn vị, bạn đến tai phiếu Requirements của khung nhìn Properties. Đơn vị vẫn còn phụ thuộc vào cơ sở dữ liệu FURNDB. Vì bảng mầu khuôn mẫu này sẽ tạo ra các thành phần web ASP.NET 2.0 tổng quát, bạn xóa yêu cầu FURNDB bằng cách sử dụng nút Delete Requirement của khung nhìn Properties.
Sau khi thực hiện các thay đổi này, sơ đồ tô pô khuôn mẫu sẽ giống như hình 25.
##### Hình 25. Sơ đồ tô pô khuôn mẫu ASP.NET 2.0 Web Component
![ Hình 25. Sơ đồ tô pô khuôn mẫu ASP.NET 2.0 Web Component](image025.jpg)
Bây giờ các khuôn mẫu sẵn sàng để sử dụng và các mục bảng màu có sẵn trong ngăn kéo các mở rộng của bảng màu cục bộ. Các khuôn mẫu này có thể được tái sử dụng ngay lập tức và được cập nhật sau này nếu bạn cần phải thực hiện các cải tiến theo thời gian. Mặc dù vậy, bạn phải nhớ rằng nếu khuôn mẫu được cập nhật, thì các đơn vị được tạo ra bởi mẫu trước đó không được cập nhật.
Nếu bạn chưa hoàn thành tất cả các bước của bài tập, thì bạn có thể tải về dự án Rational Software Architect ví dụ mẫu cho bài viết này (xem phần Tải về).
## Tóm tắt
Tô pô triển khai nắm bắt cách phần mềm và phần cứng của một giải pháp sẽ được triển khai và được định cấu hình như thế nào. Sơ đồ tô pô triển khai là một cách tuyệt vời để chia sẻ thông tin giữa các đội phát triển ứng dụng và các đội cơ sở hạ tầng.
Tô pô triển khai có thể được tạo ra một cách nhanh chóng bằng cách sử dụng các khuôn mẫu được bao gồm trong sản phẩm Rational Software Architect. Bạn mất nhiều thời gian hơn một chút để tạo ra một tô pô triển khai khi lĩnh vực công nghệ không được cung cấp kèm theo, tuy nhiên, bạn có thể dễ dàng thu hoạch và chia sẻ các lĩnh vực này để các tô pô vật lý tương lai có thể được tạo ra một cách nhanh chóng.
## Tải về
|Mô tả||Tên||Kích thước|
|RSA project in this article|
## Tài nguyên
### Học tập
**Ví dụ về tô pô vật lý:**Ví dụ về tô pô vật lý: Mô hình tô pô triển khai của bài viết này ở định dạng trao đổi giữa các dự án. Mô hình này được tạo ra bằng cách sử dụng Rational Software Architect, phiên bản 7.5.4.
- Tìm hiểu thêm về sản phẩm
[Rational Software Architect cho phần mềm WebSphere](http://www.ibm.com/developerworks/rational?S_TACT=105AGY75):
- Tìm hiểu thêm về
[bản Rational Software Architect Standard.](http://publib.boulder.ibm.com/infocenter/rsasehlp/v7r5m0/index.jsp?topic=/com.ibm.xtools.installation.rsase.doc/topics/readme_75.html).
- Tìm hiểu về các ứng dụng khác trong
[sản phẩm Rational Software Delivery Platform của IBM](http://www.ibm.com/software/info/developer/index.html), bao gồm các công cụ cộng tác cho các đội phát triển song song và phân tán về mặt địa lý, cùng với phần mềm chuyên dụng cho quản lý kiến trúc, quản lý tài sản, quản lý thay đổi và phát hành, quản lý các yêu cầu được tích hợp, quản lý quy trình và danh mục và quản lý chất lượng. Bạn có thể tìm thấy các hướng dẫn sử dụng sản phẩm, hướng dẫn cài đặt, và tài liệu khác tại [Trung tâm Tài liệu trực tuyến của IBM Rational.](http://www.ibm.com/software/rational/support/documentation/).
- Truy cập vào
[khu vực phần mềm Rational trên trang developerWorks](http://www.ibm.com/developerworks/rational?S_TACT=105AGY75)để tìm các nguồn tài nguyên kỹ thuật và thực hành tốt nhất cho sản phẩm Rational Software Delivery Platform.
- Khám phá
[các khóa học trực tuyến Rational trên máy tính, trên web và có giảng viên hướng dẫn](http://www.ibm.com/training/us/catalog/rational). Rèn luyện kỹ năng của bạn và tìm hiểu thêm về các công cụ Rational với các khóa học này, từ mức nhập môn đến nâng cao. Các khóa học trong danh mục này có sẵn để mua thông qua đào tạo trên máy tính hoặc đào tạo trên web. Ngoài ra, có một số khóa học "Bắt đầu" miễn phí.
- Đăng ký vào
[trang tin developerWorks của IBM](https://www.ibm.com/developerworks/newsletter/?S_TACT=105AGY75), được cập nhật hàng tuần với các hướng dẫn, các bài viết, các phần tải về tốt nhất, các hoạt động cộng đồng, tin tức trên web và những sự kiện đáng chú ý nhất của developerWorks.
- Duyệt
[hiệu sách công nghệ](http://www.ibm.com/developerworks/apps/SendTo?bookstore=safari&S_TACT=105AGY75)để tìm các cuốn sách về chủ để này và về các chủ đề kỹ thuật khác.
### Lấy sản phẩm và công nghệ
- Tải về
[phiên bản dùng thử của phần mềm Rational của IBM](http://www.ibm.com/developerworks/downloads/?S_TACT=105AGY75).
- Tải về
[các phiên bản đánh giá sản phẩm của IBM](http://www.ibm.com/developerworks/downloads/?S_TACT=105AGY75)và có được các công cụ phát triển ứng dụng và các sản phẩm phần mềm trung gian của Rational®, Lotus®, Tivoli® và WebSphere®.
### Thảo luận
- Tham gia vào
[các blog của trang developerWorks](http://www.ibm.com/developerworks/blogs/?S_TACT=105AGY75)và tham gia vào [cộng đồng developerWorks](http://www.ibm.com/developerworks/community?S_TACT=105AGY75).
## Bình luận
[Vùng dữ liệu trên developerWorks](http://www.ibm.com/developerworks/vn/views/data/libraryview.jsp)
Khám phá các bài viết xoay quanh lĩnh vực dữ liệu, Quản lý hệ thống thông tin
[Vùng mã nguồn mở trên developerWorks](http://www.ibm.com/developerworks/vn/views/opensource/libraryview.jsp)
Xem các bài viết về HTML, CSS, JavaScript,...
[Điện toán đám mây](http://www.ibm.com/developerworks/vn/views/cloud/libraryview.jsp)
Tìm hiểu về điện toán đám mây

Content-Language: en-US


text:
CSDN GROUP
+ Để hiểu được giá trị của một năm, hãy nói chuyện với một sinh viên vừa thi hỏng một kỳ thi quan trọng.
+ Muốn hiểu hết về giá trị của một tháng, hãy tiếp xúc với người mẹ đã phải sinh con thiếu tháng.
+ Để hiểu được giá trị của một tuần, hãy đến gặp tổng biên tập của tờ báo tuần.
+ Muốn hiểu được giá trị của một giờ, hãy hỏi kinh nghiệm của hai người đang yêu nhau tha thiết và lúc nào cũng mong muốn được gặp nhau.
+ Để đánh giá đúng giá trị của một phút, hãy đặt mình vào tình cảnh của một người vừa lỡ chuyến bay hoặc chuyến tàu.
+ Để hiểu được giá trị của một giây, hãy chia sẻ với một người vừa mất người thân trong một tai nạn.
+ Và để đánh giá đúng giá trị của một phần ngàn giây, hãy đến gặp người vừa mất huy chương vàng tại kỳ thi đấu thể thao Olympic.
Like để nhận được nhiều chia sẻ hơn

markdown:
|
|
|
|
+ Để hiểu được giá trị của một năm, hãy nói chuyện với một sinh viên vừa thi hỏng một kỳ thi quan trọng.
+ Muốn hiểu hết về giá trị của một tháng, hãy tiếp xúc với người mẹ đã phải sinh con thiếu tháng.
+ Để hiểu được giá trị của một tuần, hãy đến gặp tổng biên tập của tờ báo tuần.
+ Muốn hiểu được giá trị của một giờ, hãy hỏi kinh nghiệm của hai người đang yêu nhau tha thiết và lúc nào cũng mong muốn được gặp nhau.
+ Để đánh giá đúng giá trị của một phút, hãy đặt mình vào tình cảnh của một người vừa lỡ chuyến bay hoặc chuyến tàu.
+ Để hiểu được giá trị của một giây, hãy chia sẻ với một người vừa mất người thân trong một tai nạn.
+ Và để đánh giá đúng giá trị của một phần ngàn giây, hãy đến gặp người vừa mất huy chương vàng tại kỳ thi đấu thể thao Olympic.
“Thời gian chẳng bao giờ chờ đợi ai cả.”
Sưu tầm:
![]()
Like để nhận được nhiều chia sẻ hơn

WARC-Type: response

Content-Type: application/http; msgtype=response

WARC-Truncated: length

Server: Apache/2.2.23 (Unix) mod_ssl/2.2.23 OpenSSL/0.9.8e-fips-rhel5 mod_auth_passthrough/2.1 mod_bwlimited/1.4 mod_fcgid/2.3.6

P3P: CP="NOI ADM DEV PSAi COM NAV OUR OTRo STP IND DEM"

Cache-Control: post-check=0, pre-check=0

Pragma: no-cache

Set-Cookie: ja_topaz_tpl=ja_topaz; expires=Thu, 21-Jan-2016 03:53:16 GMT; path=/

Connection: close

Content-Type: text/html; charset=utf-8


text:
GỬI DỰ ĐOÁN THÀNH CÔNG!
Xin lỗi, không thể gửi dự đoán của bạn. Xin hãy lựa chọn kết quả trước!

P3P: CP="IDC DSP ADM DEVi TAI PSA PSD IVA IVD CONi HIS OUR IND CNT"

Server: nginx

Vary: Accept-Encoding

Content-Encoding: gzip


text:
RANBAXY LABORATORIES., LTD
Nhóm sản phẩm
Thuocbietduoc.com.vn
Sản phẩm
Giới thiệu
Liên hệ
N02
Giảm đau, hạ sốt, chống viêm
8
N03
Thuốc chống dị ứng...
2
N05
Hướng tâm thần
3
N06
Chống nhiễm khuẩn, KS trùng
62
N13
Thuốc tim mạch
24
N14
Điều trị bệnh da liễu
1
N18
Thuốc đường tiêu hóa
19
N19
Hocmon, Nội tiết tố
1
N25
Thuốc TD trên đường hô hấp
6
N27
Khoáng chất và Vitamin
3
N28
Thuốc khác
17
N29
Thuốc có nguồn gốc Thảo dược...
1
Quay lại
Stanlip
Số Đăng ký:
VN-8272-04
Dạng bào chế:
Viên nén bao phim
Quy cách đóng gói:
Hộp 10 vỉ x 10 viên
Giá kê khai:
- Bán buôn:
chờ cập nhật
- Bán lẻ:
chờ cập nhật
Mua bán thuốc>
Nhóm Dược lý:
Thuốc tim mạch
THÀNH PHẦN:
Fenofibrate
Chỉ định:
Tăng cholesterol máu & tăng triglycerid nội sinh đơn lẻ hoặc phối hợp ở người lớn, khi ăn kiêng không hiệu quả.
Chống chỉ định:
Quá mẫn với thành phần thuốc, suy gan, suy thận, trẻ < 10 tuổi
Tương tác thuốc:
Thuốc uống chống đông máu.
Tác dụng phụ:
Rối loạn tiêu hóa gây khó tiêu, buồn nôn, tiêu chảy nhẹ, tăng tạm thời men gan, dị ứng da, đau cơ.
Chú ý đề phòng:
- Phải thường xuyên kiểm tra công thức máu.
- Phụ nữ có thai & cho con bú.
- Không kết hợp với thuốc có độc tính trên gan.
Liều lượng:
Phối hợp với chế độ ăn kiêng, uống thuốc vào bữa ăn chính:
- Người lớn: Viên 100 mg: 3 viên/ngày; Viên 200 mg và 160 mg: 1 viên/ngày.
- Trẻ > 10 tuổi: tối đa 5 mg/kg/ngày.
Quay lại
Thông tin chỉ mang tính tra cứu tham khảo - không phải là gian hàng TMĐT!
Copyright ©
2015
Thuocbietduoc.com.vn

Cache-Control: private


text:
Hôm nay, hơn 800 người tìm được việc làm ở Hà Nội - và các bài viết liên quan | Tinmoi.vn
-
Hôm nay, hơn 800 người tìm được việc làm ở Hà Nội
TinMoi- Trong số 826 người được tuyển dụng trong ngày hôm nay, hơn một nửa có trình độ Đại học, Cao đẳng
-
Thu mua đồng nát, tậu nhà Hà Nội
-
Cây cảnh triệu đô trưng bày mừng Hà Nội 1000 năm
Một nghìn sinh vật cảnh với nhiều kiểu dáng lạ mắt được trưng bày tại Bảo tàng Hà Nội đang thu hút khá đông khách tham quan
-
Điểm tin nóng sáng 5/10: Hà Nội bị rung chấn chiều 4/10 là tin không chính xác
Hà Nội bị rung chấn chiều 4/10 là tin không chính xác; "Mục kích" lò hành phi siêu bẩn ở Hà Nội; 17 Bộ trưởng chuẩn bị giải...
-
Đi du lịch để làm... o-sin
Với mức lương 5- 7 triệu/tháng,"ô-sin du lịch" (đi giúp việc, làm ô- sin... theo hình thức visa du lịch) đang được nhiều người lựa chọn.
-
Thái Lan liệu có tìm được lối thoát khỏi bế tắc chính trị?
– Phe “áo đỏ” chống chính phủ Thái Lan đã tỏ ý sẵn sàng tham gia kế hoạch hòa giải dân tộc mà Thủ tướng Abhisit Vejjajiva đưa ra, làm tăng hy vọng về khả năng rối loạn chính trị hiện nay ở nước...
-
Trực tiếp Tư vấn tuyển sinh tại Hà Nội
14 h buổi trực tiếp Tư vấn tuyển sinh ĐH, CĐ 2009 của Báo Đất Việt mới chính thức diễn ra nhưng từ 13h hàng trăm học sinh đã có mặt tại Hội trường tầng 2, Trung tâm Triển lãm...
-
Lật mặt “cò” việc làm lừa tiền người lao động
Với những lời ngon ngọt, hứa hẹn tìm được vị trí làm việc tốt, lương cao… các “cò” việc làm hoạt động ở khu công nghiệp Pou Yuen, quận Bình Tân (TP.Hồ Chí Minh) đã và đang lừa rất nhiều người lao...
-
Ngay Hà Nội: Cỗ sang phải có thịt chuột
Với người dân ở hai xã Canh Nậu, Dị Nậu - Thạch Thất - Hà Nội, thịt chuột là món khoái khẩu như chó, gà, vịt… Bữa cỗ ngon sẽ thêm...
-
Giá nhà trọ Hà Nội lại tăng, SV xách cặp tìm chỗ ở mới
Vì nhiều lý do khác nhau mà vừa mới ăn Tết xong, SV hối hả ra thủ đô tìm phòng sớm để tránh tình trạng đi học mà vẫn “cù bất, cù bơ”. Chính thời gian này lại càng khó khăn cho các bạn trẻ khi các...
-
Lật mặt “cò” việc làm lừa tiền người lao động
Chỉ trong 5 buổi sáng quan sát một “cò”, chúng tôi nhẩm tính sơ “cò” này đã nhận ít nhất 20 bộ hồ sơ từ những người đi xin việc. Tùy vào hồ sơ, nam hay nữ mà với mỗi bộ “cò” lấy giá từ 400 đến 800...
-
4 năm Hà Nội mở rộng địa giới hành chính: Tin tưởng ở sự đột phá
Hôm nay, 1-8-2012, đúng 4 năm ngày Thủ đô Hà Nội mở rộng địa giới hành chính theo Nghị quyết của Quốc hội. Qua gần 1.500 ngày, TP...
-
Cóng người 4 độ, Hà Nội áo phao “cháy” hàng
Áo phao tại một số điểm kinh doanh đã lâm vào cảnh “cháy” hàng do nhu cầu tăng đột biến
-
Hà Nội và Bộ Y tế tích cực hợp tác quy hoạch mạng lưới y tế
Chiều 14/12, Chủ tịch UBND TP Hà Nội Nguyễn Thế Thảo và Bộ trưởng Bộ Y tế Nguyễn Thị Kim Tiến đã chủ trì buổi làm việc giữa Bộ Y tế và TP Hà Nội về kết quả thực hiện công tác y tế TP năm 2011,...
-
Văn Quyến: Tôi bị ép kết hôn với người hơn 5 tuổi
Văn Quyến khẳng định “Ngã ở đâu tôi sẽ đứng dậy từ đấy,” nhưng anh đang liên tiếp gặp chuyện xui xẻo. Và điều làm chàng cầu thủ 27 tuổi đau đầu hơn cả là vụ ép kết hôn với một fan cuồng chưa từng...
-
Hà Tĩnh: Ưu tiên việc làm cho lao động Libya về nước
Sáng 12/6 UBND tỉnh Hà Tĩnh đã phối hợp với Cục quản lý lao động ngoài nước, Bộ LĐ, TB & XH tổ chức Ngày hội việc làm, đào tạo nghề khu vực mỏ sắt Thạch Khê và đồng hành chia sẻ bố trí việc làm cho...
-
Hà Nội: “Sốt” phòng trọ, ký túc xá “ế” chỗ
Chỉ còn 3 ngày nữa là đến ngày thi đại học, hiện các sĩ tử đã bắt đầu đổ về Hà Nội để tìm chỗ “an cư”
-
Lại đối mặt nỗi lo giảm lương, mất việc
Những căn phòng trọ để trống ở xã Kim Chung (huyện Đông Anh) vẫn chưa biết khi nào sẽ tìm được chủ nhân mới bởi còn nhiều công nhân vẫn phải đối mặt với nỗi lo thiếu việc, mất việc trong năm...
-
Thủ tục cuối cho cuộc hôn lễ Nghi Sơn
TP - Ngày 27-1-2013, Lễ trao thầu cho các Liên danh xây dựng theo phương thức chìa khóa trao tay (EPC) được coi là thủ tục cuối cùng để chuẩn bị cho việc khởi công Trung tâm Lọc hóa dầu lớn nhất...

markdown:
# Hôm nay, hơn 800 người tìm được việc làm ở Hà Nội - và các bài viết liên quan | Tinmoi.vn
-
[Hôm nay, hơn 800 người tìm được việc làm ở Hà Nội](http://www.tinmoi.vn/Hom-nay-hon-800-nguoi-tim-duoc-viec-lam-o-Ha-Noi-0112157.html)
TinMoi- Trong số 826 người được tuyển dụng trong ngày hôm nay, hơn một nửa có trình độ Đại học, Cao đẳng
-
[Thu mua đồng nát, tậu nhà Hà Nội](http://www.tinmoi.vn/Thu-mua-dong-nat-tau-nha-Ha-Noi-01500843.html)
-
[Cây cảnh triệu đô trưng bày mừng Hà Nội 1000 năm](http://www.tinmoi.vn/Cay-canh-trieu-do-trung-bay-mung-Ha-Noi-1000-nam-01200449.html)
Một nghìn sinh vật cảnh với nhiều kiểu dáng lạ mắt được trưng bày tại Bảo tàng Hà Nội đang thu hút khá đông khách tham quan
-
[Điểm tin nóng sáng 5/10: Hà Nội bị rung chấn chiều 4/10 là tin không chính xác](http://www.tinmoi.vn/diem-tin-nong-sang-5-10-ha-noi-bi-rung-chan-chieu-410-la-tin-khong-chinh-xac-011065365.html)
Hà Nội bị rung chấn chiều 4/10 là tin không chính xác; "Mục kích" lò hành phi siêu bẩn ở Hà Nội; 17 Bộ trưởng chuẩn bị giải...
-
[Đi du lịch để làm... o-sin](http://www.tinmoi.vn/di-du-lich-de-lam-o-sin-01574847.html)
Với mức lương 5- 7 triệu/tháng,"ô-sin du lịch" (đi giúp việc, làm ô- sin... theo hình thức visa du lịch) đang được nhiều người lựa chọn.
-
[Thái Lan liệu có tìm được lối thoát khỏi bế tắc chính trị?](http://www.tinmoi.vn/Thai-Lan-lieu-co-tim-duoc-loi-thoat-khoi-be-tac-chinh-tri-01156599.html)
– Phe “áo đỏ” chống chính phủ Thái Lan đã tỏ ý sẵn sàng tham gia kế hoạch hòa giải dân tộc mà Thủ tướng Abhisit Vejjajiva đưa ra, làm tăng hy vọng về khả năng rối loạn chính trị hiện nay ở nước...
-
[Trực tiếp Tư vấn tuyển sinh tại Hà Nội](http://www.tinmoi.vn/Truc-tiep-Tu-van-tuyen-sinh-tai-Ha-Noi-015430.html)
14 h buổi trực tiếp Tư vấn tuyển sinh ĐH, CĐ 2009 của Báo Đất Việt mới chính thức diễn ra nhưng từ 13h hàng trăm học sinh đã có mặt tại Hội trường tầng 2, Trung tâm Triển lãm...
-
[Lật mặt “cò” việc làm lừa tiền người lao động](http://www.tinmoi.vn/lat-mat-co-viec-lam-lua-tien-nguoi-lao-dong-011079406.html)
Với những lời ngon ngọt, hứa hẹn tìm được vị trí làm việc tốt, lương cao… các “cò” việc làm hoạt động ở khu công nghiệp Pou Yuen, quận Bình Tân (TP.Hồ Chí Minh) đã và đang lừa rất nhiều người lao...
-
[Ngay Hà Nội: Cỗ sang phải có thịt chuột](http://www.tinmoi.vn/ngay-ha-noi-co-sang-phai-co-thit-chuot-011286122.html)
Với người dân ở hai xã Canh Nậu, Dị Nậu - Thạch Thất - Hà Nội, thịt chuột là món khoái khẩu như chó, gà, vịt… Bữa cỗ ngon sẽ thêm...
-
[Giá nhà trọ Hà Nội lại tăng, SV xách cặp tìm chỗ ở mới](http://www.tinmoi.vn/gia-nha-tro-ha-noi-lai-tang-sv-xach-cap-tim-cho-o-moi-011212849.html)
Vì nhiều lý do khác nhau mà vừa mới ăn Tết xong, SV hối hả ra thủ đô tìm phòng sớm để tránh tình trạng đi học mà vẫn “cù bất, cù bơ”. Chính thời gian này lại càng khó khăn cho các bạn trẻ khi các...
-
[Lật mặt “cò” việc làm lừa tiền người lao động](http://www.tinmoi.vn/lat-mat-co-viec-lam-lua-tien-nguoi-lao-dong-011079732.html)
Chỉ trong 5 buổi sáng quan sát một “cò”, chúng tôi nhẩm tính sơ “cò” này đã nhận ít nhất 20 bộ hồ sơ từ những người đi xin việc. Tùy vào hồ sơ, nam hay nữ mà với mỗi bộ “cò” lấy giá từ 400 đến 800...
-
[4 năm Hà Nội mở rộng địa giới hành chính: Tin tưởng ở sự đột phá](http://www.tinmoi.vn/4-nam-ha-noi-mo-rong-dia-gioi-hanh-chinh-tin-tuong-o-su-dot-pha-01992333.html)
Hôm nay, 1-8-2012, đúng 4 năm ngày Thủ đô Hà Nội mở rộng địa giới hành chính theo Nghị quyết của Quốc hội. Qua gần 1.500 ngày, TP...
-
[Cóng người 4 độ, Hà Nội áo phao “cháy” hàng](http://www.tinmoi.vn/cong-nguoi-4-do-ha-noi-ao-phao-chay-hang-01708400.html)
Áo phao tại một số điểm kinh doanh đã lâm vào cảnh “cháy” hàng do nhu cầu tăng đột biến
-
[Hà Nội và Bộ Y tế tích cực hợp tác quy hoạch mạng lưới y tế](http://www.tinmoi.vn/ha-noi-va-bo-y-te-tich-cuc-hop-tac-quy-hoach-mang-luoi-y-te-01677811.html)
Chiều 14/12, Chủ tịch UBND TP Hà Nội Nguyễn Thế Thảo và Bộ trưởng Bộ Y tế Nguyễn Thị Kim Tiến đã chủ trì buổi làm việc giữa Bộ Y tế và TP Hà Nội về kết quả thực hiện công tác y tế TP năm 2011,...
-
[Văn Quyến: Tôi bị ép kết hôn với người hơn 5 tuổi](http://www.tinmoi.vn/van-quyen-toi-bi-ep-ket-hon-voi-nguoi-hon-5-tuoi-01603833.html)
Văn Quyến khẳng định “Ngã ở đâu tôi sẽ đứng dậy từ đấy,” nhưng anh đang liên tiếp gặp chuyện xui xẻo. Và điều làm chàng cầu thủ 27 tuổi đau đầu hơn cả là vụ ép kết hôn với một fan cuồng chưa từng...
-
[Hà Tĩnh: Ưu tiên việc làm cho lao động Libya về nước](http://www.tinmoi.vn/Ha-Tinh-Uu-tien-viec-lam-cho-lao-dong-Libya-ve-nuoc-01536210.html)
Sáng 12/6 UBND tỉnh Hà Tĩnh đã phối hợp với Cục quản lý lao động ngoài nước, Bộ LĐ, TB & XH tổ chức Ngày hội việc làm, đào tạo nghề khu vực mỏ sắt Thạch Khê và đồng hành chia sẻ bố trí việc làm cho...
-
[Hà Nội: “Sốt” phòng trọ, ký túc xá “ế” chỗ](http://www.tinmoi.vn/Ha-Noi-ldquoSotrdquo-phong-tro-ky-tuc-xa-ldquoerdquo-cho-0138242.html)
Chỉ còn 3 ngày nữa là đến ngày thi đại học, hiện các sĩ tử đã bắt đầu đổ về Hà Nội để tìm chỗ “an cư”
-
[Lại đối mặt nỗi lo giảm lương, mất việc](http://www.tinmoi.vn/lai-doi-mat-noi-lo-giam-luong-mat-viec-011209635.html)
Những căn phòng trọ để trống ở xã Kim Chung (huyện Đông Anh) vẫn chưa biết khi nào sẽ tìm được chủ nhân mới bởi còn nhiều công nhân vẫn phải đối mặt với nỗi lo thiếu việc, mất việc trong năm...
-
[Thủ tục cuối cho cuộc hôn lễ Nghi Sơn](http://www.tinmoi.vn/thu-tuc-cuoi-cho-cuoc-hon-le-nghi-son-011193579.html)
TP - Ngày 27-1-2013, Lễ trao thầu cho các Liên danh xây dựng theo phương thức chìa khóa trao tay (EPC) được coi là thủ tục cuối cùng để chuẩn bị cho việc khởi công Trung tâm Lọc hóa dầu lớn nhất...

Content-Type: text/html

Set-Cookie: SERVERID=; Expires=Thu, 01-Jan-1970 00:00:01 GMT; path=/


text:
mang đi đầu tư, vài nam nữa mua hẳn con xe xịn hơn
Xe đạp leo núi Trek 4500
Xuất xứ: Mỹ / Hãng sản xuất: Trek Đường kính khung(mm): 0 / Loại vành: Hợp kim nhôm / Đường kính vành(mm): 0 / Chiều cao yên cực đại(mm): 0 /
Kia K3000II xe 1.4 tấn
Loại xe tải: Xe chở hàng / Hãng sản xuất: KIA / Tải trọng (tấn): 1.4 / Xuất xứ: Korea /
Xe tải ben 6 tấn THACO - FOTON
Loại xe tải: Xe tải / Hãng sản xuất: THACO / Tải trọng (tấn): 6 / Xuất xứ: China /
Thiết bị định vị quản lý xe VIETMAP VT10
Hãng sản xuất: Vietmap / Loại: Hệ thống GPS / Xuất xứ: Việt Nam /

Server: Apache

Set-Cookie: u_nologin_id=1617510404; expires=Mon, 11-May-2015 04:39:13 GMT; path=/; httponly

Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0

Content-Type: text/html; charset=UTF-8


text:
Gian hàng bán
Rao vặt
Hỏi đáp
Thêm
Danh sách gian hàng
Tin tức từ Vatgia.com
Để kinh doanh Online thành công
Đánh giá sản phẩm
BaoKim.vn
CucRe.vn
MyTour.vn
Nhanh.vn
WebBNC.net
Thông báo
Hỗ trợ
Đăng ký
Đăng ký thành viên
Đăng ký gian hàng
Đăng nhập
Nhớ mật khẩu
Quên mật khẩu?
Hoặc đăng nhập bằng:
Sản phẩm
Sản phẩm
Rao vặt
Hỏi đáp
Cửa hàng
Tìm trong danh mục
Chăm sóc thú nuôi
Khám chữa bệnh thú nuôi
Làm thủ tục hải quan thú nuôi
Trang chủ
>
Mua sắm
>
Dịch vụ, giải trí, du lịch
>
Dịch vụ khác
>
Dịch vụ về thú nuôi
>
Khám chữa bệnh thú nuôi
>
chua benh cho ga
Bạn có muốn tìm thêm:
chua benh cho ga
cach chua benh viem gan
chua benh cho
chua benh viem gan
thuoc chua benh viem gan
chua benh cho chong
thuoc tri benh cho ga
thuoc chua benh cho cho
choi game fifa online
chua benh gan
cach chua benh ga
chua benh ga
cach chua benh gan
benh thuong gap cho meo
nam chua benh gan
choi game vice city
may choi game
xe may tay ga
cach chon ga da
choi game offline
Tất cả
Bán chạy
Nhiều đánh giá
Xem nhiều
Mới cập nhật
Giá
Giá
-
Tỉnh/ Thành phố
Hồ Chí Minh
Gian hàng đảm bảo
Miễn phí vận chuyển
Gian hàng đang online
Gian hàng mới
Trả tiền tại nhà (COD)
Rất tiếc, chúng tôi không tìm thấy sản phẩm phù hợp với tiêu chí tìm kiếm bạn đã chọn.
Vui lòng chọn lại tiêu chí tìm kiếm hoặc nhập từ khóa khác, chúng tôi sẽ tìm giúp bạn.
Tìm kiếm Rao vặt
Xem tất cả
Trà diệp hạ châu giải rượu mát Gan thanh nhiệt
-
19.000 ₫/ đơn vị
Đăng bởi:
donguyenthanh_dx
Cập nhật:
12/01/2015 - 16:43
Nhà cần bán gấp
Đăng bởi:
gianghuong1960
Cập nhật:
17/12/2014 - 01:24
Tìm kiếm Hỏi đáp
Xem tất cả
Ai dùng loại thuốc gan này chưa?
Đăng bởi:
hoangsake
Cập nhật:
28/04/2014 - 16:05
Trẻ hay bị táo bón, tôi phải làm gì?
Đăng bởi:
ocnhoi
Cập nhật:
07/05/2014 - 23:31
Bệnh viện nào ở Singapore chữa bệnh ung thư tốt đặc biệt là chữa ung thư gan?
Đăng bởi:
tuongquyen2008
Cập nhật:
22/05/2014 - 15:21
Sản phẩm hạ mỡ máu cholessen có dùng cho người gan nhiễm mở ?
Đăng bởi:
thaoduocquynet
Cập nhật:
02/06/2014 - 16:02
Mua Diệp lục Chlorophyll Synergy ở đâu rẻ nhỉ?
Đăng bởi:
mecuabibop
Cập nhật:
05/07/2014 - 16:19
Hỗ trợ vận chuyển
Hỗ trợ thanh toán online
Chấp nhận thanh toán
Điện thoại, viễn thông
Phụ kiện,thiết bị sửa chữa,...
Mobile
Thiết bị viễn thông
Dịch vụ viễn thông
Máy tính, linh kiện
Thiết bị cho máy tính
Máy vi tính
Máy văn phòng
Linh kiện, phụ kiện Laptop
Điện tử, điện máy
Thiết bị an ninh
Âm thanh
Đồ dùng trong bếp
Hình ảnh
Máy ảnh, máy quay
Thiết bị liên quan
Máy ảnh, máy quay
Dịch vụ chụp, rửa ảnh
Dịch vụ sửa chữa, thẩm định
Ô tô, xe máy, xe đạp
Ô tô (Xe hơi)
Xe máy, phụ tùng xe máy
Phụ tùng ô tô
Đồ chơi ô tô
Công nghiệp, Xây dựng
Thiết bị điện, nước
Xây dựng
Vật tư, thiết bị công nghiệp
Cơ khí chế tạo
Thời trang, phụ kiện
Thời trang nữ
Thời trang nam
Đồ trang sức
Đồng hồ đeo tay
Mẹ & Bé
Đồ dùng cho trẻ
Tắm gội, vệ sinh an toàn
Đồ cho bé khi ra ngoài
Đồ cho mẹ
Sức khỏe, sắc đẹp
Y tế, sức khỏe
Nước hoa - Mỹ phẩm khác
Chăm sóc da mặt
Đồ trang điểm
Đồ dùng sinh hoạt
Đồ dùng nhà bếp, phòng ăn
Các loại đồ khác
Đồ dùng cá nhân
Đồ điện gia dụng
Nội thất, ngoại thất
Nội thất không gian, tổng hợp
Đèn trang trí, chiếu sáng
Nội thất phòng khách
Nội thất phòng ngủ
Sách, đồ văn phòng
Sách
Thiết bị văn phòng
Văn phòng phẩm
Thiết bị giáo dục
Hoa, quà tặng, đồ chơi
Đồ chơi
Quà tặng
Hoa
Cây giả - Hoa giả
Dịch vụ, giải trí, du lịch
Thể thao
Du lịch
Dịch vụ vận tải, vận chuyển
Game, đồ chơi
Thực phẩm, đồ uống
Đồ uống
Bánh kẹo, mứt
Thực phẩm tươi sống
Thực phẩm chín, qua chế biến
Vatgia.com - Sàn giao dịch thương mại điện tử hàng đầu Việt Nam
Mua hàng trực tuyến mang lại sự tiện lợi, chủ động, lựa chọn đa dạng, với các dịch vụ hỗ trợ mua hàng, bán hàng, thanh toán an toàn, giao hàng chuyên nghiệp.
Với phương châm “Luôn đặt mình vào địa vị khách hàng và đối xử trên mong đợi của họ”, Vatgia.com không ngừng nỗ lực, cải tiến đáp ứng nhu cầu mua sắm cho người tiêu dùng.
Vatgia đảm bảo cung cấp đúng thông tin cho đúng người, đúng lúc, đảm bảo thanh toán trực tuyến bảo mật an toàn, áp dụng hình thức vận chuyển nhanh phù hợp.
Rao vặt
|
Hỏi đáp
|
Review - Đánh giá
|
Lưu trữ rao vặt
|
Quà tết
|
Việc làm
|
Exciter 150
|
Dien thoai
|
Laptop
|
Mua ban oto
|
Xe may
|
iPhone 5
|
iPhone 5s
|
iPhone 6
|
iPhone 6 Plus
|
iPhone 4
|
iPhone 4s
|
Điện thoại iphone
|
Galaxy s5
|
Điện thoại samsung
|
HTC One
|
Điện thoại HTC
|
Nokia
|
Nokia lumia 625
|
Nokia lumia 520
|
Sony xperia z3
|
Sony xperia m
|
Sony xperia z1
|
Áo khoác đẹp
|
Áo khoác da
|
Áo khoác nam
|
Giày nam
|
Vest nam
|
Đầm công sở
|
Áo khoác nữ
|
Giày cao gót
|
Điện thoại sony
|
Bất động sản
|
Cho thue nha
|
Tìm việc
|
Máy lọc nước
|
Cách làm trắng da
|
Sim số đẹp
|
Máy cắt bê tông
|
Tranh phòng trẻ em
|
MacBook
|
Máy bộ đàm hàng hải
|
Quạt điện công nghiệp
|
Khách sạn Sơn La
|
Ốp - Cản - Bậc
|
Máy tán sỏi
|
HDD box
|
Bút chấm điện thoại
|
Máy tính Desktop (Công ty lắp ráp)
Giới thiệu
|
Hướng dẫn
|
Quy chế hoạt động
|
Chính sách bảo mật thông tin
Công ty Cổ phần Vật Giá Việt Nam. Số GCNDT: 011032001615, cấp ngày 21/06/2012, nơi cấp: UBND thành phố Hà Nội
Trụ sở chính: Lê Đại Hành, Hai Bà Trưng, Hà Nội - Chi nhánh Hồ Chí Minh: Đường Lữ Gia, Phường 15, Quận 11, Hồ Chí Minh
Tài khoản
Giỏ hàng
Đã xem

Set-Cookie: u_nologin_id=1617489162; expires=Mon, 11-May-2015 04:26:09 GMT; path=/; httponly