banner

[Rule] Rules  [Home] Main Forum  [Portal] Portal  
[Members] Member Listing  [Statistics] Statistics  [Search] Search  [Reading Room] Reading Room 
[Register] Register  
[Login] Loginhttp  | https  ]
 
Forum Index Thảo luận mạng và thiết bị mạng Hỏi về thiết kế hệ thống máy chủ web lớn  XML
  [Question]   Hỏi về thiết kế hệ thống máy chủ web lớn 18/01/2011 16:31:30 (+0700) | #1 | 229732
[Avatar]
dazzlingvit
Member

[Minus]    0    [Plus]
Joined: 17/01/2011 20:58:03
Messages: 44
Offline
[Profile] [PM] [Yahoo!]
Cho em hỏi về việc làm thế nào để xây dựng hệ thống máy chủ web lớn. Cụ thể là em k0 hiểu làm thế nào để ứng dụng web có thể xử lý các vấn đề sau:
1. Dùng chung tài khoản đăng nhập ở nhiều site có tên miền khác hẳn nhau. Tức là khi đã đăng nhập ở site A thì khi sang site B người dùng k0 phải đăng nhập lại nữa.
2. Việc lưu trữ CSDL chắc k0 thể thực hiện trên 1 máy chủ. Cho hỏi có phương pháp nào để tổ chức CSDL trên nhiều cụm máy chủ đặt ở nhiều nơi khác nhau k0?
Dazzling V.I.T
Hãy gọi tôi là vịt
[Up] [Print Copy]
  [Question]   Hỏi về thiết kế hệ thống máy chủ web lớn 18/01/2011 19:03:48 (+0700) | #2 | 229740
[Avatar]
quanta
Moderator

Joined: 28/07/2006 14:44:21
Messages: 7265
Location: $ locate `whoami`
Offline
[Profile] [PM]

dazzlingvit wrote:
Cho em hỏi về việc làm thế nào để xây dựng hệ thống máy chủ web lớn. Cụ thể là em k0 hiểu làm thế nào để ứng dụng web có thể xử lý các vấn đề sau:
1. Dùng chung tài khoản đăng nhập ở nhiều site có tên miền khác hẳn nhau. Tức là khi đã đăng nhập ở site A thì khi sang site B người dùng k0 phải đăng nhập lại nữa.
 

Google: Open source cross-domain Single Sign-On, bạn sẽ tìm được một số cái như: OpenID, OpenSSO, Lasso, ...

dazzlingvit wrote:

2. Việc lưu trữ CSDL chắc k0 thể thực hiện trên 1 máy chủ. Cho hỏi có phương pháp nào để tổ chức CSDL trên nhiều cụm máy chủ đặt ở nhiều nơi khác nhau k0? 

Google: open source distributed database, bạn sẽ tìm được một số cái như: HBase, Cassandra, ...
Let's build on a great foundation!
[Up] [Print Copy]
  [Question]   Hỏi về thiết kế hệ thống máy chủ web lớn 18/01/2011 19:05:50 (+0700) | #3 | 229741
[Avatar]
dazzlingvit
Member

[Minus]    0    [Plus]
Joined: 17/01/2011 20:58:03
Messages: 44
Offline
[Profile] [PM] [Yahoo!]
Cám ơn anh, em nghiên cứu thử xem. Có gì em hỏi tiếp smilie
Dazzling V.I.T
Hãy gọi tôi là vịt
[Up] [Print Copy]
  [Question]   Hỏi về thiết kế hệ thống máy chủ web lớn 22/02/2011 12:06:09 (+0700) | #4 | 231633
conanduck
Member

[Minus]    0    [Plus]
Joined: 02/01/2009 18:21:05
Messages: 31
Offline
[Profile] [PM]
Giải pháp cho vấn đề của bạn là Load balancing, Bạn search bài giảng của một anh ở GameVN về các họ giải quyết bài toán này cho Zingme nhé. Hoặc lên wiki cũng có mấy bài hay đó!
[Up] [Print Copy]
  [Question]   Hỏi về thiết kế hệ thống máy chủ web lớn 10/06/2011 09:19:53 (+0700) | #5 | 239966
[Avatar]
dazzlingvit
Member

[Minus]    0    [Plus]
Joined: 17/01/2011 20:58:03
Messages: 44
Offline
[Profile] [PM] [Yahoo!]

conanduck wrote:
Giải pháp cho vấn đề của bạn là Load balancing, Bạn search bài giảng của một anh ở GameVN về các họ giải quyết bài toán này cho Zingme nhé. Hoặc lên wiki cũng có mấy bài hay đó! 

Có phải cân bằng tải thì dữ liệu trên các máy chủ là giống nhau không ? Hay mỗi máy chủ chứa một ít.
Nhưng nếu mỗi máy chủ chứa một ít dữ liệu thì thực hiện truy vấn kiểu gì smilie
Load balancing và server clustering có giống nhau không ?
Dazzling V.I.T
Hãy gọi tôi là vịt
[Up] [Print Copy]
  [Question]   Hỏi về thiết kế hệ thống máy chủ web lớn 10/06/2011 09:52:24 (+0700) | #6 | 239977
[Avatar]
quanta
Moderator

Joined: 28/07/2006 14:44:21
Messages: 7265
Location: $ locate `whoami`
Offline
[Profile] [PM]

dazzlingvit wrote:

Có phải cân bằng tải thì dữ liệu trên các máy chủ là giống nhau không ? Hay mỗi máy chủ chứa một ít.
 

Dữ liệu trên các máy chủ sẽ giống nhau.

dazzlingvit wrote:

Load balancing và server clustering có giống nhau không ? 

- Clustering có nghĩa là bạn gộp nhiều máy lại để cung cấp một dịch vụ nào đó. Clustering thường bao gồm load balancing. Cái này bạn có thể tìm hiểu MySQL Cluster.

- Load balancing, đúng như tên gọi của nó có nghĩa là... cân bằng tải. Bạn có thể dựng HAProxy đứng trước 2 con web server Apache chẳng hạn. Client chỉ biết IP của HAProxy, request từ client đi đến, đụng HAProxy sẽ được forward vào 2 con Apache bên trong. Nếu một con chết, HAProxy sẽ chỉ forward request đến server còn lại.

Let's build on a great foundation!
[Up] [Print Copy]
  [Question]   Hỏi về thiết kế hệ thống máy chủ web lớn 10/06/2011 10:10:35 (+0700) | #7 | 239987
[Avatar]
dazzlingvit
Member

[Minus]    0    [Plus]
Joined: 17/01/2011 20:58:03
Messages: 44
Offline
[Profile] [PM] [Yahoo!]

quanta wrote:

dazzlingvit wrote:

Load balancing và server clustering có giống nhau không ? 

- Clustering có nghĩa là bạn gộp nhiều máy lại để cung cấp một dịch vụ nào đó. Clustering thường bao gồm load balancing. Cái này bạn có thể tìm hiểu MySQL Cluster.

- Load balancing, đúng như tên gọi của nó có nghĩa là... cân bằng tải. Bạn có thể dựng HAProxy đứng trước 2 con web server Apache chẳng hạn. Client chỉ biết IP của HAProxy, request từ client đi đến, đụng HAProxy sẽ được forward vào 2 con Apache bên trong. Nếu một con chết, HAProxy sẽ chỉ forward request đến server còn lại.

 

Cám ơn anh, em hiểu sơ sơ rồi ạ.
Anh cho em hỏi thêm câu nữa ạ. Những trang lớn như Facebook, mỗi giây có cả đống dữ liệu thêm mới, vậy thì CSDL của họ được tổ chức theo mô hình gì?! Dữ liệu nằm rải rác ở khắp nơi hay tất cả các cụm đều có bản sao giống hệt nhau. Nếu nằm rải rác thì truy vấn như thế nào? Còn nếu các cụm có bản sao giống nhau thì họ dùng cách nào để làm việc này?
smilie
Dazzling V.I.T
Hãy gọi tôi là vịt
[Up] [Print Copy]
  [Question]   Hỏi về thiết kế hệ thống máy chủ web lớn 10/06/2011 11:10:56 (+0700) | #8 | 240003
[Avatar]
quanta
Moderator

Joined: 28/07/2006 14:44:21
Messages: 7265
Location: $ locate `whoami`
Offline
[Profile] [PM]

dazzlingvit wrote:

Anh cho em hỏi thêm câu nữa ạ. Những trang lớn như Facebook, mỗi giây có cả đống dữ liệu thêm mới, vậy thì CSDL của họ được tổ chức theo mô hình gì?! Dữ liệu nằm rải rác ở khắp nơi hay tất cả các cụm đều có bản sao giống hệt nhau. Nếu nằm rải rác thì truy vấn như thế nào? Còn nếu các cụm có bản sao giống nhau thì họ dùng cách nào để làm việc này?
smilie 

Mình nghĩ là họ dùng MySQL Replication. Cái này bạn có thể Google cũng tìm thấy một số thông tin thú vị, ví dụ:
http://developers.facebook.com/opensource/
http://www.facebook.com/MySQLatFacebook
Let's build on a great foundation!
[Up] [Print Copy]
  [Question]   Hỏi về thiết kế hệ thống máy chủ web lớn 10/06/2011 11:31:46 (+0700) | #9 | 240011
protectHat
Member

[Minus]    0    [Plus]
Joined: 09/08/2008 11:02:35
Messages: 176
Location: DMZ
Offline
[Profile] [PM]
Còn một cái nữa cho bạn là khi mà ứng dụng lớn thì người ta dùng database là noSQL. Bạn tham khảo thêm nha
[Up] [Print Copy]
  [Question]   Hỏi về thiết kế hệ thống máy chủ web lớn 10/06/2011 12:02:06 (+0700) | #10 | 240018
[Avatar]
dazzlingvit
Member

[Minus]    0    [Plus]
Joined: 17/01/2011 20:58:03
Messages: 44
Offline
[Profile] [PM] [Yahoo!]
Em cảm ơn anh smilie Để em nghiên cứu tiếp, có gì không hiểu em lại hỏi ạ smilie
Dazzling V.I.T
Hãy gọi tôi là vịt
[Up] [Print Copy]
[digg] [delicious] [google] [yahoo] [technorati] [reddit] [stumbleupon]
Go to: 
 Users currently in here 
1 Anonymous

Powered by JForum - Extended by HVAOnline
 hvaonline.net  |  hvaforum.net  |  hvazone.net  |  hvanews.net  |  vnhacker.org
1999 - 2013 © v2012|0504|218|