Năm cách để tăng tốc ứng dụng ảo

Tác Giả: Laura McKinney
Ngày Sáng TạO: 2 Tháng Tư 2021
CậP NhậT Ngày Tháng: 1 Tháng BảY 2024
Anonim
Năm cách để tăng tốc ứng dụng ảo - Công Nghệ
Năm cách để tăng tốc ứng dụng ảo - Công Nghệ

NộI Dung


Nguồn: Viktorus / Dreamstime.com

Lấy đi:

Tìm hiểu năm kỹ thuật để tăng tốc các ứng dụng ảo mà không cần phá vỡ ngân hàng.

Một trong những nỗi thất vọng của việc ảo cho các ứng dụng và máy tính để bàn là hiệu năng. Không ai muốn đợi lâu hơn một hoặc hai giây để một ứng dụng xuất hiện sau khi khởi chạy. Là người dùng, chúng tôi hy vọng ứng dụng của mình sẽ xuất hiện ngay sau khi nhấp đúp vào biểu tượng. Chúng tôi không nhận ra những gì diễn ra trong nền để phân phối các ứng dụng đó giữa máy chủ, qua tường lửa, qua bộ cân bằng tải, qua không khí hoặc qua dây dẫn đến máy tính để bàn và cho các thiết bị di động của chúng tôi, chúng tôi cũng không quan tâm. Sự kiên nhẫn tập thể của chúng tôi đã cạn kiệt với những lời hứa về công nghệ tốt hơn, nhanh hơn, an toàn hơn và đó là thời gian dành cho một người đưa lên hoặc đóng cửa khoảnh khắc của các nhà cung cấp và từ các nhân viên hỗ trợ. Đổi lại, các nhà cung cấp và nhân viên hỗ trợ chia sẻ nỗi đau của chúng tôi và đã đáp ứng với một số công nghệ tăng tốc mang lại hiệu suất ở mức hoặc gần mức cài đặt tại địa phương.


Đối với người dùng, nó có tất cả về tốc độ, nhưng không giống như người dùng, kiến ​​trúc sư, quản trị viên hệ thống và CIO, aren tìm kiếm phản ứng nhanh hơn với các lần nhấp đúp của người dùng; Họ cũng đang tìm kiếm khả năng mở rộng, bảo mật được cải thiện và tuổi thọ công nghệ dài hơn bao giờ hết. Cuối cùng, người dùng là nhà cung cấp và hỗ trợ các nhà phê bình khắc nghiệt nhất và vì lý do đó, việc khám phá các kỹ thuật và công nghệ ứng dụng ảo đã sẵn sàng. Bài viết này xem xét năm cách để tăng tốc các ứng dụng ảo. Năm giải pháp không theo thứ tự cụ thể, nhưng tất cả tập trung vào một trong ba lĩnh vực chính để tối ưu hóa và tăng tốc: cơ sở hạ tầng, mã ứng dụng và băng thông.

Tối ưu hóa mạng LAN và mạng LAN

Bạn có thể coi tối ưu hóa mạng LAN và mạng LAN như một giải pháp băng thông, trong đó mục tiêu cuối cùng là đưa thêm thông tin và nhiều dữ liệu hơn vào đường ống mạng theo cách hiệu quả hơn. Vì hiệu suất ứng dụng rất quan trọng đối với người dùng cuối, nên có một số phương pháp khéo léo để cung cấp nhiều nội dung hơn trong khoảng thời gian ngắn hơn, chẳng hạn như tạo mạng phân phối nội dung (CDN) về cơ bản di chuyển dữ liệu đến gần hơn với người tiêu dùng hoặc người dùng cuối. Việc di chuyển dữ liệu đến gần hơn với người dùng sẽ làm giảm độ trễ vì dữ liệu phải đi qua ít hơn các bước nhảy mạng hoặc các mạng để đến đích. Hầu hết các nhà cung cấp dịch vụ đám mây đều có sẵn CDN để giúp chủ sở hữu ứng dụng phân phối nội dung phân tán gần với người tiêu dùng.


Cân bằng tải tối ưu hóa băng thông bằng cách trải đều các yêu cầu của máy khách giữa nhiều máy chủ hoặc giữa nhiều địa điểm để chia sẻ tốt hơn gánh nặng phân phối ứng dụng. Cân bằng tải tăng cường tốc độ phân phối ứng dụng bằng cách loại bỏ kẹt xe xảy ra với yêu cầu của người dùng cho một ứng dụng. Nhưng họ cũng tăng độ tin cậy bằng cách có thể phân phối ứng dụng một cách hiệu quả đến một máy chủ không quá tải với các yêu cầu khác.

Tăng băng thông thô giữa các ứng dụng và máy khách dường như là một sự tăng cường rõ ràng để tăng tốc độ phân phối ứng dụng. Ai có thể lập luận rằng kết nối mạng gigabit giữa cơ sở hạ tầng ứng dụng và máy tính khách là một điều xấu? Ngay cả một ứng dụng được thiết kế và hình thành kém sẽ nhận được hiệu suất tăng đáng kể bằng cách tăng băng thông giữa nguồn và đích.

Nén dữ liệu và sử dụng các loại phương tiện nén như JPEG, MPEG-4 và MP3 có thể có tác động đáng kể đến việc phân phối ứng dụng. Nén dữ liệu của nội dung dựa trên, có nghĩa là HTML, CSS và JavaScript, có thể giúp giảm 30% thời gian tải trở lên.

SSD và Mảng Flash

SSD và mảng flash dường như là công nghệ mới của hệ thống điện tử thế giới cho bất kỳ loại cải tiến hiệu năng ứng dụng nào. Đúng là lưu trữ trạng thái rắn nhanh hơn nhiều so với đĩa quay, nhưng nó cũng đắt hơn đáng kể. Giải pháp có thể là tốt để xem xét việc sử dụng SSD khác nhau - như bộ đệm cho dữ liệu nóng của Thay vì dữ liệu thay vì dữ liệu khi nghỉ ngơi. SSD có thể cung cấp dữ liệu nhanh hơn nhiều so với đĩa quay, nhưng một số hiệu quả đó bị mất khi dịch qua mạng và thông qua các thành phần mạng khác nhau. Tuy nhiên, nếu người ta sử dụng cái gọi là bộ nhớ cache flash flash trực tiếp để tận dụng tốc độ SSD để lưu trữ thông tin được lưu trong bộ nhớ cache, thì kết quả rất ấn tượng. Intel báo cáo hiệu suất lên tới 12 lần hiệu suất xử lý cơ sở dữ liệu giao dịch và xử lý nhanh hơn 36 lần khối lượng công việc ảo hóa chuyên sâu I / O.

SSD cho bộ nhớ đệm dữ liệu có ý nghĩa do tốc độ mà dữ liệu có thể được truy xuất và đặt vào bộ nhớ. Và nếu SSD được sử dụng hoàn toàn cho mục đích lưu trữ, thì sẽ phải mua ít hơn đáng kể để đáp ứng việc tăng hiệu suất. (Để biết thêm về lưu trữ, hãy xem Cách tối ưu hóa Giải pháp lưu trữ doanh nghiệp của bạn.)

Không lỗi, không căng thẳng - Hướng dẫn từng bước của bạn để tạo ra phần mềm thay đổi cuộc sống mà không phá hủy cuộc sống của bạn

Bạn không thể cải thiện kỹ năng lập trình của mình khi không ai quan tâm đến chất lượng phần mềm.

GPU ảo

Hỏi bất cứ ai sử dụng chương trình CAD, phần mềm chỉnh sửa video hoặc thậm chí là ứng dụng quản lý dự án nơi họ muốn tải các ứng dụng đó và bạn sẽ nghe thấy một đoạn điệp khúc của cục bộ. Để biến các ứng dụng chuyên sâu về đồ họa này thành một thảm họa chính tả trong môi trường ảo cho đến khi phát hành công nghệ đơn vị xử lý đồ họa ảo (GPU).

GPU ảo cuối cùng cho phép mọi khối lượng công việc được đặt vào một máy ảo. Các tổ chức CAD trường học cũ đã được đồng hóa, cũng như có các biên tập viên video và thiết kế đồ họa. Ngay cả những người làm việc trong ba chiều bây giờ cũng có sự hiện diện ảo nhờ GPU ảo.

Điều làm cho công nghệ này trở nên khả thi là các bo mạch GPU đặc biệt, tương thích với các hệ thống máy chủ ảo, được cài đặt vào các hệ thống máy chủ đó và sau đó các thuộc tính phần cứng của chúng được trừu tượng hóa hoặc ảo hóa để chúng có thể được sử dụng bởi các máy ảo.

Phần mềm tối ưu hóa hiệu suất

Các quản trị viên hệ thống tức giận và thất vọng thường sẽ nói với bạn rằng việc sửa mã không phải là công việc của họ. Tuy nhiên, vấn đề phổ biến là các nhà phát triển có thể là người giỏi nhất trong việc lập trình một ứng dụng, nhưng hoàn toàn không có manh mối hay mong muốn có được manh mối về tối ưu hóa mã cho hiệu suất.Thông thường, thái độ là nhiều RAM hơn, đĩa nhanh hơn hoặc CPU mạnh hơn sẽ khắc phục mọi vấn đề liên quan đến hiệu suất có thể tồn tại trong mã và nó đúng với một mức độ nào đó. Ngoài ra, sửa mã ít tốn kém và dễ giải quyết hơn nhiều so với xây dựng lại cơ sở hạ tầng chỉ đơn giản là để tăng tốc các ứng dụng kém bằng văn bản.

Có những người, chẳng hạn như Donald Knuth, người tiên phong về máy tính, đã nói về việc tối ưu hóa mã máy tính, nếu bạn tối ưu hóa mọi thứ, bạn sẽ luôn không hài lòng. Ý kiến ​​của ông Knuth mặc dù vậy, tối ưu hóa mã cho một lượng cải tiến cân bằng nên được thực hiện và dung thứ . Nhưng những gì về chương trình thương mại mà bạn mua và triển khai cho người dùng của bạn? Ví dụ: bộ Microsoft Office thường xanh là bộ ứng dụng tiêu chuẩn mà quản trị viên hệ thống phải cung cấp cho cả người dùng cục bộ và người dùng từ xa.

Trong trường hợp các chương trình thương mại mà quản trị viên không có đòn bẩy, họ phải áp dụng chiến lược nâng cao hiệu suất nhiều lớp. Bộ nhớ đệm của các bit ứng dụng phổ biến sẽ là quản trị viên công nghệ lớn nhất trong việc tăng tốc độ phân phối các ứng dụng lớn cho người dùng.

Bộ nhớ đệm

Bất cứ khi nào bạn đọc hoặc nghe các thuật ngữ tải trước, tiền xử lý hoặc tiền biên dịch, người viết hoặc người nói rất có thể đề cập đến một số loại bộ đệm. Bộ nhớ đệm ứng dụng thường đề cập đến việc tải một số nội dung tĩnh và một số nội dung động vào bộ nhớ đệm để nó có thể dễ dàng truy xuất theo yêu cầu. Các bit duy nhất được phân phối hoàn toàn thông qua đường ống là những bit phải thực hiện cụ thể với người dùng hoặc dữ liệu phụ thuộc thời gian hoặc phiên khác. Mọi thứ khác được lưu vào bộ nhớ.

Bộ nhớ đệm giảm bớt căng thẳng về lưu trữ, trên băng thông mạng và CPU. Dữ liệu chờ trong bộ nhớ cho đến khi được gọi và sau đó tiếp tục hành trình ngắn hơn nhiều cho người dùng cuối. Hầu hết các công nghệ kết hợp bộ nhớ đệm với vị trí để cung cấp nội dung nhanh hơn. Nói cách khác, dữ liệu chung - dữ liệu mà phổ biến cho tất cả người dùng - được đặt vào các CDN đã nói ở trên và sau đó được gửi đến những người dùng gần với dữ liệu được yêu cầu. Một số giải pháp đi xa đến mức dữ liệu bộ nhớ cache cục bộ tại các trang web từ xa hoặc vệ tinh để các bit phổ biến đó cư trú ở nơi chúng được tiêu thụ và don sắt phải được kéo mới qua mạng LAN hoặc liên kết internet.

Bộ nhớ đệm thường là một phương pháp tăng tốc ứng dụng được ưa thích bởi vì nó có chi phí thấp hơn nhiều so với các giải pháp thực hiện tương đương dựa trên các cải tiến cơ sở hạ tầng. (Để tìm hiểu thêm về bộ nhớ đệm, hãy xem Viết nào là đúng? Hãy xem các phương pháp lưu vào bộ đệm I / O.)

Tóm lược

Có lẽ nguyên tắc cơ bản khi cố gắng tối ưu hóa hoặc tăng tốc các ứng dụng ảo trong bất kỳ môi trường nào là trước tiên hãy thử bộ nhớ đệm và sau đó bổ sung chiến lược đó bằng các công nghệ khác. Bộ nhớ đệm là giải pháp ít tốn kém nhất và cũng là giải pháp ít xâm lấn nhất. Lời khuyên tốt nhất là mua nhiều RAM cho bộ nhớ đệm và SSD cho bộ nhớ đệm dữ liệu nóng. Hãy cố gắng giữ chi phí có thể quản lý được, nhưng hãy nhớ rằng khi bạn chi tiền cho cơ sở hạ tầng và phần mềm, bạn có thể khấu hao nó theo vòng đời của công nghệ và phổ biến nó trên cơ sở cho mỗi người dùng để giúp quản lý dễ tiêu hóa hơn. Cuối cùng, hãy giữ cho người dùng của bạn làm việc hiệu quả và vui vẻ và họ sẽ giúp bạn làm việc hiệu quả.