Hệ thống đang được phát triển có khả năng mở rộng, cụ thể là. Chia tỷ lệ theo chiều ngang. Cái gì, tại sao, khi nào và như thế nào? Kiến trúc dọc và ngang

Trong số rất nhiều chức năng của hệ thống thông tin cần thiết để quản lý hậu cần mạng, trước tiên chúng ta sẽ tập trung vào hai chức năng “mạng” chính: quản lý phân loại và hỗ trợ quản lý danh mục.

1. Quản lý các loại trong một công ty kinh doanh mạng.

Mạng lưới các doanh nghiệp thương mại bán lẻ, đặc biệt là trong lĩnh vực thực phẩm, có đặc điểm là nhiệm vụ quản lý có mức độ phức tạp cao nhất. Một thách thức đặc biệt là quản lý chủng loại.

Càng giải quyết tốt thì doanh nghiệp bán lẻ nói chung càng phát triển hiệu quả và khả năng cạnh tranh càng cao.

Nhiệm vụ quản lý chủng loại có thể được chia thành hai nhiệm vụ phụ – “bên ngoài” và “nội bộ”.

Đầu tiên là nhằm mục đích làm việc với người mua về mặt chủng loại, thứ hai là nhằm tạo điều kiện thuận lợi cho công việc của nhân viên với các danh mục chủng loại.

Giải pháp thành công cho những vấn đề này sẽ dẫn đến kết quả bán sản phẩm được cải thiện.

Để có giải pháp hiệu quả Nhóm nhiệm vụ "bên ngoài" cần thiết:

  • 1) cung cấp thông tin về sản phẩm cho khách hàng. Hệ thống hỗ trợ thông tin và đa phương tiện được thiết kế để giúp khách hàng định hướng trong biển hàng hóa vô biên, đưa ra lựa chọn đúng đắn và thu được thông tin có giá trị trong thời gian ngắn nhất. Đồng thời, chúng giúp các nhà bán lẻ phân tích sở thích của người tiêu dùng, kích thích bán hàng hóa cần thiết, tối ưu hóa cách bố trí sàn bán hàng, sắp xếp các loại hàng hóa hợp lý, đảm bảo giải quyết thành công các nhiệm vụ bên ngoài về tự động hóa quản lý phân loại;
  • 2) giải quyết các vấn đề tiếp thị cá nhân. Việc thực hiện chức năng tiếp thị cá nhân là một trong những nhiệm vụ quan trọng nhất của quản lý chủng loại đối với các hình thức “siêu thị” và “đại siêu thị”. Hơn nữa, nếu đối với siêu thị, điều quan trọng nhất là tiến hành tiếp thị cá nhân có mục tiêu bằng cách theo dõi những biến động về sở thích của khách hàng thường xuyên cụ thể của một cửa hàng nhất định, thì đối với đại siêu thị, điều quan trọng là phải làm việc với các nhóm khách hàng điển hình thuộc danh mục được xác định theo quy ước. của khách hàng thường xuyên. Đối với những người bán hàng giảm giá, hoạt động tiếp thị cá nhân ít phù hợp hơn với họ. Để xác định sở thích của khách hàng thường xuyên, việc hệ thống thông tin có sẵn khả năng tiến hành phân tích toàn diện về doanh số bán hàng và xác định cơ cấu mua hàng cũng là một nhiệm vụ cực kỳ quan trọng;
  • 3) thực hiện bán hàng trực quan chất lượng cao. Việc trưng bày hàng hóa hiệu quả trên kệ cửa hàng làm tăng đáng kể doanh số bán hàng. Để đánh giá chất lượng của các giải pháp cho các vấn đề bán hàng trực quan, hệ thống thông tin phải có khả năng duy trì và phân tích các sơ đồ mô tả việc sắp xếp hàng hóa trên các kệ hàng.

Khi quyết định nhiệm vụ quản lý phân loại nội bộ cần phải tự động hóa các quy trình nghiệp vụ sau:

1) quy trình quản lý phân loại tích cực (duy trì ma trận phân loại).

Thực tế là thông tin về sản phẩm, một khi được nhập vào cơ sở dữ liệu, sẽ tồn tại trong đó rất lâu. Ví dụ: với danh mục hiện tại là 7.000 mặt hàng, hệ thống có thể lưu trữ 20–30 nghìn mặt hàng. Trong những điều kiện này, cần cung cấp cho người dùng hệ thống cơ hội chỉ làm việc với thông tin hiện tại về loại đang hoạt động (Hình 3.4).

Cơm. 3.4.

Để giải quyết vấn đề này cần đảm bảo các chức năng sau:

  • đưa hàng hóa vào danh mục sản phẩm đang hoạt động. Quá trình này thường được bắt đầu bằng một loạt các hoạt động tiếp thị thử nghiệm với một sản phẩm nhất định, chuẩn bị hậu cần và chuẩn bị trước khi bán sản phẩm;
  • ngừng mua hàng hóa, là giai đoạn đầu tiên của việc loại bỏ hàng hóa khỏi danh mục đang hoạt động. Những lý do điển hình cho quá trình này bao gồm:
    • a) không hài lòng với kết quả bán sản phẩm;
    • b) sự thay đổi chủng loại của nhà sản xuất;
    • c) có vấn đề trong mối quan hệ với nhà cung cấp; và vân vân.;
  • ngừng bổ sung hàng tồn kho từ trung tâm phân phối của công ty;
  • ngừng làm việc với sản phẩm, là giai đoạn cuối cùng của việc loại bỏ sản phẩm khỏi danh mục thông tin

hệ thống (thường xảy ra khi trữ lượng bằng 0);

Xóa thông tin về hàng hóa trên hệ thống máy tính tiền (thường được thực hiện sau khi kiểm kê).

Ưu điểm của việc tự động hóa quy trình kinh doanh này :

  • thuận tiện cho người dùng khi làm việc với dòng sản phẩm;
  • giảm đáng kể số lượng lỗi liên quan đến việc không thể đưa vào tài liệu một sản phẩm không thuộc loại đang hoạt động;
  • khả năng nhận báo cáo phân tích chỉ về loại hoạt động;
  • tăng năng suất của các nhà quản lý tham gia quản lý chủng loại; và vân vân.;
  • 2) quá trình quản lý một loạt các doanh nghiệp bán lẻ ở nhiều hình thức khác nhau , bao gồm trong một doanh nghiệp kinh doanh mạng đa định dạng (quản lý nhiều ma trận phân loại).

Tự động hóa quy trình kinh doanh này giúp ngăn chặn việc di chuyển hàng hóa đến đối tượng quản lý, đến các ma trận phân loại mà sản phẩm này không thuộc về (Hình 3.5).

Cơm. 3.5.

Cũng cần lưu ý rằng giải pháp chất lượng cao cho các vấn đề quản lý phân loại “nội bộ” có tầm quan trọng lớn nhất đối với một doanh nghiệp thương mại bán lẻ mạng đa định dạng.

2. Quy trình hỗ trợ quản lý danh mục thông qua việc hình thành các chế độ xem sản phẩm và chế độ xem các đối tượng quản lý mà người quản lý danh mục cụ thể làm việc.

Đối với người quản lý tham gia quản lý các loại sản phẩm cụ thể, được kết hợp thành các đơn vị kinh doanh chiến lược, khi làm việc với hệ thống thông tin, điều quan trọng là phải tập trung vào một tập hợp con sản phẩm và đối tượng quản lý nhất định.

Người quản lý danh mục chỉ nên xem những gì liên quan đến “danh mục sản phẩm của mình” để tạo ra ảo tưởng rằng không có gì trong hệ thống thông tin ngoại trừ hàng hóa có trong đơn vị kinh doanh của anh ta và những đối tượng quản lý mà anh ta chịu trách nhiệm.

Người quản lý cần tạo ra các quan điểm về dòng sản phẩm để trình bày thông tin hậu cần và phân tích thông qua lăng kính của đơn vị kinh doanh chiến lược mà anh ta làm việc cùng trong khuôn khổ chức năng của mình.

Để đảm bảo làm việc với hệ thống thông tin ở chế độ này phải triển khai khả năng gán chế độ xem sản phẩm và chế độ xem của đối tượng quản lý.

Đồng thời, có ít nhất hai loại chế độ xem sản phẩm cơ bản - tĩnh và động.

Mỗi người quản lý có quan điểm về sản phẩm riêng, xác định đơn vị kinh doanh chiến lược của mình. Trong trường hợp này, người quản lý chịu trách nhiệm về cùng một đơn vị kinh doanh được chỉ định một chế độ xem duy nhất.

Trong trường hợp xác định chế độ xem sản phẩm tĩnh, một bộ sản phẩm thực sự được ghi lại dưới dạng danh sách được đặt tên (Hình 3.6). Thật thuận tiện cho việc sửa chữa nghiêm ngặt một bộ (ví dụ: để phân tích).

Cơm. 3.6.

Để quản lý hiệu quả các chế độ xem sản phẩm nhằm xác định đơn vị kinh doanh, tốt hơn nên xác định chúng trên các nút của bộ phân loại sản phẩm. Hãy gọi những khung nhìn như vậy là động (Hình 3.7).

Cơm. 3.7.

Trong trường hợp này, ngay khi một sản phẩm mới được đưa vào một nhóm con cụ thể, nằm trong quan điểm năng động của người quản lý danh mục, nó sẽ tự động trở thành một phần của đơn vị kinh doanh chiến lược và người quản lý bắt đầu làm việc với nó ngay lập tức.

Khi một sản phẩm được chuyển sang một nhóm con khác (ví dụ: do thay đổi phân loại), sản phẩm đó sẽ chuyển sang một đơn vị kinh doanh chiến lược khác và tự động được chuyển sang một người quản lý danh mục khác để làm việc.

Chế độ xem các đối tượng quản lý được hình thành theo cách tương tự - đây là chế độ xem tĩnh xác định danh sách các cửa hàng và trung tâm phân phối trong đó người quản lý danh mục cụ thể hoạt động (Hình 3.8).

Cơm. 3.8.

Cách tiếp cận này cho phép người dùng hệ thống, bao gồm nhà sản xuất hoặc nhà cung cấp hàng hóa, truy cập thông tin và các chức năng cần thiết của hệ thống thông tin trong một tập hợp con nhất định của phạm vi sản phẩm đang hoạt động và các đối tượng thương mại tương ứng.

Chức năng này rất quan trọng khi triển khai khái niệm hậu cần VMI, khi nhà cung cấp hoặc nhà sản xuất tham gia vào việc quản lý chuỗi cung ứng hàng hóa “của họ”.

Để kết luận, chúng ta hãy đưa ra một số kết luận từ những điều trên:

  • 1) quản lý loại hình doanh nghiệp thương mại là nhiệm vụ quan trọng nhất, chất lượng của giải pháp quyết định trực tiếp đến thành công của doanh nghiệp đó;
  • 2) các giải pháp cho nhóm vấn đề quản lý chủng loại bên ngoài, đặc biệt là các doanh nghiệp bán lẻ quy mô lớn, được thiết kế để cung cấp hệ thống thông tin khách hàng (quầy thông tin, thiết bị đầu cuối đa phương tiện, xe thông tin, v.v.);
  • 3) khả năng duy trì ma trận phân loại, chế độ xem sản phẩm và chế độ xem đối tượng quản lý trong hệ thống thông tin tạo điều kiện thuận lợi cho khả năng giải quyết một nhóm nhiệm vụ quản lý phân loại nội bộ, liên quan trực tiếp đến chất lượng thực hiện chức năng quản lý danh mục tại một doanh nghiệp thương mại .

Khả năng mở rộng hệ thống thông tin

Khi một công ty bán lẻ trực tuyến phát triển, đôi khi sẽ đến lúc hệ thống thông tin không còn có thể hỗ trợ tăng trưởng kinh doanh nữa. Vì vậy, câu hỏi về tính phù hợp của hệ thống thông tin đối với sự phát triển của công ty là vô cùng quan trọng.

Trong trường hợp này, hai khía cạnh phải được tính đến - sự phù hợp với tốc độ tăng trưởng và khả năng mở rộng của hệ thống.

Nếu sự tăng trưởng của công ty đi kèm với sự gia tăng không cân xứng về chi phí cơ sở hạ tầng CNTT thì hệ thống thông tin không thể hỗ trợ tối ưu cho việc mở rộng kinh doanh.

Hệ thống thông tin không phù hợp với sự phát triển của công ty có thể dẫn đến chi phí hoạt động của công ty tăng nhanh.

Trước hết, kiến ​​trúc giải pháp phải tương ứng với sự phát triển của công ty. Theo quan điểm của chúng tôi, khi một công ty phát triển và có hàng trăm cơ sở, việc xây dựng một hệ thống trên kiến ​​trúc phân tán có nghĩa là phải đối mặt với sự gia tăng ngày càng tăng về chi phí hỗ trợ CNTT trên mỗi cửa hàng.

Trong bối cảnh một công ty mạng lưới quản lý hàng trăm cửa hàng bán lẻ trở lên, việc đồng bộ hóa dữ liệu với việc hợp nhất sau đó của họ ở trung tâm ngày càng trở nên khó khăn và sẽ có lúc điều này trở nên không thể.

Để đảm bảo khả năng mở rộng của hệ thống thông tin (khả năng cung cấp số lượng người dùng theo yêu cầu, vận hành với lượng thông tin yêu cầu với hiệu suất đạt yêu cầu) cần lựa chọn nền tảng - phần mềm và phần cứng máy chủ phù hợp.

Nếu một công ty bán lẻ đang phát triển, khối lượng thông tin bán hàng được tính không phải bằng gigabyte mà tính bằng terabyte và điều này không thể thực hiện được nếu không sử dụng các hệ thống quản lý cơ sở dữ liệu “công nghiệp”, có khả năng mở rộng như Oracle, Progress, v.v.

Cũng sẽ cần đến hệ điều hành, với sự trợ giúp của hệ điều hành này, bạn có thể “di chuyển” sang một loại thiết bị máy tính khác.

Rõ ràng là khi lựa chọn một hệ thống thông tin và vận hành nó, các công ty chuỗi bán lẻ có chiến lược liên quan đến tăng trưởng nhanh chóng cần phải suy nghĩ nghiêm túc về khả năng mở rộng và chi phí sở hữu hệ thống thông tin.

Chúng tôi tin rằng khi một công ty phát triển, kiến ​​trúc phân tán sẽ trở thành trở ngại lớn trong việc giảm chi phí quản lý kinh doanh và vận hành cơ sở hạ tầng CNTT.

Kiến trúc tập trung của hệ thống thông tin có nghĩa là chi phí sở hữu thấp hơn và không yêu cầu số lượng nhân viên CNTT tăng liên tục khi mạng bán lẻ phát triển.

Đề cập đến khả năng của một hệ thống, mạng hoặc quy trình xử lý khối lượng công việc tăng lên (tăng hiệu suất của nó) khi tài nguyên (thường là phần cứng) được thêm vào.

Khả năng mở rộng là một khía cạnh quan trọng của hệ thống điện tử, gói phần mềm, hệ thống cơ sở dữ liệu, bộ định tuyến, mạng, v.v., nếu chúng yêu cầu khả năng hoạt động dưới tải nặng. Hệ thống này được gọi là có thể mở rộng, nếu nó có thể tăng năng suất tương ứng với các nguồn lực bổ sung. Khả năng mở rộng có thể được đánh giá thông qua tỷ lệ giữa mức tăng hiệu suất hệ thống và mức tăng tài nguyên được sử dụng. Tỷ lệ này càng gần 1 thì càng tốt. Khả năng mở rộng cũng có nghĩa là khả năng tăng thêm tài nguyên mà không cần thay đổi cấu trúc đối với nút trung tâm của hệ thống.

Trong một hệ thống có khả năng mở rộng kém, việc thêm tài nguyên chỉ dẫn đến hiệu suất tăng nhẹ và sau một “ngưỡng” nhất định, việc thêm tài nguyên không có bất kỳ tác dụng có lợi nào.

Dọc và

Chia tỷ lệ dọc

Chia tỷ lệ dọc- tăng hiệu suất của từng thành phần hệ thống để cải thiện hiệu suất tổng thể. Khả năng mở rộng trong bối cảnh này có nghĩa là khả năng thay thế các thành phần trong hệ thống máy tính hiện có bằng các thành phần mạnh hơn và nhanh hơn khi nhu cầu tăng lên và công nghệ phát triển. Đây là cách dễ dàng nhất để mở rộng quy mô vì nó không yêu cầu bất kỳ thay đổi nào đối với các chương trình ứng dụng chạy trên các hệ thống như vậy.

Chia tỷ lệ theo chiều ngang

Chia tỷ lệ theo chiều ngang- chia hệ thống thành các thành phần cấu trúc nhỏ hơn và phân phối chúng trên các máy vật lý riêng biệt (hoặc các nhóm của chúng) và (hoặc) tăng số lượng máy chủ thực hiện cùng chức năng song song. Khả năng mở rộng trong bối cảnh này có nghĩa là khả năng thêm các nút, máy chủ, bộ xử lý mới vào hệ thống để tăng hiệu suất tổng thể. Phương pháp mở rộng quy mô này có thể yêu cầu thay đổi chương trình để chương trình có thể tận dụng tối đa lượng tài nguyên tăng lên.

Các chỉ số

Xem thêm

Ghi chú

Liên kết

Chia tỷ lệ dọc— mở rộng quy mô — tăng số lượng tài nguyên có sẵn cho phần mềm bằng cách tăng sức mạnh sử dụng từ máy chủ.

— mở rộng quy mô — tăng số lượng nút được kết hợp thành một cụm máy chủ khi thiếu CPU, bộ nhớ hoặc dung lượng ổ đĩa.

Cả hai đều là giải pháp cơ sở hạ tầng được yêu cầu trong các tình huống khác nhau khi dự án web phát triển.

Chia tỷ lệ dọc và ngang, chia tỷ lệ cho web

Ví dụ, hãy xem xét các máy chủ cơ sở dữ liệu. Đối với các ứng dụng lớn, đây luôn là thành phần được tải nhiều nhất của hệ thống.

Khả năng mở rộng quy mô cho máy chủ cơ sở dữ liệu được xác định bởi các giải pháp phần mềm được sử dụng: thông thường đây là các cơ sở dữ liệu quan hệ (MySQL, Postgresql) hoặc NoSQL(, Cassandra, v.v.).

Chia tỷ lệ theo chiều ngang cho các máy chủ cơ sở dữ liệu chịu tải nặng rẻ hơn nhiều

Một dự án web thường được bắt đầu trên một máy chủ, tài nguyên của nó sẽ cạn kiệt khi nó phát triển. Trong tình huống như vậy, có 2 lựa chọn:

  • di chuyển trang web đến một máy chủ mạnh hơn
  • thêm một máy chủ năng lượng thấp khác và kết hợp các máy thành một cụm

MySQL là RDBMS phổ biến nhất và giống như bất kỳ RDBMS nào trong số đó, yêu cầu nhiều tài nguyên máy chủ để chạy dưới tải. Có thể mở rộng quy mô chủ yếu lên trên. Có sharding (yêu cầu thay đổi mã để định cấu hình) và sharding, có thể khó hỗ trợ.

Chia tỷ lệ dọc

NoSQL có thể mở rộng quy mô một cách dễ dàng và tùy chọn thứ hai, chẳng hạn như MongoDB, sẽ mang lại nhiều lợi nhuận hơn về mặt tài chính và sẽ không yêu cầu cài đặt cũng như hỗ trợ tốn nhiều công sức cho giải pháp thu được. Sharding được thực hiện tự động.

Vì vậy, với MySQL, bạn sẽ cần một máy chủ có số lượng CPU và RAM lớn; những máy chủ như vậy có chi phí đáng kể.

Chia tỷ lệ theo chiều ngang
Với MongoDB bạn có thể thêm một máy chủ trung bình khác và giải pháp thu được sẽ hoạt động ổn định, mang lại khả năng chịu lỗi bổ sung.


Thu nhỏ quy mô hoặc là một giai đoạn tự nhiên của sự phát triển cơ sở hạ tầng. Bất kỳ máy chủ nào cũng có những hạn chế và khi đạt đến giới hạn đó hoặc khi chi phí của một máy chủ mạnh hơn trở nên cao một cách vô lý, các máy mới sẽ được thêm vào. Tải trọng được phân phối giữa chúng. Nó cũng cung cấp khả năng chịu lỗi.

Bạn nên bắt đầu thêm các máy chủ cỡ trung bình và thiết lập các cụm khi khả năng tăng tài nguyên của một máy đã cạn kiệt hoặc khi việc mua một máy chủ mạnh hơn hóa ra không mang lại lợi nhuận.

Ví dụ được đưa ra với cơ sở dữ liệu quan hệ và NoSQL là tình huống xảy ra thường xuyên nhất. Các máy chủ frontend và backend cũng có khả năng mở rộng.

Đọc về bộ cân bằng

|

Số lượng khách truy cập trang web không ngừng tăng lên luôn là một thành tựu lớn đối với các nhà phát triển và quản trị viên. Tất nhiên, ngoại trừ những tình huống khi lưu lượng truy cập tăng cao đến mức làm hỏng máy chủ web hoặc phần mềm khác. Việc gián đoạn trang web liên tục luôn gây tốn kém cho công ty.

Tuy nhiên, điều này có thể được sửa chữa. Và nếu bây giờ bạn đang nghĩ đến việc mở rộng quy mô thì bạn đang đi đúng hướng.

Tóm lại, khả năng mở rộng là khả năng của một hệ thống có thể xử lý một lượng lớn lưu lượng truy cập và thích ứng với sự tăng trưởng của nó trong khi vẫn duy trì UX mong muốn. Có hai phương pháp chia tỷ lệ:

  • Chiều dọc (còn gọi là mở rộng quy mô): tăng tài nguyên hệ thống, chẳng hạn như thêm bộ nhớ và sức mạnh xử lý. Phương pháp này cho phép bạn giải quyết nhanh chóng các vấn đề khi xử lý lưu lượng truy cập, nhưng tài nguyên của nó có thể nhanh chóng cạn kiệt.
  • Ngang (hoặc thu nhỏ): thêm máy chủ vào cụm. Chúng ta hãy xem xét kỹ hơn về phương pháp này.

Chia tỷ lệ theo chiều ngang là gì?

Nói một cách đơn giản, cụm là một nhóm máy chủ. Bộ cân bằng tải là một máy chủ phân phối khối lượng công việc giữa các máy chủ trong một cụm. Bất cứ lúc nào, bạn có thể thêm máy chủ web vào cụm hiện có để xử lý nhiều lưu lượng truy cập hơn. Đây là bản chất của việc chia tỷ lệ theo chiều ngang.

Bộ cân bằng tải chỉ chịu trách nhiệm quyết định máy chủ nào trong cụm sẽ xử lý yêu cầu nhận được. Về cơ bản, nó hoạt động như một proxy ngược.

Chia tỷ lệ theo chiều ngang chắc chắn là một phương pháp đáng tin cậy hơn để tăng hiệu suất ứng dụng, nhưng nó khó định cấu hình hơn so với chia tỷ lệ theo chiều dọc. Nhiệm vụ chính và khó khăn nhất trong trường hợp này là liên tục cập nhật và đồng bộ hóa tất cả các nút ứng dụng. Giả sử người dùng A gửi yêu cầu đến mydomain.com, sau đó bộ cân bằng sẽ chuyển yêu cầu đến máy chủ 1. Sau đó, yêu cầu của người dùng B sẽ được máy chủ 2 xử lý.

Điều gì xảy ra nếu người dùng A thực hiện các thay đổi đối với ứng dụng (ví dụ: tải tệp lên hoặc cập nhật nội dung của cơ sở dữ liệu)? Làm thế nào sự thay đổi này có thể được truyền đến các máy chủ còn lại trong cụm?

Câu trả lời cho những câu hỏi này và những câu hỏi khác có thể được tìm thấy trong bài viết này.

Tách máy chủ

Việc chuẩn bị hệ thống để mở rộng quy mô đòi hỏi phải tách các máy chủ; Tuy nhiên, điều rất quan trọng là các máy chủ có ít tài nguyên hơn sẽ có ít trách nhiệm hơn các máy chủ lớn hơn. Ngoài ra, việc chia ứng dụng thành các “phần” như vậy sẽ cho phép bạn nhanh chóng xác định các yếu tố quan trọng của nó.

Giả sử bạn có một ứng dụng PHP cho phép bạn xác thực và tải ảnh lên. Ứng dụng này dựa trên ngăn xếp LAMP. Ảnh được lưu trên đĩa và các liên kết đến chúng được lưu trữ trong cơ sở dữ liệu. Thách thức ở đây là hỗ trợ đồng bộ hóa giữa nhiều máy chủ ứng dụng chia sẻ dữ liệu này (tệp đã tải lên và phiên người dùng).

Để mở rộng quy mô ứng dụng này, bạn cần tách biệt máy chủ web và máy chủ cơ sở dữ liệu. Do đó, các nút sẽ xuất hiện trong cụm chia sẻ máy chủ cơ sở dữ liệu. Điều này sẽ tăng hiệu suất ứng dụng bằng cách giảm tải cho máy chủ web.

Trong tương lai, bạn có thể định cấu hình cân bằng tải; Bạn có thể đọc về điều này trong hướng dẫn ""

Tính nhất quán của phiên

Khi máy chủ web và cơ sở dữ liệu được tách biệt, bạn cần tập trung vào việc xử lý các phiên của người dùng.

Cơ sở dữ liệu quan hệ và hệ thống tập tin mạng

Dữ liệu phiên thường được lưu trữ trong cơ sở dữ liệu quan hệ (chẳng hạn như MySQL) vì chúng dễ cấu hình.

Tuy nhiên, giải pháp này không đáng tin cậy nhất vì trong trường hợp này tải sẽ tăng lên. Máy chủ phải ghi mọi lần đọc và ghi vào cơ sở dữ liệu cho mọi yêu cầu và nếu lưu lượng truy cập tăng đột ngột, cơ sở dữ liệu thường sẽ bị lỗi trước các thành phần khác.

Hệ thống tệp mạng là một cách đơn giản khác để lưu trữ dữ liệu; điều này không yêu cầu thay đổi mã nguồn, nhưng hệ thống mạng xử lý các hoạt động I/O rất chậm và điều này có thể có tác động tiêu cực đến hiệu suất ứng dụng.

Phiên dính

Phiên cố định được triển khai trên bộ cân bằng tải và không yêu cầu bất kỳ thay đổi nào đối với các nút ứng dụng. Đây là phương pháp thuận tiện nhất để xử lý phiên của người dùng. Bộ cân bằng tải sẽ luôn hướng người dùng đến cùng một máy chủ, loại bỏ nhu cầu phân phối dữ liệu phiên giữa các nút còn lại trong cụm.

Tuy nhiên, giải pháp này cũng có một nhược điểm nghiêm trọng. Bây giờ bộ cân bằng không chỉ phân phối tải mà còn có một nhiệm vụ bổ sung. Điều này có thể ảnh hưởng đến hiệu suất của nó và khiến nó bị hỏng.

Máy chủ Memcached và Redis

Bạn cũng có thể định cấu hình một hoặc nhiều máy chủ bổ sung để xử lý phiên. Đây là cách đáng tin cậy nhất để giải quyết các vấn đề liên quan đến xử lý phiên.

Hành động cuối cùng

Mở rộng quy mô theo chiều ngang của một ứng dụng lúc đầu có vẻ như là một giải pháp rất phức tạp và khó hiểu, nhưng nó giúp loại bỏ các vấn đề giao thông nghiêm trọng. Điều chính là học cách làm việc với bộ cân bằng tải để hiểu thành phần nào yêu cầu cấu hình bổ sung.

Hiệu suất mở rộng và ứng dụng có liên quan rất chặt chẽ. Tất nhiên, không phải tất cả các ứng dụng và trang web đều cần mở rộng quy mô. Tuy nhiên, tốt hơn hết bạn nên suy nghĩ trước về điều này, tốt nhất là ở giai đoạn phát triển ứng dụng.

Thẻ: ,

Oleg Spiryaev

Gần đây, thường xuyên có những tuyên bố rằng các máy chủ tầm trung và cao cấp đang được thay thế tích cực bởi các nhóm máy chủ cấp thấp, hợp nhất trong các giá đỡ hoặc cụm. Tuy nhiên, một số chuyên gia không đồng ý. Do đó, theo Dataquest, tỷ lệ các mẫu máy có giá từ 500 nghìn USD trở lên (bao gồm các máy chủ SMP tầm trung và cao cấp) trong tổng doanh số bán máy chủ từ năm 2000 đến năm 2002 đã tăng từ 38 lên 52%.

Dữ liệu khác mà IDC thu được cho thấy sự tăng trưởng (ít nhất là về số lượng máy) trong lĩnh vực mô hình máy chủ cấp thấp - với hai bộ xử lý. IDC cũng dự đoán rằng vào năm 2005, hệ điều hành phổ biến nhất dành cho máy chủ có giá từ 50.000 đến 3 triệu USD sẽ là Unix. So sánh dữ liệu này, rõ ràng là các máy chủ Unix tầm trung và cao cấp sẽ vẫn là nền tảng chiếm ưu thế cho các trung tâm dữ liệu, nhưng sẽ được bổ sung bởi ngày càng nhiều máy chủ nhỏ hơn (thường có bộ xử lý kép).

Xu hướng này nổi lên do sự tách biệt giữa các cấp độ tính toán khác nhau trong trung tâm dữ liệu (Hình 1). Cấp 1, hay cấp trước, dần dần chuyển sang mô hình mở rộng quy mô gồm các máy chủ nhỏ, trong khi Cấp 3 (tầng cơ sở dữ liệu) bị chi phối bởi các máy chủ mở rộng quy mô. Lớp 2 (lớp ứng dụng) trở thành khu vực cùng tồn tại các kiến ​​trúc dọc và ngang.

Kiến trúc dọc và ngang

Hãy xem xét sự khác biệt chính giữa kiến ​​trúc dọc và ngang. Máy chủ mở rộng quy mô là các hệ thống SMP (bộ nhớ chia sẻ hoặc đa xử lý đối xứng) lớn với hơn bốn đơn vị xử lý trung tâm. Họ chỉ sử dụng một bản sao của hệ điều hành để kiểm soát tất cả các bộ xử lý, bộ nhớ và các thành phần I/O. Thông thường, tất cả các tài nguyên này được đặt trong một giá hoặc tủ. Các máy chủ này kết nối với nhau qua một trung tâm tốc độ cao hoặc bảng nối đa năng với độ trễ thấp và khả năng truy cập nhất quán vào bộ đệm. Bạn có thể bổ sung thêm tài nguyên bằng cách lắp đặt thêm bo mạch chủ bên trong tủ. Trong các hệ thống kiến ​​trúc tháp (hoặc SMP), bộ nhớ được chia sẻ, nghĩa là tất cả các bộ xử lý và thành phần I/O đều có quyền truy cập vào tất cả bộ nhớ. Người dùng "xem" bộ nhớ như một đối tượng lớn.

Ngoài ra, chia tỷ lệ theo chiều ngang, các hệ thống được kết nối qua mạng hoặc được nhóm lại với nhau. Các kết nối thường sử dụng các công nghệ mạng tiêu chuẩn như Fast Ethernet, Gigabit Ethernet (GBE) và Kết nối kết hợp có thể mở rộng (SCI), cung cấp thông lượng thấp hơn và độ trễ cao hơn so với các hệ thống dọc. Tài nguyên trong trường hợp này được phân phối giữa các nút, thường chứa từ một đến bốn bộ xử lý; mỗi nút có bộ xử lý và bộ nhớ riêng và có thể có hệ thống con I/O riêng hoặc chia sẻ nó với các nút khác. Mỗi nút chạy một bản sao riêng của hệ điều hành. Tài nguyên được mở rộng bằng cách thêm nút, nhưng không phải bằng cách thêm tài nguyên vào nút. Bộ nhớ trong các hệ thống ngang được phân phối, nghĩa là mỗi nút có bộ nhớ riêng được bộ xử lý và hệ thống con I/O của nó truy cập trực tiếp. Việc truy cập các tài nguyên này từ một nút khác chậm hơn nhiều so với từ nút nơi chúng được đặt. Ngoài ra, với kiến ​​trúc theo chiều ngang, không có quyền truy cập nhất quán giữa các nút vào bộ nhớ và các ứng dụng được sử dụng tiêu tốn tương đối ít tài nguyên nên chúng “vừa” trên một nút duy nhất và không cần quyền truy cập nhất quán. Nếu một ứng dụng yêu cầu nhiều nút, nó phải tự cung cấp quyền truy cập bộ nhớ nhất quán.

Nếu một hệ thống ngang đáp ứng được các yêu cầu ứng dụng thì kiến ​​trúc này thích hợp hơn vì chi phí mua lại nó thấp hơn. Thông thường, chi phí mua lại mỗi bộ xử lý cho hệ thống ngang thấp hơn so với hệ thống dọc. Sự khác biệt về giá là do các hệ thống dọc sử dụng các tính năng RAS (độ tin cậy, tính khả dụng, khả năng bảo trì) mạnh mẽ hơn cũng như các kết nối hiệu suất cao. Tuy nhiên, có một số hạn chế trong việc sử dụng các hệ thống có kiến ​​trúc ngang. Dưới đây chúng ta sẽ thảo luận về những điều kiện nào có thể sử dụng hệ thống ngang và khi nào cần mở rộng quy mô theo chiều dọc.

Ngoài một máy chủ SMP lớn, kiến ​​trúc dọc còn bao gồm các cụm máy chủ SMP lớn được sử dụng cho một ứng dụng quy mô lớn.

Các máy chủ dạng mô-đun hoặc phiến được giới thiệu gần đây trên thị trường, thường được trang bị một hoặc hai bộ xử lý, là một ví dụ về máy chủ ngang. Ở đây cụm bao gồm các nút nhỏ, mỗi nút có một máy chủ SMP cấp đầu vào với số lượng bộ xử lý trung tâm từ 1 đến 4.

Một cách khác để mở rộng quy mô là thông qua các hệ thống điện toán song song lớn (MPP), bao gồm nhiều bộ xử lý nhỏ được cài đặt trong một tủ duy nhất, mỗi bộ xử lý có bản sao HĐH riêng hoặc bản sao của vi nhân hệ điều hành. Hiện tại, chỉ có một số hệ thống MPP được sản xuất, thường là các giải pháp chuyên dụng. Ví dụ: đây là các hệ thống Terradata do NCR, IBM RS/6000SP (SP-2) và HP Tandem sản xuất không ngừng nghỉ.

Bảng 1. Đặc điểm kiến ​​trúc đứng và ngang

Tham số Hệ thống dọc Hệ thống ngang
Ký ức Chia sẻ lớn nhỏ chuyên dụng
Dòng Nhiều chủ đề phụ thuộc lẫn nhau Nhiều chủ đề độc lập
Kết nối Liên kết chặt chẽ bên trong Kết nối lỏng lẻo bên ngoài
RAS Hệ thống đơn RAS mạnh mẽ RAS mạnh mẽ sử dụng bản sao
Bộ xử lý trung tâm Nhiều tiêu chuẩn Nhiều tiêu chuẩn
hệ điều hành Một bản sao hệ điều hành cho nhiều bộ xử lý trung tâm Một số bản sao của HĐH (một bản cho bộ xử lý 1-4)
Cách trình bày Trong một tủ quần áo Đặt một số lượng lớn máy chủ trong một tủ rack
Tỉ trọng Mật độ bộ xử lý cao trên mỗi đơn vị diện tích sàn
Thiết bị Tiêu chuẩn và được thiết kế đặc biệt Tiêu chuẩn
Chia tỷ lệ Trong một khung máy chủ duy nhất Ở quy mô đa máy chủ
Sự mở rộng Bằng cách cài đặt các thành phần bổ sung trên máy chủ Bằng cách thêm các nút mới
Ngành kiến ​​​​trúc 64-bit 32-và 64-bit

Bàn 1 cho phép phân tích so sánh các kiến ​​trúc theo chiều dọc và chiều ngang.

  • Hệ thống dọc chia sẻ bộ nhớ và cung cấp quyền truy cập bộ đệm nhất quán.
  • Hệ thống dọc lý tưởng cho các luồng nhiệm vụ cần liên lạc với nhau.
  • Các hệ thống dọc được đặc trưng bởi các chức năng RAS mạnh mẽ và trong các hệ thống ngang, tính khả dụng được triển khai bằng cách sử dụng bản sao lớn (một số nút được kết nối với một cụm, do đó, sự cố của một trong số chúng sẽ ít ảnh hưởng đến hoạt động của toàn bộ hệ thống).
  • Trong các hệ thống dọc, một bản sao của HĐH bao gồm tất cả các tài nguyên. Một số hệ thống dọc, chẳng hạn như máy chủ trung bình và cao cấp của Sun Microsystems (Sun Fire 4800 đến Sun Fire 15K), có thể được chia thành các máy chủ dọc nhỏ hơn.
  • Hệ thống dọc sử dụng càng nhiều thành phần tiêu chuẩn càng tốt, nhưng một số thành phần chính (chẳng hạn như các kết nối) được thiết kế đặc biệt.
  • Hệ thống dọc có thể được mở rộng bằng cách cài đặt các thành phần bổ sung vào khung hiện có (bộ xử lý mạnh hơn, bộ nhớ bổ sung, kết nối I/O bổ sung và hiệu suất cao hơn, v.v.). Các hệ thống ngang được mở rộng bằng cách thêm một nút hoặc thay thế các nút cũ bằng nút mới.
  • Hầu hết tất cả các hệ thống dọc đều là 64 bit, trong khi hệ thống ngang có thể là 32 bit hoặc 64 bit.

Hệ thống dọc phù hợp hơn với một số loại ứng dụng và hệ thống ngang phù hợp hơn với các loại ứng dụng khác, nhưng trong nhiều trường hợp, sự lựa chọn kiến ​​trúc tối ưu phụ thuộc vào quy mô của vấn đề. Trong bảng Hình 2 cho thấy các ví dụ về ứng dụng mà kiến ​​trúc dọc hoặc ngang là tối ưu.

Bảng 2. Các loại ứng dụng cho kiến ​​trúc dọc và ngang

Các máy chủ nhỏ và mô-đun rất phù hợp cho các ứng dụng không có trạng thái, quy mô nhỏ và dễ dàng sao chép. Và đối với các ứng dụng sử dụng thông tin trạng thái và khối lượng dữ liệu lớn yêu cầu truyền dữ liệu chuyên sâu trong hệ thống, máy chủ dọc là giải pháp lý tưởng. Trong thị trường điện toán kỹ thuật hiệu năng cao (HPTC), có nhiều ứng dụng trong đó các luồng phụ thuộc lẫn nhau và trao đổi dữ liệu với nhau. Ngoài ra còn có các ứng dụng yêu cầu lượng lớn bộ nhớ dùng chung. Các máy chủ SMP lớn phù hợp nhất cho hai loại ứng dụng này. Tuy nhiên, cũng có những ứng dụng HPTC trong đó các luồng thực thi độc lập và không yêu cầu lượng bộ nhớ dùng chung lớn. Các ứng dụng như vậy có thể được phân vùng, tạo thành các cụm máy chủ nhỏ lý tưởng để chạy chúng. Tương tự như vậy, một số ứng dụng thương mại được phân vùng và được hưởng lợi từ các máy chủ ngang, trong khi những ứng dụng khác không thể được phân vùng nên máy chủ dọc là nền tảng tốt nhất cho chúng.

Các yếu tố ảnh hưởng đến hiệu suất

Tất cả các trung tâm dữ liệu lớn đều là máy tính song song. Ở đây, thậm chí các cụm có thể được coi là một loại hệ thống song song đặc biệt. Hiệu suất cao đòi hỏi một hệ thống cân bằng với bộ xử lý mạnh mẽ, kết nối và I/O tốc độ cao, hệ điều hành có thể mở rộng, ứng dụng được tối ưu hóa và các tính năng RAS nâng cao.

Bộ xử lý và kết nối hệ thống

Bộ xử lý chắc chắn là một thành phần thiết yếu nhưng chúng chỉ quyết định một phần hiệu suất tổng thể của hệ thống. Điều quan trọng hơn là đảm bảo rằng bộ xử lý đang chạy ở công suất tối đa. Bộ xử lý mạnh mẽ chỉ được tải 50% sẽ hoạt động kém hơn bộ xử lý chậm hơn được tải 80%.

Ngoài ra, khi số lượng bộ xử lý trong một hệ thống song song tăng lên, các kết nối hệ thống thay vì sức mạnh của bộ xử lý sẽ được chú trọng. Chúng chịu trách nhiệm di chuyển dữ liệu từ đĩa, từ bộ nhớ và từ mạng tới bộ xử lý. Trong một cụm, kết nối là kết nối mạng, chẳng hạn như Fast Ethernet hoặc Gigabit Ethernet. Các liên kết cụm di chuyển dữ liệu giữa các nút, trong khi các liên kết hệ thống di chuyển dữ liệu trong một hệ thống. Nếu kết nối quá chậm, bộ xử lý sẽ không hoạt động để chờ dữ liệu.

Các kết nối hệ thống cũng được sử dụng để di chuyển địa chỉ dữ liệu, điều này cần thiết để hỗ trợ kết hợp bộ đệm. Nếu kết nối hệ thống quá chậm trong việc truyền địa chỉ dữ liệu, bộ xử lý sẽ lại không hoạt động để chờ dữ liệu vì nó cần biết địa chỉ của nó để truy cập. Kết nối nhanh cung cấp thông lượng cao và độ trễ thấp (thời gian thấp từ khi yêu cầu dữ liệu được thực hiện cho đến khi dữ liệu bắt đầu được truyền đi).

Sự khác biệt kỹ thuật chính giữa hệ thống ngang và dọc là thông lượng và độ trễ của các kết nối của chúng. Đối với các kết nối cụm, thông lượng có thể dao động từ 125 MB/s đối với Fast Ethernet đến 200 MB/s đối với SCI và độ trễ có thể dao động từ 100 nghìn ns đối với GBE và lên tới 10 nghìn ns đối với SCI. Sử dụng giao diện InfiniBand, có thể triển khai các kết nối nhanh hơn với tốc độ tối đa từ khoảng 250 MB/s cho phiên bản đầu tiên và lên đến 3 GB/s cho các phiên bản tiếp theo.

Đầu vào và đầu ra

I/O nhanh là cần thiết để kết nối có thể nhanh chóng truy xuất dữ liệu từ đĩa và mạng và truyền nó đến bộ xử lý. Nút thắt cổ chai trong hệ thống con I/O có thể tác động tiêu cực đến hiệu suất của ngay cả những bộ xử lý và kết nối nhanh nhất.

hệ điều hành

Ngay cả phần cứng tốt nhất cũng không hiệu quả nếu hệ điều hành không đủ khả năng mở rộng. Đối với các hệ thống ngang, khả năng mở rộng hệ điều hành không quá quan trọng vì không quá bốn bộ xử lý đang chạy trên một nút hoặc với một bản sao hệ điều hành riêng biệt.

Tính khả dụng của hệ thống

Nói chung, tính khả dụng của hệ thống phần lớn phụ thuộc vào loại kiến ​​trúc. Trong các hệ thống SMP lớn, chức năng RAS được tích hợp vào hệ thống và được bổ sung khả năng chuyển đổi dự phòng cho hai đến bốn nút. Trong các hệ thống ngang, RAS của các nút riêng lẻ kém hơn, nhưng những cải tiến về chức năng này đạt được bằng cách sao chép các nút nhiều lần.

Ứng dụng được tối ưu hóa

Các ứng dụng cần được tối ưu hóa cho kiến ​​trúc hệ thống máy tính. Dễ dàng nhất để viết và tối ưu hóa các ứng dụng cho hệ thống SMP. Các ứng dụng thương mại lớn được tối ưu hóa đặc biệt cho hệ thống SMP và thậm chí còn được phát triển trên chúng, đó là lý do tại sao SMP đã thống trị thị trường hệ thống tầm trung và cao cấp trong mười năm qua.

Kích thước ứng dụng

Như đã lưu ý, các hệ thống SMP lớn sử dụng kết nối tốc độ cao để cung cấp đủ hiệu năng hệ thống. Các hệ thống ngang có thể gặp vấn đề về hiệu suất do thông lượng thấp và độ trễ kết nối cao trong trường hợp dữ liệu cần được truyền thường xuyên giữa các nút. Tuy nhiên, một số ứng dụng không yêu cầu tốc độ kết nối cao để đạt được hiệu suất cao—thường là các ứng dụng nhỏ và ứng dụng có thể dễ dàng sao chép (ví dụ: máy chủ Web, proxy, tường lửa và máy chủ ứng dụng nhỏ). Trong các hệ thống ngang như vậy, mỗi nút thực hiện một nhiệm vụ nhỏ độc lập với công việc của tất cả các nút khác.

Ví dụ: trong kiến ​​trúc ngang (hoặc bộ nhớ phân tán), bốn nút bộ xử lý (mỗi nút có RAM riêng biệt và hệ thống con I/O chuyên dụng hoặc dùng chung) có thể sử dụng kết nối mạng như Gigabit Ethernet. Môi trường điện toán này chạy ba loại khối lượng công việc. Tải nhỏ nhất phù hợp với một nút, nhưng khi nó tăng lên, cần có một số nút để hoàn thành nó. Theo các chuyên gia, khi thực hiện một nhiệm vụ trên nhiều nút, hiệu suất sẽ giảm đáng kể do kết nối giữa các nút chậm. Khối lượng công việc nhỏ không cần giao tiếp với nhau sẽ hoạt động tốt với kiến ​​trúc ngang, nhưng việc chạy khối lượng công việc quy mô lớn trên đó sẽ gặp nhiều thách thức.

Ví dụ: một cấu hình hệ thống SMP lớn có thể bao gồm tới 100 bộ xử lý, 576 GB bộ nhớ dùng chung và các kết nối tốc độ cao. Một hệ thống như vậy có thể xử lý tất cả các loại khối lượng công việc vì không có giao tiếp giữa các nút và giao tiếp hiệu quả giữa các quy trình. Tất cả các đơn vị xử lý trung tâm có thể truy cập đồng thời vào tất cả các đĩa, tất cả bộ nhớ và kết nối mạng - đây là tính năng chính của hệ thống SMP (hoặc hệ thống dọc).

Câu hỏi thường đặt ra là có nên đặt tải trọng nhỏ lên SMP lớn hay không. Mặc dù điều này có thể thực hiện được về mặt kỹ thuật, nhưng từ quan điểm kinh tế, cách tiếp cận này không hợp lý. Đối với các SMP lớn, chi phí mua mỗi bộ xử lý cao hơn so với các hệ thống nhỏ. Do đó, nếu một ứng dụng có thể chạy trên một nút nhỏ (hoặc một số nút nhỏ) mà không gặp vấn đề lớn về quản lý thì việc mở rộng quy mô là lựa chọn tốt hơn để triển khai. Nhưng nếu ứng dụng quá lớn để chạy trên một nút nhỏ (hoặc nhiều nút), thì máy chủ SMP lớn sẽ là lựa chọn tốt nhất cả về hiệu suất lẫn quản trị hệ thống.

Hiệu suất cấp cơ sở dữ liệu

Câu hỏi chính ở đây là so sánh hiệu suất của các máy chủ SMP vừa và lớn với một cụm máy chủ nhỏ (không quá bốn bộ xử lý).

Khi thảo luận về khả năng mở rộng, các công ty sản xuất sử dụng một số thuật ngữ kỹ thuật. Do đó, tăng trưởng hiệu suất (Tăng tốc) cho SMP được định nghĩa là tỷ lệ tốc độ thực thi ứng dụng trên một số bộ xử lý và trên một bộ xử lý. Ví dụ: tăng tốc tuyến tính có nghĩa là trên 40 bộ xử lý, một ứng dụng sẽ chạy nhanh hơn 40 lần (40 lần) so với trên một bộ xử lý. Việc tăng hiệu suất không phụ thuộc vào số lượng bộ xử lý, tức là đối với cấu hình 24 bộ xử lý, nó sẽ giống như cấu hình 48 bộ xử lý. Việc tăng hiệu suất cụm (Tăng tốc cụm) chỉ khác ở chỗ khi tính toán, số lượng nút được lấy chứ không phải số lượng bộ xử lý. Giống như tăng trưởng hiệu suất SMP, tăng trưởng hiệu suất cụm không đổi trên số lượng nút khác nhau.

Hiệu quả mở rộng quy mô đặc trưng cho khả năng của các ứng dụng, đặc biệt là các ứng dụng được phân cụm, có thể mở rộng quy mô trên một số lượng lớn các nút. Người ta thường tin rằng hiệu quả mở rộng quy mô phụ thuộc vào số lượng nút tham gia phép đo. Hiệu suất mở rộng SMP là mức tăng hiệu suất chia cho số lượng bộ xử lý và Hiệu suất của cụm là mức tăng hiệu suất của cụm chia cho số lượng nút trong đó. Bạn cần hiểu ý nghĩa của các tham số này để không hiểu nhầm vì hiệu suất chia tỷ lệ 90% trên hai nút không giống với hiệu suất chia tỷ lệ 90% trên bốn nút.

Trong bộ lễ phục. Hình 2 hiển thị ba biểu đồ: khả năng mở rộng tuyến tính lý tưởng, khả năng mở rộng của máy chủ SMP 24 bộ xử lý ở mức 95% và khả năng mở rộng của một cụm gồm hai máy chủ 4 bộ xử lý ở mức 90%. Có thể thấy có những hạn chế nhất định về khả năng mở rộng cơ sở dữ liệu theo cụm (với tỷ lệ theo chiều ngang). Việc kết nối nhiều máy chủ nhỏ lại với nhau không mang lại khả năng mở rộng cần thiết cho các ứng dụng vừa và lớn. Lý do cho điều này là do giới hạn băng thông của các kết nối nội bộ cụm, gánh nặng bổ sung lên phần mềm cơ sở dữ liệu liên quan đến quản lý cụm và khó viết ứng dụng cho môi trường cụm bộ nhớ phân tán.

Ví dụ: các kết quả điểm chuẩn được công bố cho thấy rằng Oracle9i RAC (Cụm ứng dụng thực) có mức tăng hiệu suất là 1,8 và hiệu suất mở rộng là 90%. Hiệu suất mở rộng này có vẻ khá cao, nhưng trên thực tế, khả năng mở rộng 90% cho bốn nút là không hiệu quả khi so sánh với kết quả của các máy chủ SMP lớn.

Hiệu suất cấp ứng dụng

Lớp ứng dụng trong trung tâm dữ liệu ba tầng rất khác với lớp cơ sở dữ liệu. Thông thường, các ứng dụng ở cấp độ này là không trạng thái - nói cách khác, không có dữ liệu nào được lưu trữ trên chính máy chủ hoặc chỉ một phần nhỏ của nó được lưu trữ. Lớp này chứa các quy tắc nghiệp vụ cho các dịch vụ ứng dụng. Các giao dịch đạt đến cấp độ ứng dụng và được xử lý bởi nó. Khi dữ liệu cần được ghi hoặc đọc, các giao dịch sẽ được chuyển đến lớp cơ sở dữ liệu. Máy chủ ứng dụng có xu hướng hợp nhất các kết nối cơ sở dữ liệu vì số lượng lớn kết nối có tác động tiêu cực đến hiệu suất.

Trong hầu hết các trường hợp, tầng máy chủ ứng dụng yêu cầu nhiều bộ xử lý hơn tầng cơ sở dữ liệu cho mỗi dịch vụ ứng dụng riêng lẻ. Ví dụ: trong trường hợp SAP R/3, tỷ lệ này là khoảng 10 bộ xử lý cho mỗi bộ xử lý cơ sở dữ liệu, tức là nếu SAP R/3 yêu cầu 20 bộ xử lý cho lớp cơ sở dữ liệu thì sẽ có khoảng 200 bộ xử lý cho lớp ứng dụng. Câu hỏi đặt ra là triển khai cái gì có lợi hơn - 100 máy chủ hai bộ xử lý hoặc 10 máy chủ 20 bộ xử lý. Tương tự, tại Oracle tỷ lệ bộ xử lý ứng dụng và bộ xử lý cơ sở dữ liệu là khoảng 5 trên 1.

Người ta tin rằng các máy chủ ứng dụng không cần phải được phân phối trên nhiều nút. Nhiều bản sao của phần mềm ứng dụng có thể được phân phối trên các máy chủ vật lý khác nhau có dung lượng khác nhau hoặc trên các miền động của các máy chủ lớn.

Số lượng bộ xử lý cần thiết cho lớp ứng dụng sẽ gần như nhau bất kể kiến ​​trúc máy tính. Chi phí mua phần cứng và phần mềm cho kiến ​​trúc ngang sẽ thấp hơn vì chi phí cho mỗi bộ xử lý trong trường hợp này thấp hơn. Trong hầu hết các trường hợp, hệ thống ngang có thể cung cấp hiệu suất cần thiết để đáp ứng thỏa thuận cấp độ dịch vụ. Chi phí liên quan đến việc mua giấy phép phần mềm gần như giống nhau đối với cả hai kiến ​​trúc.

Đồng thời, chi phí quản lý và bảo trì cơ sở hạ tầng cho kiến ​​trúc theo chiều ngang có thể cao hơn. Khi được triển khai trên các hệ thống ngang, nhiều bản sao của hệ điều hành và phần mềm máy chủ ứng dụng sẽ được sử dụng. Chi phí duy trì cơ sở hạ tầng thường tăng tỷ lệ thuận với số lượng bản sao của hệ điều hành và ứng dụng. Ngoài ra, với kiến ​​trúc theo chiều ngang, việc sao lưu và khắc phục thảm họa trở nên phi tập trung và cơ sở hạ tầng mạng khó quản lý hơn.

Chi phí quản trị hệ thống rất khó đo lường. Thông thường, các mô hình so sánh việc triển khai máy chủ ứng dụng theo chiều ngang và chiều dọc cho thấy rằng việc quản lý ít máy chủ mạnh hơn, mạnh hơn (máy chủ dọc) sẽ ít tốn kém hơn so với việc quản lý nhiều máy chủ nhỏ hơn. Nói chung, khi chọn loại kiến ​​trúc để triển khai lớp ứng dụng, người quản lý CNTT nên xem xét cẩn thận chi phí mua phần cứng.

Tác động của kiến ​​trúc đến tính sẵn sàng

Tính sẵn sàng là rất quan trọng đối với các trung tâm dữ liệu hiện đại - dịch vụ ứng dụng phải khả dụng 24x7x365 (24 giờ một ngày, 7 ngày một tuần, 365 ngày một năm). Tùy thuộc vào nhu cầu của một trung tâm dữ liệu cụ thể, các sơ đồ có tính sẵn sàng cao khác nhau sẽ được sử dụng. Để lựa chọn giải pháp cụ thể, cần xác định thời gian ngừng hoạt động có thể chấp nhận được (có kế hoạch và không có kế hoạch). Trong bộ lễ phục. Hình 3 cho thấy tỷ lệ phần trăm sẵn có ảnh hưởng như thế nào đến thời gian ngừng hoạt động.

Khi yêu cầu về tính khả dụng tăng lên thì chi phí của giải pháp cũng tăng theo. Người quản lý trung tâm dữ liệu phải xác định sự kết hợp nào giữa chi phí, độ phức tạp và tính sẵn sàng đáp ứng tốt nhất các yêu cầu về cấp độ dịch vụ. Các trung tâm dữ liệu yêu cầu độ khả dụng khoảng 99,95% có thể triển khai một máy chủ SMP duy nhất có các tính năng RAS như dự phòng phần cứng đầy đủ và bảo trì trực tuyến.

Tuy nhiên, để đạt được độ sẵn sàng lớn hơn 99,95%, sẽ cần có một cụm. Phần mềm Sun Cluster với khả năng chuyển đổi dự phòng HA (Tính sẵn sàng cao) cung cấp độ sẵn sàng 99,975%. Chuyển đổi dự phòng HA sử dụng máy chủ chính và máy chủ dự phòng nóng; Nếu máy chủ chính bị lỗi, máy chủ dự phòng sẽ đảm nhận trách nhiệm của nó. Thời gian cần thiết để khởi động lại dịch vụ sẽ khác nhau tùy theo ứng dụng và có thể mất vài phút, đặc biệt đối với các ứng dụng cơ sở dữ liệu yêu cầu khôi phục sử dụng nhiều dữ liệu để khôi phục giao dịch.

Nếu trung tâm dữ liệu không thể chấp nhận thời gian ngừng hoạt động trong vài phút thì hệ thống chủ động có thể là một giải pháp, trong đó ứng dụng được triển khai trên hai hoặc nhiều nút để nếu một trong số chúng bị lỗi thì các nút khác sẽ tiếp tục chạy ứng dụng. Kết quả là thời gian ngừng hoạt động sẽ rất ngắn (một số khách hàng báo cáo rằng thời gian ngừng hoạt động kéo dài chưa đến 1 phút), đôi khi người dùng thậm chí có thể không nhận thấy lỗi nút.

Máy chủ dọc cung cấp tính sẵn sàng cao bằng cách nhúng nhiều tính năng RAS vào một máy chủ duy nhất để giảm thiểu thời gian ngừng hoạt động theo kế hoạch và ngoài kế hoạch. Trong các máy chủ ngang, các chức năng cung cấp mức RAS cao được triển khai không phải ở cấp độ máy chủ riêng lẻ mà thông qua việc sao chép và bố trí một số máy chủ. Do việc triển khai các tính năng và kết nối RAS khác nhau, các máy chủ ngang thường rẻ hơn trên mỗi bộ xử lý.

Đối với kiến ​​trúc ba tầng, một ví dụ điển hình về tính sẵn sàng cao theo chiều ngang là việc triển khai các máy chủ Web. Bạn có thể triển khai nhiều máy chủ nhỏ, mỗi máy chủ có cài đặt một bản sao riêng của phần mềm máy chủ Web. Nếu một máy chủ Web ngừng hoạt động, các giao dịch của nó sẽ được phân phối lại giữa các máy chủ hoạt động tốt còn lại. Trong trường hợp máy chủ ứng dụng, chúng có thể được lưu trữ trên cả máy chủ ngang và dọc và đạt được tính sẵn sàng cao thông qua tính dự phòng. Dù triển khai một vài máy chủ SMP lớn hay nhiều máy chủ nhỏ hơn, dự phòng vẫn là cách chính để đạt được RAS cao ở cấp ứng dụng.

Tuy nhiên, ở cấp cơ sở dữ liệu, tình hình thay đổi. Cơ sở dữ liệu có trạng thái và trong hầu hết các trường hợp, về bản chất, yêu cầu dữ liệu phải được phân vùng và có thể truy cập được từ tất cả các bộ xử lý/nút. Điều này có nghĩa là để có tính sẵn sàng cao với tính dự phòng, bạn cần sử dụng phần mềm phân cụm như Sun Cluster hoặc Oracle9i RAC (để có tính sẵn sàng rất cao).

kết luận

Cả kiến ​​trúc dọc và ngang đều có chỗ đứng riêng trong trung tâm dữ liệu ngày nay. Mặc dù ngày nay trọng tâm là các công nghệ mới như máy chủ mô-đun và cơ sở dữ liệu song song, thị trường vẫn có nhu cầu cao đối với các máy chủ tầm trung và cao cấp.

Hệ thống dọc và ngang có thể sử dụng cùng một phần mềm, hệ điều hành và thậm chí cùng bộ xử lý. Sự khác biệt chính ảnh hưởng đến giá cả và hiệu suất là các kết nối được sử dụng trong mỗi kiến ​​trúc. Máy chủ ngang sử dụng các kết nối bên ngoài được ghép lỏng lẻo, trong khi máy chủ dọc sử dụng các kết nối được ghép chặt chẽ để cung cấp tốc độ truyền dữ liệu cao hơn.

Đối với giao diện người dùng, máy chủ ngang thường cung cấp giải pháp tối ưu về hiệu suất, tổng chi phí mua lại và tính khả dụng. Đối với lớp ứng dụng, cả kiến ​​trúc dọc và ngang đều có thể được sử dụng hiệu quả. Đối với lớp cơ sở dữ liệu, giải pháp tối ưu là sử dụng máy chủ dọc, bất kể mức độ sẵn sàng được yêu cầu.