2009-06-23 27 views
5

Tôi có các dự án lớn trên một kho CVS và tôi đang tìm cách cải thiện hiệu suất của nó. CVS có thể nén được không? Và về mã hóa, nó có làm giảm tốc độ không?Hiệu suất CVS

Cảm ơn!

+0

nén cvs? bạn không có nghĩa là nén ssh? –

+0

nén cvs. – gmuller

+0

Cần thêm một vài chi tiết: Bạn đang truy cập kho lưu trữ như thế nào? Cùng một máy? Mạng nội bộ? Internet? Để giúp bạn, chúng tôi cần phải biết nơi mà các nút cổ chai có khả năng xảy ra. –

Trả lời

9

CVS sẽ chậm hơn theo thời gian thông qua sử dụng lặp lại.

  • Khi bạn kiểm tra toàn bộ dự án, máy chủ sẽ cần phải tạo mọi thư mục (ngay cả khi bạn đã xóa thư mục đó - dọn dẹp các thư mục sau khi thanh toán ẩn bạn).
  • Khi bạn trả phòng, mọi tệp được mở và kiểm tra, điều này có thể rất chậm nếu bạn có hàng trăm/nghìn tệp.
  • Mọi thứ trở nên tồi tệ hơn nếu bạn không cố gắng thoát ra khỏi HEAD của thân cây vì nội dung cần phải được xây dựng lại trước khi gửi cho khách hàng.

Nếu sau tất cả điều đó, bạn muốn cải thiện hiệu suất chuyển dữ liệu giữa máy chủ và máy khách, bạn có thể (tùy thuộc vào loại nội dung) sử dụng tùy chọn -z để nén. Tôi thấy -z6 là tốt nhất, nhưng tùy thuộc vào bản chất của các tập tin của bạn, bạn có thể muốn nhiều hơn/ít nén.

-z GZIPLEVEL

Thiết lập mức độ nén trên truyền thông với máy chủ. Đối số GZIPLEVEL phải là một số từ 1 đến 9. Mức 1 là nén tối thiểu (rất nhanh, nhưng không nén nhiều); Cấp 9 là nén cao nhất (sử dụng rất nhiều thời gian CPU, nhưng chắc chắn không nén dữ liệu). Cấp 9 chỉ hữu ích trên các kết nối mạng rất chậm. Hầu hết mọi người tìm thấy mức độ từ 3 đến 5 là có lợi nhất.

Khoảng cách giữa -z và đối số của nó là tùy chọn.

3

Các vấn đề về hiệu suất thường liên quan đến IO. (Trừ khi bạn có thể thấy CPU của bạn tối đa ở mức 100%). Tôi khuyên bạn nên cố gắng để đặt kho lưu trữ trên một mảng ổ đĩa nhanh hơn (RAID 10 và/hoặc cao hơn RPM ổ đĩa) để xem nếu điều đó làm tăng hiệu suất của bạn. Nếu bạn đang truy cập kho lưu trữ qua internet, thì đó có thể là vấn đề về băng thông, mặc dù tùy thuộc vào lượng dữ liệu bạn đang nói, thậm chí kết nối DSL đơn giản cũng có thể xử lý nó.

+0

Phải, bởi vì tất cả mọi người có RAID 10 nằm xung quanh chỉ để thử ;-) Tôi đã bỏ phiếu này, nhưng tôi nghĩ bạn nên rìu phần đó của câu trả lời của bạn. –

+1

Phụ thuộc vào loại máy chủ bạn có. Nếu phát triển là quan trọng, một mảng ổ đĩa tốt là phải. Ổ đĩa 1x 1TB WD ~ $ 400. Thực sự là một công cụ ngắt ngân hàng cho một công ty. – Nate

+1

Tôi tự hỏi những gì consitutes 'khổng lồ' ở đây ... 350 Bucks sẽ giúp bạn có được một mức nhập cảnh Intel 80gb đĩa trạng thái rắn, mà rất có thể sẽ chữa khỏi tất cả những ails bạn. Tôi tưởng tượng thời gian tìm kiếm là rất quan trọng đối với kho CVS, và bạn không thể có được tốt hơn so với một SSD tốt cho điều đó. –

2

cvs nó tự không thể nén afaik, nhưng nếu sử dụng ssh cho ssh vận chuyển có thể làm điều đó (và làm điều này theo mặc định tôi nghĩ). Điều này sẽ giúp đỡ nếu có kết nối chậm. chỉnh sửa: thực sự cvs có các tùy chọn -z (như ssh có -C)

Mã hóa không phải là thứ được sử dụng để tăng hiệu suất. Sử dụng ssh sẽ thực hiện mã hóa, nhưng đó không phải là hiệu năng nhưng bảo mật.

Bất cứ nơi nào kho lưu trữ nằm, quyền truy cập đĩa cho kho lưu trữ và tệp tạm thời sẽ ảnh hưởng đến hiệu suất. Điều đó kết hợp với bộ nhớ. Khi kiểm tra, cvs sẽ xây dựng những gì để gửi cho khách hàng (như các tập tin tạm thời). Điều này gây ra rất nhiều sự mất mát và trong một số trường hợp sử dụng bộ nhớ (đặc biệt là nếu giao dịch với các tệp nhị phân lớn).