1. Trang chủ
  2. » Luận Văn - Báo Cáo

Tìm hiểu về cân bằng tải cho WebServer

76 3,1K 20

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 76
Dung lượng 2,95 MB

Nội dung

Tìm hiểu về cân bằng tải cho WebServer Ngày nay, với sự phát triển của dịch vụ web, số lượng website ngày càng nhiều đem đến cho người dùng rất nhiều sự lựa chọn. Để tồn tại và phát triển, website của các tổ chức, doanh nghiệp phải giữ được người dùng hiện tại và tăng thêm số lượng người dùng mới. Mục đích nghiên cứu Giải thích được các kỹ thuật cân bằng tải Webserver Phân tích được các thuật toán cân bằng tải cho Webserver Cài đặt được hệ thống Webserver Triển khai cài đặt được hệ thống cân bằng tải cho Webserver

Tìm hiểu về cân bằng tải cho WebServer MỤC LỤC DANH MỤC CÁC BẢNG BIỂU, HÌNH VẼ DANH MỤC CÁC TỪ VIẾT TẮT Từ viết tắt Từ đầy đủ Giải thích ARP Address Resolution Protocol Giao thức phân giải địa chỉ CDN Content Delivery Network Mạng lưới phân phối nội dung CPU Central Processing Unit Bộ trung tâm xử lý DAO Data Access Object Đối tượng truy cập dữ liệu DB Database Cơ sở dữ liệu 1 Tìm hiểu về cân bằng tải cho WebServer DNS Domain Name System Hệ thống tên miền DRR Dynamic Round Robin Thuật toán động luân chuyển vòng FTP File Transfer Protocol Giao thức truyền tập tin GSLB Global Server Load Balancing Cân bằng tải server toàn cầu HA High Availability Tính sẵn sàng cao của server HTML Hypertext Markup Language Ngôn ngữ đánh dấu siêu văn bản HTTP Hypertext Transfer Protocol Giao thức truyền tải siêu văn bản ID Identification Mã xác định/ định danh IGMP Internet Group Management Protocol Giao thức quản lý nhóm internet IIS Internet Information Services Dịch vụ thông tin trên internet IP Internet Protocol Địa chỉ của máy tính kết nối mạng ISA Internet Security and Acceleration Phần mềm bảo mật và tăng tốc Internet ISP Internet Service Provider Nhà cung cấp dịch vụ Internet NLB Network Load Balancing Cân bằng tải cho mạng LAN Local Access Network Mạng máy tính cục bộ LB Load Balancing Cân bằng tải LC Least Connections Thuật toán số kết nối ít nhất MAC Media Access Control Địa chỉ vật lý của card mạng NAT Network Address Translate Giao tiếp máy tính trong mạng ra ngoài internet OSI Open Systems Interconnection Mô hình tham chiếu kết nối các hệ thống mở RDBM Open Systems Interconnection Kết nối các hệ thống mở RR Round Robin Thuật toán Luân chuyển vòng RRDNS Round Robin Domain Name System Luân chuyển vòng dựa trên hệ thống tên miền SAN Storage Area Network Vùng lưu trữ thông tin, dữ liệu SLB Server Load Balancing Máy chủ cân bằng tải SMTP Simple Mail Transfer Potocol Giao thức truyền thư tín điện tử SSL Secure Sockets Layer Giao thức bảo mật thông tin mạng TCP Transmission Control Protocol Giao thức điều khiển truyền vận TTL Time To Live Thời gian sống URL Uniform Resource Locator Địa chỉ web/ liên kết mạng VIP Virtual Internet Protocol Địa chỉ truy cập ảo WRR Weighted Round Robin Thuật toán luân chuyển vòng dựa trên khả năng xử lý của các server 2 Tìm hiểu về cân bằng tải cho WebServer CHƯƠNG 1: TỔNG QUAN VỀ ĐỀ TÀI 1.1. Lý do chọn đề tài Ngày nay, với sự phát triển của dịch vụ web, số lượng website ngày càng nhiều đem đến cho người dùng rất nhiều sự lựa chọn. Để tồn tại và phát triển, website của các tổ chức, doanh nghiệp phải giữ được người dùng hiện tại và tăng thêm số lượng người dùng mới. Để làm được điều này, các doanh nghiệp phải đảm bảo cho hệ thống của mình hoạt động tốt nhất và phục vụ được các nhu cầu của người dùng truy cập với số lượng lớn, do đó yêu cầu lắp đặt thêm nhiều server mới cũng như yêu cầu cân bằng tải cho các server thực sự là nhu cầu cấp thiết. Đứng trước sự cạnh tranh về giá thành, việc phát triển và xây dựng các phương pháp cân bằng tải trở nên vô cùng hữu ích. Từ thực tế trên em quyết định chọn đề tài “Tìm hiểu về cân bằng tải Webserver” nhằm tìm hiểu các nguyên lý hoạt động cũng như các thuật toán cân bằng tải để xây dựng một nền tảng vững chắc về vấn đề cân bằng tải cho webserver, từ đó góp phần thúc đẩy quá trình xây dựng nên một bộ cân bằng tải hoạt động hiệu quả có khả năng đáp ứng nhu cầu cho các webserver thúc đẩy quá trình xây dựng nên một bộ cân bằng tải hoạt động hiệu quả, có khả năng đáp ứng nhu cầu của các webserver. 1.2. Đối tượng và khách thể nghiên cứu - Tìm hiểu tổng quan về web server - Tìm hiểu các kỹ thuật cân bằng tải cho web server - Tìm hiểu các thuật toán cân bằng tải - Triển khai cài đặt hệ thống web server và thực hiện cân bằng tải hệ thống. 1.3. Mục đích nghiên cứu - Giải thích được các kỹ thuật cân bằng tải Webserver 3 Tìm hiểu về cân bằng tải cho WebServer - Phân tích được các thuật toán cân bằng tải cho Webserver - Cài đặt được hệ thống Webserver - Triển khai cài đặt được hệ thống cân bằng tải cho Webserver 1.4. Nội dung thực hiện - Tìm hiểu về kiến trúc web với khả năng mở rộng - Tìm hiểu các kỹ thuật cân bằng tải webserver - Tìm hiểu các thuật toán cân bằng tải - Triển khai cài đặt hệ thống webserver - Cài đặt hệ thống cân bằng tải cho webserver 1.5. Phương pháp tiếp cận - Cách tiếp cận: Nghiên cứu kỹ thuật cân bằng tải trên nền tảng công nghệ khác nhau như Windows, Linux. - Sử dụng phương pháp nghiên cứu:  Phương pháp lý luận: Tham khảo tài liệu trên sách báo, trên mạng internet, đặc biệt là các diễn đàn công nghệ, đọc dịch tài liệu tiếng anh và xử lý thông tin.  Phương pháp thực nghiệm: Dựa vào lý thuyết để áp dụng vào triển khai xây dựng hệ thống và đánh giá kết quả thực nghiệm nhiều lần nhằm xây dựng hệ thống đáp ứng yêu cầu hiệu quả.  Phương pháp chuyên gia: Nhờ sự giúp đỡ của các thầy cô giáo có kiến thức chuyên môn để nhận xét, đánh giá, đóng góp ý kiến cho đề tài hoàn thiện hơn. 4 Tìm hiểu về cân bằng tải cho WebServer CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 2.1 Tổng quan về WebServer 2.1.1 Khái niệm về WebServer Web Server là máy chủ được cài đặt phần mềm phục vụ Web, đôi khi người ta cũng gọi chính phần mềm đó là Web Server. Tất cả các Web Server đều hiểu và chạy được các file *.htm và *.html, tuy nhiên mỗi Web Server lại phục vụ một số kiểu file chuyên biệt chẳng hạn như IIS của Microsoft dành cho *.asp, *.aspx ; Apache dành cho *.php ; Sun Java System Web Server dành cho *.jsp Máy Web Server là máy chủ có dung lượng lớn, tốc độ cao, được dùng để lưu trữ thông tin như một ngân hàng dữ liệu, chứa những website đã được thiết kế cùng với những thông tin liên quan khác như (các mã Script, các chương trình, và các file Multimedia). Web Server có khả năng gửi đến máy khách những trang Web thông qua môi trường Internet (hoặc Intranet) qua giao thức HTTP - giao thức được thiết kế để gửi các file đến trình duyệt Web (Web Browser), và các giao thức khác. Tất cả các Web Server đều có một địa chỉ IP (IP Address) hoặc cũng có thể có một Domain Name. Giả sử khi bạn đánh vào thanh Address trên trình duyệt của người dùng một dòng http://www.abc.com sau đó gõ phím Enter sẽ gửi một yêu cầu đến một Server có Domain Name là www.abc.com. Server này sẽ tìm trang Web có tên là index.htm rồi gửi nó đến trình duyệt của người dùng truy cập. 2.1.2 Sơ lược về giao thức HTTP Giao thức HTTP (Hipertext Transfer Protocol – Giao thức truyền tải siêu văn bản) là giao thức giao tiếp theo kiểu truy vấn - trả lời (request-response) giữa khách- chủ (client-server) được sử dụng phổ biến trên internet. Cũng nên biết là trên internet ngoài HTTP ta còn có rất nhiều giao thức khác như FTP (File Transfer Protocol - Giao thức truyền tập tin), SMTP (Simple Mail Transfer Protocol - Giao thức truyền tải thư 5 Tìm hiểu về cân bằng tải cho WebServer tín đơn giản) World Wide Web được xây dựng dưa trên nền tảng giao thức HTTP và công nghệ HTML (Hipertext Markup Language: Ngôn ngữ đánh dấu siêu văn bản). HTTP được ứng dụng trong các phần mềm máy chủ Web và trong các trình duyệt Web để trao đổi thông tin giữa máy chủ Web và máy khách Web trên môi trường mạng. Một HTTP khách (HTTP client), chẳng hạn một trình duyệt web (web browser), dùng HTTP để truy vấn một tài liệu HTML, khi nhận được trả lời từ HTTP chủ (HTTP server), chẳng hạn máy chủ Apache (Apache HTTP server: httpd), nó sẽ định dạng (format) rồi hiển thị tài liệu này cho người dùng. HTTP được sử dụng để truyền tải không chỉ HTML, tuy nhiên HTML là ngôn ngữ giao tiếp (lingua franca) của web và ứng dụng web. Truy vấn HTTP: Một truy vấn HTTP (HTTP request) bao gồm một phương thức truy vấn (request method), URL truy vấn (request URL), phần đầu (header) và phần thân (body) truy vấn; phần thân có thể rỗng. Trong đó phương thức là một lệnh chỉ rõ loại truy vấn, HTTP định nghĩa các phương thức truy vấn sau: - GET: phương thức hay dùng nhất để lấy tài nguyên (resource) từ URL truy vấn. Khi truy vấn dùng phương thức này, các tham số (parameter) được nối thẳng vào URL. Phương thức GET này không có phần thân hay phần thân trống rỗng. - HEAD: lấy phần đầu (header) của truy vấn, tức thông tin về tài nguyên. - POST: gửi dữ liệu với độ dài không giới hạn tới máy chủ web (web server). Khác với phương thức GET, phương thức POST dùng phần thân của câu truy vấn để gửi dữ liệu đến máy chủ web. - PUT: thay thế hoặc thêm tài nguyên vào máy chủ web theo URL cung cấp. - DELETE: xoá tài nguyên ở máy chủ web định vị bởi URL. - OPTIONS: trả về các phương thức HTTP server cung cấp cho 1 URL xác định. - TRACE: trả về thông tin truy vấn mà máy chủ nhận được. Phương thức này cho phép theo dõi một truy vấn để xem có những thay đổi hay thêm thắt nào nếu có do những máy chủ trung gian (intermediate server) thực hiện. Trả lời HTTP: Một trả lời HTTP bao gồm một mã kết quả (result code) hay mã trạng thái (status code), phần đầu (header) và phần thân (body). Giống như những phần mềm khác, Web Server Software cũng chỉ là một ứng dụng phần mềm. Nó được cài đặt và chạy trên máy tính dùng làm Web Server, nhờ có 6 Tìm hiểu về cân bằng tải cho WebServer chương trình này mà người sử dụng có thể truy cập đến các thông tin của trang Web từ một máy tính khác ở trên mạng (Internet, Intranet). Web Server Software còn có thể được tích hợp với cơ sở dữ liệu (Database), hay điều khiển việc kết nối vào cơ sở dữ liệu để có thể truy cập và kết xuất thông tin từ cơ sở dữ liệu lên các trang Web và truyền tải chúng đến người dùng. Server phải hoạt động liên tục để phục vụ cho việc cung cấp thông tin trực tuyến. Vị trí đặt server đóng vai trò quan trọng trong chất lượng và tốc độ lưu chuyển thông tin từ server và máy tính truy cập. 2.2 Các khái niệm về kiến trúc web với khả năng mở rộng Một website với khả năng mở rộng nghĩa là khi số lượng người dùng tăng lên nhanh chóng trong một khoảng thời gian nhất định, website vẫn đáp ứng được nhu cầu, hơn nữa website có khả năng dễ dàng nâng cấp lên để phù hợp với nhu cầu. Để phục vụ được hàng chục triệu lượt truy cập mỗi ngày, website cần phải đáp ứng được yêu cầu về khả năng mở rộng (Scalability), về hiệu năng (Performance), tính đáp ứng (Responsiveness), tính sẵn có cao (High Availability), tránh được thời gian chết của hệ thống (downtime impact), khả năng bảo trì tốt và được xây dựng với giá thành tốt nhất. Dưới đây là các khái niệm về kiến trúc web với khả năng mở rộng: 2.2.1 Khả năng mở rộng Là khả năng của một ứng dụng có thể hỗ trợ được số lượng người ngày một tăng. Nếu nó cần 10ms để một ứng dụng có thể đáp trả cho một yêu cầu thì khoảng thời gian sẽ là bao lâu để nó đáp trả đến 10.000 yêu cầu cùng một lúc? Khả năng mở rộng vô hạn sẽ cho phép nó đáp trả các yêu cầu này chỉ trong khoảng 10ms. Như vậy, khả năng mở rộng là đơn vị đo sự kết hợp của các hệ số, đó là số lượng người dùng đồng thời mà một cụm server có thể hỗ trợ và thời gian cụm server cần để xử lý một yêu cầu. Thiết kế website với khả năng mở rộng cao là yêu cầu sống còn đối với hầu hết các công ti dịch vụ web hiện nay, để tồn tại và phát triển một website cần phải đáp ứng được các yêu cầu của người dùng trong thời gian mà họ mong muốn. 2.2.2 Hiệu năng 7 Tìm hiểu về cân bằng tải cho WebServer Là khả năng mà hệ thống sử dụng tài nguyên của nó một cách tốt nhất. Tính thực hiện được đo bằng lượng công việc có ích mà hệ thống thực hiện được đối với một nguồn tài nguyên nhất định, chẳng hạn như nếu 2 server có cấu hình giống nhau, server nào có thể phục vụ được nhiều người dùng hơn (người dùng chạy các ứng dụng tương đương) thì máy đó có tính thực hiện cao hơn. 2.2.3 Khả năng có sẵn cao Khả năng có sẵn cao có thể được hiểu là tình trạng dư thừa. Nếu một máy chủ không thể quản lý một yêu cầu thì các máy chủ khác trong cụm cluster đó có quản lý được hay không? Trong một hệ thống có khả năng có sẵn cao, nếu một trang webserver bị lỗi thì một webserver khá trong cụm cluster sẽ tiếp quản ngay để xử lý yêu cầu. Nghĩa là, nếu như người dùng đang làm việc với một server mà server đó bị lỗi, toàn bộ thông tin trong phiên làm việc của người đó sẽ được chuyển qua cho một server khác đảm nhiệm. Như vậy trong bất cứ trường hợp nào, người dùng truy cập vào các dịch vụ của hệ thống đều được đáp ứng, chính vì vậy mà người dùng luôn cảm thấy được phục vụ nhu cầu tốt nhất. 2.2.4 Tính đáp ứng Tính đáp ứng ở đây có thể hiểu là khả năng phục vụ người dùng của hệ thống làm sao để hệ thống có thể phục vụ người dùng tại mọi thời điểm và thời gian đáp ứng là bao lâu. Hệ thống gửi response về càng nhanh thì tính đáp ứng của nó càng cao, ngược lại nếu thời gian trì hoãn (delay) càng lớn sẽ khiến người dùng thất vọng và dẫn tới việc họ tin rằng trang web bị hỏng hay không hoạt động bình thường, điều này rất có hại vì nếu đã mất đi niềm tin nơi người dùng thì chắc rằng họ sẽ không quay trở lại trang web đó nữa. Chẳng hạn như khi người dùng truy cập vào một trang web mà phải chờ đợi quá lâu cho việc load dữ liệu, thông tin thì thay vào đó để không phải tốn mất nhiều thời gian họ sẽ tìm một công việc khác để làm đôi khi họ quên mất rằng mình đang truy cập vào một dịch vụ web và đóng luôn trình duyệt đó lại hoặc sẽ quay trở lại sau một khoảng thời gian khá lâu. Điều này rất không tốt bởi trong hệ thống mà họ truy cập vẫn hoạt động và lưu giữ phiên session mà không phục vụ cho bất cứ ai, đó 8 Tìm hiểu về cân bằng tải cho WebServer chính là một sự lãng phí lớn. Tính đáp ứng và tính thực hiện là độc lập với nhau, một hệ thống mạng dù có hiệu năng tốt nhưng vẫn có thể đáp ứng không đạt hiệu quả. 2.2.5 Downtime impact Downtime impact (tác động của thời gian chết) là một vấn đề mà tất cả các hệ thống đều gặp phải, đó là thời gian mà hệ thống bị “chết”, khi mà số lượng các chức năng chính bị down, đây là vấn đề có tính tuần hoàn đối với các nhà phát triển hệ thống. Một hệ thống tốt sẽ giúp người dùng truy cập nhanh làm họ cảm thấy hài lòng dẫn đến số lượng người dùng tăng lên và khi số lượng người dùng tăng lên hệ thống sẽ lại bị tắc nghẽn và nhà quản trị mạng sẽ phải đối phó với vấn đề đó, giải quyết nó nhằm tạo ra hệ thống hoạt động được tốt nhất. điều quan trọng là một hệ thống tốt cần phải kéo thời gian chu kì này lên, sao cho hệ thống hoạt động tốt nhất trong thời gian đủ dài trước khi cần phải nâng cấp, cũng như làm sao để xây dựng được hệ thống tốt nhất có khả năng mở rộng lớn. Cùng với các đòi hỏi này, hệ thống cũng cần phải có thể dễ dàng bảo trì và giá thành vừa phải, không quá cao. Xây dựng một hệ thống web như vậy sẽ gặp rất nhiều vấn đề khó, những vấn đề quan trọng nhất trong việc thiết kế một website có khả năng mở rộng mà bất cứ nhà phát triển hệ thống web nào cũng phải giải quyết đó là cân bằng tải cho application server, cân bằng tải cho database- server, tổ chức lưu trữ dữ liệu trên đĩa cứng và cân bằng tải cho cache. [3], [4], [8] 2.3 Tổng quan về cân bằng tải 2.3.1 Khái niệm cân bằng tải Cân bằng tải là một phương pháp phân phối khối lượng tải trên nhiều máy tính hoặc một cụm máy tính để có thể sử dụng tối ưu các nguồn lực, tối đa hóa thông lượng, giảm thời gian đáp ứng và tránh tình trạng quá tải trên máy chủ. Sử dụng nhiều dịch vụ với cân bằng tải thay vì một dịch vụ duy nhất có thể làm tăng độ tin cậy thông qua các máy dự phòng. Trong đó, cân bằng tải mạng là một kỹ thuật nhằm mở rộng hiệu năng của các máy chủ ứng dụng, chẳng hạn như máy chủ Web, nhờ phân phối các yêu cầu của máy khách cho các máy chủ trong nhóm. Khi đó, các máy chủ đều nhận gói IP đến nhưng gói chỉ được xử lý bởi một máy chủ nhất 9 Tìm hiểu về cân bằng tải cho WebServer định. Các máy chủ trong nhóm sẽ đồng thời đáp ứng các yêu cầu khác nhau của các máy trạm. Với kỹ thuật cần bằng tải, quá trình xử lý và thời gian đáp ứng yêu cầu của máy trạm sẽ nhanh hơn nhiều. 2.3.2 Chức năng và ưu điểm của cân bằng tải Ngày nay, mạng máy tính đóng vai trò ngày càng quan trọng hơn trong hoạt động của các doanh nghiệp, tổ chức cũng như các công ty lớn, mạng máy tính có vị trí rất quan trọng trong việc điều khiển hoạt động của toàn bộ doanh nghiệp. Sự ngừng hoạt động của mạng máy tính hay sự hoạt động kém hiệu quả của mạng máy tính trong những doanh nghiệp này có thể làm gián đoạn, ảnh hưởng đến sự hoạt động và phát triển của doanh nghiệp và thiệt hại khó có thể lường trước được. Nhất là đối với những công ty cần phải giao dịch liên tục, trao đổi thông tin nhanh chóng với khách hàng truy cập. Vấn đề đặt ra là cần có một giải pháp để đảm bảo cho hệ thống vẫn hoạt động tốt ngay cả khi có sự cố xảy ra đối với máy chủ. Việc lựa chọn một server đơn lẻ có cấu hình cực mạnh để đáp ứng nhu cầu này sẽ kéo theo chi phí đầu tư rất lớn và không thể giải quyết được các vấn đề đặt ra của tổ chức. Giải pháp hiệu quả được đưa ra là sử dụng một nhóm server cùng thực hiện một chức năng dưới sự điều khiển của một công cụ phân phối tải, đó chính là giải pháp cân bằng tải cho máy chủ. Có rất nhiều hãng đưa ra giải pháp cân bằng tải đó là các thiết bị mạng như Cisco, Coyote Point, Sun Microsystem… với rất nhiều tính năng phong phú. Tuy nhiên, về cơ bản thì nguyên tắc cân bằng tải vẫn xuất phát từ những quan điểm kỹ thuật khá tương đồng. Do vậy, Load Balancing không chỉ làm nhiệm vụ phân phối tải cho các server mà còn cung cấp cơ chế đảm bảo hệ thống server luôn khả dụng trước các client. Server Load Balancing không có yêu cầu đặc biệt gì về phần cứng, bất cứ máy tính nào hợp chuẩn đều có thể được sử dụng làm server. Chi phí triển khai nhờ đó mà giảm đáng kể. Kiến trúc phần mềm phân tán của SLB cho phép cung cấp hiệu năng và tính khả dụng của kỹ thuật này ở mức cao nhất. 10 [...]... hợp nhất để phục vụ cho từng nhóm người dùng cụ thể Như vậy, cần phải giải quyết 2 vấn đề là đặt bộ cân bằng tải vào trong hệ thống DNS và phải chọn được site phù hợp nhất b) Cài đặt bộ cân bằng tải vào hệ thống mạng DNS 26 Tìm hiểu về cân bằng tải cho WebServer Có hai cách để cài đặt bộ cân bằng tải, đó là sử dụng bộ cân bằng tải để thay thế authoritative DNS và cài đặt bộ cân bằng tải như một forward.. .Tìm hiểu về cân bằng tải cho WebServer Mô hình so sánh hệ thống cân bằng tải và hệ thống thông thường: Hình 2.1: Mô hình so sánh hệ thống cân bằng tải và hệ thống thông thường Cân bằng tải có các chức năng sau: - Chặn lưu lượng mạng (như lưu lượng web) đến một trang web Bản thân thiết bị cân bằng tải có thể là một Proxy hay một Firewall tầng ứng dụng... Local DNS lúc này sẽ làm việc với bộ cân bằng tải có chức năng cân bằng tải cho server toàn cầu và nhận địa chỉ IP của webserver Hình 2.12: Bộ cân bằng tải hoạt động như một authoritative DNS Trong phương pháp này, bộ cân bằng tải sẽ thay thế cho authoritative DNS, do đó việc chọn IP trả về cho local DNS sẽ phụ thuộc vào chức năng DNS được cài đặt trong bộ cân bằng tải Nếu một sản phẩm không thể điều... trong một mô hình Bộ cân bằng tải ở đây có 2 địa chỉ IP ảo: VIPD dùng để đóng vai trò một authoritative DNS, VIP1 dùng để cân bằng tải cho cụm server 28 Tìm hiểu về cân bằng tải cho WebServer Hình 2.14: Sự kết hợp GSLB và SLB trong bộ cân bằng tải c) Lựa chọn site tốt nhất Việc lựa chọn trang tốt nhất hay đúng hơn là chọn cluster server nào tốt nhất và trả về địa chỉ IP của cluster đó cho người dung rất... 30 Tìm hiểu về cân bằng tải cho WebServer 2.5.3 Cân bằng tải sử dụng phần cứng và phần mềm a) Cân bằng tải sử dụng phần cứng Bộ cân bằng tải bằng phần cứng sẽ thể hiện một địa chỉ IP ảo đối với mạng bên ngoài, địa chỉ này bản đồ hóa đến các địa chỉ của mỗi máy trong một cluster Chính vì vậy toàn bộ các máy tính trong cluster sẽ chỉ được xem như là một máy duy nhất đối với thế giới bên ngoài Bộ cân bằng. .. Vì “health checks” là một trong những khía cạnh phức tạp nhất của kỹ thuật cân bằng tải, nên thông thường sau một vài kiểm tra các nhà phát triển ứng dụng sẽ thực thi một yêu cầu đặc biệt dành riêng cho bộ cân bằng tải, giúp cho nó thực hiện một số kiểm tra nội bộ 21 Tìm hiểu về cân bằng tải cho WebServer Phần mềm cân bằng tải có khả năng cung cấp scripting, do đó nó đạt được độ linh hoạt rất cao Hơn... liệu về từ authoritative DNS thực sự, bộ cân bằng tải sẽ chỉnh sửa cho phù hợp và trả về cho local DNS, sự trả về này phải được thực hiện một cách “trong suốt” và chỉ những dữ liệu có liên quan đến GSLB mới cần phải thay đổi Ở đây nếu như có nhiều DNS server thực sự, bộ cân bằng tải sẽ làm nhiệm vụ cân bằng tải cho nhóm DNS server này Hình 2.13: Bộ cân bằng tải hoạt động như một forward DNS proxy Ưu... rộng Một trang web được cân bằng tốt sẽ tránh được tình trạng tắc nghẽn server, trả về yêu cầu của người dùng trong khoảng thời gian ngắn nhất Có nhiều kỹ thuật để thực hiện cân bằng tải cho server nhưng quan trọng nhất trong cân bằng tải server chính là thiết kế và xây dựng bộ cân bằng tải Bộ cân bằng tải này sẽ đứng trước cluster server, nhận yêu cầu từ người dùng sau đó phân tải vào các server trong... dùng một proxy server đứng trước phân tải, trong trường hợp file sharing hay video sharing, như vậy sẽ khiến bộ cân bằng tải sẽ trở thành thắt cổ chai Vì ra vào dữ liệu tại bộ cân bằng tải chỉ có giới hạn nhất định, nếu vượt quá giới hạn đó nó sẽ rơi vào tình trạng quá tải và bị “treo” Cần phải có kỹ thuật 18 Tìm hiểu về cân bằng tải cho WebServer partitioning giúp cho việc vào ra tại các thiết bị lưu... trả về một lỗi hoặc chuyển chúng đến DNS server thực sự Cài đặt bộ cân bằng tải như một forward DNS proxy Phương pháp được mô tả ở hình dưới, bộ cân bằng tải trở thành một forwardproxy, nó đứng ở vị trí của một authoritative DNS, nhận yêu cầu từ phía local DNS 27 Tìm hiểu về cân bằng tải cho WebServer sau đó sẽ chuyển yêu cầu đến authoritative DNS thực sự được cài đặt ở phía sau nó Khi nhận dữ liệu về . giao tiếp (lingua franca) của web và ứng dụng web. Truy vấn HTTP: Một truy vấn HTTP (HTTP request) bao gồm một phương thức truy vấn (request method), URL truy vấn (request URL), phần đầu (header). có do những máy chủ trung gian (intermediate server) thực hiện. Trả lời HTTP: Một trả lời HTTP bao gồm một mã kết quả (result code) hay mã trạng thái (status code), phần đầu (header) và phần. tăng. Nếu nó cần 10ms để một ứng dụng có thể đáp trả cho một yêu cầu thì khoảng thời gian sẽ là bao lâu để nó đáp trả đến 10.000 yêu cầu cùng một lúc? Khả năng mở rộng vô hạn sẽ cho phép nó đáp

Ngày đăng: 16/10/2014, 00:14

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w