Những cách nào để tách rời việc triển khai?


13

Một phương pháp triển khai liên tục là tách rời triển khai khỏi bản phát hành, tức là triển khai các bản cập nhật mà không kích hoạt các thay đổi ngay lập tức.

Tôi biết rằng các có thể được sử dụng cho việc này, nhưng tôi tự hỏi liệu có các kỹ thuật khác cho "phi tính năng" không.

Ví dụ: bạn có xây dựng một tính năng chuyển đổi cho một lỗi không? Có lẽ là không và người ta có thể lập luận rằng các lỗi nên được triển khai càng sớm càng tốt, bởi vì nó chỉ có thể trở nên tốt hơn. Và sau khi một bản sửa lỗi được phát hành, tôi chắc chắn không muốn tắt nó nữa. Nhưng đây có phải là trường hợp? Nó có thể là một thay đổi rủi ro mà bạn muốn phát hành một cách có kiểm soát. Và nếu có tác dụng phụ bất ngờ, rất tốt để có thể cuộn nó lại. Vì vậy, cờ tính năng cho mọi thay đổi?

Và những gì về sự thay đổi thị giác? Ví dụ: bạn có thể triển khai một cái gì đó như cờ tính năng trong CSS không? Nó thậm chí còn có ý nghĩa?


Pete Hodgson đã viết nhiều về các loại tính năng khác nhau, bao gồm các lỗi và các tình huống khác phù hợp. martinfowler.com/articles/feature-tlass.html
Evgeny

Câu trả lời:


7

Đối với phần mềm trong danh mục ứng dụng web, tùy thuộc vào nhà cung cấp dịch vụ lưu trữ / lưu trữ của bạn, việc tách rời đó thể chuyển đổi lưu lượng truy cập đến (hoặc phân chia giữa) các phiên bản được triển khai khác nhau của sw, thực tế bao gồm bất kỳ thay đổi nào bạn đề cập: lỗi, hình ảnh , Vân vân.

Hỗ trợ như vậy thường không yêu cầu bật tính năng. Và nó có thể được áp dụng bất kể ứng dụng là nguyên khối hay phân chia trong microservice.

Ví dụ: việc cung cấp Paas App Engine của Google có hỗ trợ cho việc phân chia và di chuyển lưu lượng.

Từ chia tách lưu lượng :

Bạn có thể sử dụng phân chia lưu lượng để chỉ định phân phối phần trăm lưu lượng trên hai hoặc nhiều phiên bản trong một dịch vụ. Chia lưu lượng cho phép bạn tiến hành thử nghiệm A / B giữa các phiên bản của mình và cung cấp kiểm soát tốc độ khi triển khai các tính năng.

Từ di chuyển lưu lượng :

Di chuyển lưu lượng chuyển đổi định tuyến yêu cầu giữa các phiên bản trong một dịch vụ của ứng dụng của bạn, di chuyển lưu lượng truy cập từ một hoặc nhiều phiên bản sang một phiên bản mới.


5

Mặc dù với các khối nguyên khối, bạn có thể bị hạn chế đối với các thiết bị chuyển mạch, với kiến ​​trúc microservice, bạn có thể phân chia mọi nhóm triển khai của các nút cung cấp dịch vụ (ví dụ: nhóm). Sau đó, bạn kích hoạt triển khai sản phẩm mới được thay đổi trong một tập hợp con của nhóm và theo dõi cẩn thận; thậm chí bạn có thể chọn số lượng nhóm để triển khai thay đổi, ví dụ, kích hoạt thay đổi cho 15% lưu lượng truy cập. Bạn có thể tìm thấy tính năng gọi là "cập nhật cán" trong tài liệu.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.