Trả lời nhanh: Thuê máy Mac trên đám mây (Mac mini cloud) đáng tiền trong ba tình huống: dự án ngắn hạn chưa chắc đi tiếp, số lượt dựng bản iOS còn ít, hoặc bạn cần bắt đầu ngay mà chưa muốn bỏ vốn. Ngược lại, khi đội dựng bản hằng ngày thì mua một máy đặt tại văn phòng hoặc gửi vào chỗ đặt máy chủ thường rẻ hơn sau vài tháng. Phép so đúng là tổng chi phí một năm, và nhớ rằng phần Android cùng backend vẫn chạy trên Linux rẻ hơn nhiều.
Nhánh iOS bắt buộc qua macOS, đó là ràng buộc không vượt qua được. Câu hỏi còn lại chỉ là sở hữu hay thuê. Bài này đưa ra cách tính và ba mô hình bố trí mà các đội ở Việt Nam hay dùng.
Ba lựa chọn và đặc điểm
Máy đặt tại văn phòng. Rẻ nhất về lâu dài, bạn kiểm soát hoàn toàn. Nhược điểm: tự lo điện và mạng, phải để máy bật liên tục nếu muốn dựng bản ban đêm, và khi mất điện thì cả đội chờ.
Máy gửi vào chỗ đặt máy chủ. Bạn vẫn sở hữu máy nhưng nó nằm trong trung tâm dữ liệu, có điện và mạng ổn định, truy cập từ xa mọi lúc. Chi phí gồm giá máy cộng phí chỗ đặt hằng tháng.
Thuê máy trên đám mây. Không bỏ vốn, dùng bao nhiêu trả bấy nhiêu hoặc thuê theo tháng. Bắt đầu ngay trong ngày. Đổi lại chi phí theo thời gian dùng, và máy nằm trên hạ tầng của bên khác.
Cách tính cho đúng
Lập bảng một năm cho hai hướng bạn đang cân nhắc:
Hướng thuê: giá thuê hằng tháng nhân mười hai, hoặc đơn giá theo giờ nhân số giờ dùng thật. Nhớ tính cả thời gian máy bật mà không dùng nếu bạn thuê theo tháng.
Hướng mua: giá máy, cộng phí chỗ đặt nếu gửi đi, cộng công quản trị, trừ giá trị còn lại của máy sau một năm.
Con số quyết định thường là số lượt dựng bản iOS mỗi tháng. Vài lượt thì thuê rõ ràng rẻ hơn. Dựng hằng ngày với đội nhiều người thì mua thường hoàn vốn trong khoảng nửa năm tới một năm.
Một khoản hay quên khi thuê theo giờ: thời gian chờ máy khởi động và cài đặt môi trường ở mỗi lượt. Nếu môi trường không được giữ lại giữa các lượt, bạn trả tiền cho việc cài lại chuỗi công cụ mỗi lần.
Chứng chỉ ký, điểm cần cân nhắc
Đây là khác biệt quan trọng giữa thuê và sở hữu mà bảng giá không nói. Để dựng bản phát hành, máy đó cần chứng chỉ ký của bạn.
Với máy thuê, chứng chỉ nằm trên hạ tầng của bên khác trong lúc dựng. Ba cách giảm rủi ro:
- Dùng cơ chế đồng bộ chứng chỉ có mã hóa, và chỉ giải mã trong lúc dựng, theo bài về tự động hóa phát hành.
- Chỉ dùng máy thuê cho bản thử, còn bản phát hành dựng trên máy của bạn.
- Bật cơ chế để cửa hàng giữ khóa gốc, để nếu có sự cố thì vẫn có đường đặt lại.
Với đội làm cho khách hàng doanh nghiệp, cách thứ hai là mô hình dễ giải trình nhất: máy thuê lo phần lặp lại hằng ngày, máy của công ty lo bước cuối.
Ba mô hình hay gặp ở Việt Nam
Mô hình một, mới bắt đầu: thuê máy Mac theo giờ cho nhánh iOS, một VPS Linux cho backend và cho nhánh Android. Vốn ban đầu gần như không, phù hợp khi chưa chắc dự án đi tới đâu.
Mô hình hai, đã chạy đều: mua một máy Mac đặt tại văn phòng, giữ VPS Linux cho phần còn lại. Đây là mô hình phổ biến nhất với đội năm tới mười người.
Mô hình ba, đội lớn hoặc làm nhiều dự án: máy Mac gửi vào chỗ đặt máy chủ để chạy liên tục, cộng một máy Linux mạnh cho các nhánh Android chạy song song.
Điểm chung của cả ba: phần Linux luôn chiếm phần lớn hạ tầng, vì backend, database, nơi lưu bản dựng và nhánh Android đều chạy ở đó. Máy Mac chỉ lo đúng một khâu, dù đó là khâu đắt nhất tính theo đơn vị.
Vài lưu ý khi thuê
Kiểm tra cấu hình và dung lượng. Chuỗi công cụ của Apple chiếm rất nhiều dung lượng, và máy thuê cấu hình thấp sẽ đầy ổ nhanh.
Hỏi về việc giữ môi trường giữa các lượt. Nếu mỗi lượt là một máy trắng thì bạn trả tiền cho việc cài lại chuỗi công cụ mỗi lần, và thời gian đó không nhỏ.
Kiểm tra độ trễ. Nếu bạn làm việc trực tiếp trên máy đó qua kết nối màn hình từ xa, máy đặt càng gần càng dễ chịu. Nếu chỉ dùng để dựng bản tự động thì độ trễ không quan trọng.
Có đường lấy lại dữ liệu. Trước khi ngừng thuê, đảm bảo bạn đã lấy về mọi thứ cần giữ, đặc biệt là chứng chỉ và cấu hình.
Phần ranh giới giữa việc gì cần macOS và việc gì chạy được trên Linux nằm ở bài build iOS có cần Mac.
Ba hướng và chi phí ẩn của từng hướng
| Hướng | Chi phí thấy được | Chi phí ẩn |
|---|---|---|
| Mua máy đặt tại văn phòng | Tiền máy trả một lần | Điện, mạng cố định, người trực khi máy treo, thay thế sau vài năm |
| Thuê máy theo giờ | Đơn giá theo giờ | Thời gian dựng lại môi trường mỗi lần thuê nếu không giữ được ảnh đĩa |
| Thuê máy theo tháng | Tiền thuê cố định | Trả tiền cả những ngày không dùng |
Với đội phát hành ứng dụng vài lần mỗi tháng, hướng thuê theo giờ thường rẻ nhất về hóa đơn nhưng đắt nhất về thời gian, vì mỗi lần thuê là một lần cài lại công cụ. Hãy hỏi rõ bên cho thuê có giữ được trạng thái máy giữa các phiên không, đây là câu hỏi quyết định.
Cách tính cho đúng trong mười phút
# So gio may thuc su chay, khong phai so gio ban lam viec # Buoc 1: dem so lan dong goi ban phat hanh trong mot thang# Buoc 2: moi lan mat bao nhieu phut may chay# Buoc 3: cong them thoi gian cai dat lai moi truong neu khong giu duoc anh dia# Buoc 4: nhan don gia gio # Nguong thuc te thuong gap:# - duoi 20 gio may moi thang: thue theo gio re hon# - tren 60 gio may moi thang: thue theo thang hoac mua may re hon# - o giua: quyet dinh theo yeu to khac, khong theo tienChứng chỉ ký, chỗ cần cẩn thận nhất
- Khóa ký là tài sản không thay được dễ. Mất khóa ký của một ứng dụng đã phát hành là chuyện rất phiền, phải xử lý qua nhà cung cấp nền tảng.
- Đừng để khóa ký nằm lại trên máy thuê. Nạp vào lúc cần, gỡ ra khi xong, hoặc dùng cơ chế lưu khóa riêng của nền tảng.
- Nếu bên thuê là bên thứ ba, hãy hỏi rõ dữ liệu trên máy được xóa thế nào sau khi trả máy. Câu trả lời mơ hồ là dấu hiệu nên chọn chỗ khác.
Câu hỏi thường gặp
Thuê máy Mac có rẻ hơn mua không?
Rẻ hơn khi số lượt dựng bản còn ít hoặc dự án ngắn hạn. Đội dựng hằng ngày thì mua thường hoàn vốn trong khoảng nửa năm tới một năm. Hãy so bằng tổng chi phí một năm chứ đừng so giá thuê một tháng.
Chứng chỉ ký để trên máy thuê có an toàn không?
Chấp nhận được nếu dùng cơ chế đồng bộ có mã hóa và chỉ giải mã lúc dựng. An toàn hơn là chỉ dùng máy thuê cho bản thử, còn bản phát hành thì dựng trên máy của công ty.
Máy Mac cấu hình nào là đủ?
Một máy Mac mini đời gần đây với bộ nhớ vừa phải đủ cho phần lớn dự án. Yếu tố hay thiếu nhất là dung lượng ổ đĩa, vì chuỗi công cụ và các bản dựng chiếm rất nhanh.
Có cần máy Mac cho nhánh Android không?
Không. Nhánh Android và backend chạy trên Linux, rẻ hơn nhiều. Máy Mac chỉ cần cho khâu dựng và ký bản iOS, nên nhiều đội chỉ có đúng một máy dùng chung.
