Chuyển đến nội dung chính

Bài đăng

Đang hiển thị bài đăng từ Tháng 3, 2019

Tổng quan Multi tenancy

Multi tenant là gì ? Multi-Tenant - Multi-tenancy có nghĩa là một phiên bản duy nhất của phần mềm và cơ sở hạ tầng hỗ trợ của nó phục vụ nhiều khách hàng. Mỗi khách hàng chia sẻ ứng dụng phần mềm và cũng chia sẻ một cơ sở dữ liệu. Dữ liệu của mỗi người khách hàng bị cô lập và vẫn vô hình đối với những khách hàng khác. Lợi ích của Multi tenant Chi phí thấp hơn thông qua tính kinh tế theo quy mô: Với nhiều khách hàng, nhân rộng có ý nghĩa cơ sở hạ tầng ít hơn nhiều so với giải pháp lưu trữ vì khách hàng mới có quyền truy cập vào cùng một phần mềm cơ bản. Hơn nữa, người dùng không cần bận tâm về việc cập nhật các tính năng và cập nhật mới, họ cũng không cần phải trả phí bảo trì hoặc chi phí khổng lồ. Các bản cập nhật là một phần của đăng ký hoặc, nếu phải trả bất kỳ khoản phí bảo trì nào, nó được chia sẻ bởi nhiều người thuê, do đó làm cho nó trở thành danh nghĩa (nhân tiện, bao gồm các bản cập nhật). Kiến trúc Multi tenant phục vụ hiệu quả tất cả mọi người từ các khách hàng

Cơ sở dữ liệu riêng biệt hoặc Cơ sở dữ liệu dùng chung

Khi chúng tôi đã xác định dữ liệu cụ thể của người thuê và dữ liệu được chia sẻ của người thuê , bước tiếp theo sẽ là quyết định giữa hai chiến lược chính để lưu trữ dữ liệu: Cơ sở dữ liệu riêng biệt cho mỗi người thuê, hoặc một cơ sở dữ liệu chung được sử dụng bởi tất cả các khách thuê Cả hai chiến lược trên đều có ưu điểm và nhược điểm, và có nhiều sự đánh đổi để xem xét khi đưa ra lựa chọn này. Có một Cơ sở dữ liệu riêng cho từng người thuê sẽ dễ thực hiện hơn, đặc biệt là trong trường hợp chúng tôi thêm đa nhiệm ở giai đoạn sau của dự án (sau khi một phần chức năng đã được triển khai như thể đây sẽ không phải là ứng dụng đa nhiệm). Trong trường hợp này, mỗi người thuê sẽ chỉ có quyền truy cập vào cơ sở dữ liệu của riêng mình và không nên thay đổi lược đồ dữ liệu từ phiên bản không gây đột biến. Điều này cũng đơn giản để cô lập dữ liệu người thuê. Dựa trên người dùng hiện tại, chúng tôi biết người thuê nó thuộc về và chúng tôi sẽ kết nối với cơ sở dữ liệu của người thuê đó. Vì vậy,

THIẾT KẾ DATABASE THEO HƯỚNG MULTI-TENANCY

Phương án I. Cùng chung một cơ sở dữ liệu (database), chia sẻ bảng (table) Ví dụ: Một hệ thống quản lý cửa hàng, có bảng shop, bảng sản phẩm (product), bảng acccount Bảng shop Shop ( Id, Name, Notes) Bảng user User( Id, Name, UserName, Password, ShopId ) Bảng product Product ( Id int, Code varchar(50), Name varchar(255), ShopId) Tất cả các bảng liên quan đều có 1 khóa ngoại là ShopId. Dữ liệu sản phẩm của từng shop đều được lưu chung trong bảng Product, nhưng được phân biệt nhau bởi trường ShopId. Điểm mạnh: - Thiết kế lưu trữ đơn giản. - Dễ cho việc phát triển. - Không gặp phải vấn đề đồng bộ cấu trúc bảng trong quá trình phát triền. Nhược điểm: - Không độc lập database nên việc một shop có thể xem dữ liệu của shop khác nếu có quyền truy cập SQL, phân quyền trên SQL thực sự là vấn đề lớn. - Vấn đề backup, restore dữ liệu cho từng shop là gần như không thể, chỉ có thể backup cho tất cả. - Vấn đề phát sinh thực sự phức tạp khi dữ liệu phình

Những lợi thế của kiến ​​trúc SaaS

Những lợi thế của kiến ​​trúc SaaS nhiều bên thuê là gì? Nó khác với các trường hợp người thuê nhà như thế nào? Chúng tôi chia nhỏ sự khác biệt và nêu bật những lợi ích của việc triển khai giải pháp SaaS để bảo vệ dữ liệu trong blog này. NHIỀU NGƯỜI THUÊ NHÀ - MỘT LỢI ÍCH CỐT LÕI CỦA SAAS Trong những ngày đầu của đám mây, các tổ chức không muốn áp dụng chiến lược đám mây. Rất ít tổ chức xem xét áp dụng các chính sách, công nghệ và kiểm soát để bảo vệ dữ liệu trên đám mây. Trong vài năm qua, đã chứng kiến ​​hiệu quả đã được chứng minh của việc triển khai đám mây về khả năng mở rộng, chi phí và bảo mật, đã thay đổi điều đó. Bây giờ chúng ta đang chứng kiến ​​sự chấp nhận nhanh chóng các nền tảng đám mây của các tổ chức thuộc mọi hình dạng và kích cỡ. Nền tảng bảo vệ dữ liệu của Digital Guardian tận dụng phần mềm như một dịch vụ, hoặc SaaS, để cung cấp bảo vệ dữ liệu trong một gói mang lại sự bảo mật cao, kinh tế tốt hơn và giảm chi phí. Một trong những cách chúng tôi làm điều

5 lý do để chọn kiến ​​trúc SaaS

Với sự ra đời vào những năm 2000, SaaS (Phần mềm là một Dịch vụ) đã trở thành bộ mặt rất tiện lợi và hiệu quả về chi phí cho các tổ chức. Theo IDC, Thị trường sẽ vượt 112,8 tỷ đô la vào năm 2019 với tốc độ tăng trưởng kép hàng năm (CAGR) là 18,3%. Ngày nay, khi nói đến phát triển ứng dụng SaaS, các nhà phát triển, cũng như các doanh nghiệp, nhắm đến mục tiêu hiệu quả nhất về chi phí cũng như cách tiếp cận hiệu quả để phát triển ứng dụng SaaS . Kiến trúc SaaS nhiều người thuê , đó là lý do tại sao được ưa thích hơn nhiều so với thuê nhà đơn lẻ. Đa thuê hệ thống chắc chắn dẫn khi nói đến cộng đồng nhà phát triển và các doanh nghiệp có nhu cầu để tận dụng tốt nhất các nguồn lực, đối với chi phí thấp hơn và hiệu quả tối ưu. Tuy nhiên, có một loạt các lợi ích khác đòi hỏi phải lựa chọn kiến ​​trúc nhiều người thuê trong ứng dụng SaaS. Nhưng, trước khi giới thiệu cho bạn những lợi thế này, trước tiên chúng tôi sẽ hướng dẫn bạn phân tích so sánh các kiến ​​trúc một bên thuê và nhiều bên thuê

Multi tenant là gì ?

Bài toán hướng multi-tenancy trong thực tế gặp rất nhiều, nhưng có rất nhiều developer chưa nắm được khái niệm và cách thức hoạt động của các hệ thống thiết kế theo hướng này. Qua một thời gian nghiên cứu và phát triển các hệ thống, mình đúc rút một số kinh nghiệm muốn chia sẻ cho mọi người. Thực tế ta bắt gặp rất nhiều hệ thống sử dụng multi-tenacy vd: - Hệ thống quản lý cửa hàng cho phép nhiều đại lý có thể truy cập với những tài khoản độc lập, dữ liệu độc lập, nhưng cùng chung 1 hệ thống site. - Hệ thống quản lý công văn sử dụng trong tổng công ty và nhiều công ty con, cùng site nhưng dữ liệu độc lập. - Hệ thống quản lý dự án Jira - Hệ thống CRM của zoho, saleforce... Nhiều hệ thống sử dụng SQL server, Oracle ... thiết kế hệ thống multi-tenancy theo một trong các kiến trúc sau. Phương án I . Cùng chung một cơ sở dữ liệu (database), chia sẻ bảng (table) Tất cả các bảng liên quan đều có 1 khóa ngoại là ShopId. Dữ liệu sản phẩm của từng shop đều được lưu chung trong bả