Kết quả 1 đến 10 của 11
Chủ đề: [Guide] Tối ưu Ranking giảm lang
-
19-07-08, 01:18 AM #1
- Ngày tham gia
- May 2006
- Bài viết
- 130
- Thanks
- 31
- Thanked 92 Times in 26 Posts
[Guide] Tối ưu Ranking giảm lang
Web MU nặng nhất là phần Ranking.
"Nặng" ở đây không có nghĩa là kích cỡ file lớn mà là traffic đến máy chủ lớn
Bạn hình dung thế này:
Với 1 trang xếp hạng hiển thị thông tin 20 nhân vật gồm các thông số:
-Tên
-Level
-Reset
-Money
-PK
-Trạng thái online
Đối với 5 thông số đầu tiên đều có trong table character nhưng thông số thứ 6 thì nằm trong 1 table khác
Như vậy để hiển thị thông tin cho 1 nhân vật trên bảng xếp hạng
trong câu lệnh SQL cần ít nhất 2 câu truy vấn để lấy thông tin
- Đầu tiên trình chủ web sẽ biên dịch mã nguồn, kết nối SQL server
- SQL thẩm định quyền truy xuất dữ liệu
- Kiểm tra ngữ pháp câu lệnh
--> sau đó sẽ tạo ra một execute plan để thực thi
quá trình này diễn ra rất nhanh.
Nhưng mấu chố ở chỗ. Nếu có quá nhiều lần thực hiện thao tác như vậy thì lưu thông trên mạng sẽ lớn. vì đa phần MU server sử dụng ADSL nên điều này càng làm mạng trì chệ
Nói vậy là đủ rồi. Mình xin đưa ra 1 giải pháp cho vấn đề này
1. Sử dụng Stored Procedure để thực thi lệnh
Sau đây là ví dụ cụ thể đối với 1 trang ranking lấy ra thông tin 100 nhân vật
Vào SQL Enterprise Manager
Chọn Database MuOnline
Chọn Stored Procedure
Click phải chuột vào bên phải bảng chọn New Stored Procedure
Chèn lệnh sau rồi save vào
Code:/* STATUS: 0: FALSE -------------------------------- 9: OK */ ALTER PROCEDURE GC_Ranking( @Status tinyint=0 Output, @Result varchar(1000)='' Output ) AS SET @Result='' SELECT top 100 @Result=@Result+'<tr><td>'+ Name +'</td><td>'+ Convert(varchar,Reset) +'</td></tr>' FROM Character ORDER BY Reset DESC, cLevel DESC IF @@Error = 0 SET @Status = 9 ELSE SET @Status = 0 PRINT @Status PRINT @Result GO
Code:'===================Khởi tạo lệnh ADODB SET conn = Server.CreateObject("ADODB.Connection") connstr = "driver={sql server};server=mutitan.net,4323;uid=sa;pwd=123456;database=MuOnline" conn.open connstr set adoCmd = Server.CreateObject("ADODB.Command") set adoCmd.ActiveConnection = conn adoCmd.CommandText = "GC_Ranking" adoCmd.CommandType = adCmdStoredProc adoCmd.Parameters.Append adoCmd.CreateParameter("@Status", adTinyInt, adParamOutput, 1) adoCmd.Parameters.Append adoCmd.CreateParameter("@Result", adVarChar, adParamOutput, 1000) adoCmd.Execute adoCmd.Close adoStatus = Cint(adoCmd.Parameters("@Status").Value) adoResult = adoCmd.Parameters("@Result").Value SET adoCmd = Nothing conn.Close SET conn = Nothing Response.write("<table><tr><th>Name</th><th>Reset</th></tr>"&adoResult&"</table>")
Đoạn dưới chứa thông tin username và pass để kết nối SQL server
Code:SET conn = Server.CreateObject("ADODB.Connection") connstr = "driver={sql server};server=mutitan.net,4323;uid=sa;pwd=123456;database=MuOnline" conn.open connstr
Code:set adoCmd = Server.CreateObject("ADODB.Command") set adoCmd.ActiveConnection = conn adoCmd.CommandText = "GC_Ranking" adoCmd.CommandType = adCmdStoredProc
Code:adoCmd.Parameters.Append adoCmd.CreateParameter("@Status", adTinyInt, adParamOutput, 1) adoCmd.Parameters.Append adoCmd.CreateParameter("@Result", adVarChar, adParamOutput, 1000) adoCmd.Execute adoCmd.Close
Lần sửa cuối bởi TitanRain, ngày 19-07-08 lúc 01:23 AM.
Khách viếng thăm hãy cùng TitanRain xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!
-
19-07-08, 01:30 AM #2
- Ngày tham gia
- May 2006
- Bài viết
- 130
- Thanks
- 31
- Thanked 92 Times in 26 Posts
Ðề: [Guide] Tối ưu Ranking giảm lang
3.Phân tích mở rộng
Thường thì một ngày mỗi người chơi theo dõi Ranking liên tục trong quá trình chơi và mỗi khi Reset (Giống như theo giõi chứng khoán ý)
Nhưng chúng ta muốn làm chậm lại quá trình Refresh dữ liệu.
Vì mỗi lần xem trang Ranking lại hàng loạt request đến server được triệu gọi
Tôi xin trình bày cách lưu thông tin bảng xếp hạng vào file .xml ở trên host đặt web.
Mỗi giờ sẽ cập nhật thông tin từ máy chủ 1 lần, còn trong thời gian dưới 1 giờ sẽ hiển thị cho user thông tin đã lưu trong file .xml
Demo: [Only registered and activated users can see links. ] (Đây là trang chủ)
Đây là các file đã được lưu trên host:
- [Only registered and activated users can see links. ]
- [Only registered and activated users can see links. ]
- [Only registered and activated users can see links. ]
- [Only registered and activated users can see links. ]
- [Only registered and activated users can see links. ]
- ....
Tất nhiên quá trình kiểm tra và tạo mới file .xml diễn ra tự độngLần sửa cuối bởi TitanRain, ngày 19-07-08 lúc 08:37 AM.
Khách viếng thăm hãy cùng TitanRain xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!
-
19-07-08, 01:32 AM #3
- Ngày tham gia
- May 2006
- Bài viết
- 395
- Thanks
- 32
- Thanked 37 Times in 33 Posts
Ðề: [Guide] Tối ưu Ranking giảm lang
Gãi đúng chỗ ngứa
Thanks a lotKhách viếng thăm hãy cùng vietpro8x xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!
-
19-07-08, 06:56 AM #4
- Ngày tham gia
- Mar 2008
- Đang ở
- Lâm Đồng
- Bài viết
- 1,877
- Thanks
- 38
- Thanked 394 Times in 136 Posts
Ðề: [Guide] Tối ưu Ranking giảm lang
thế thì còn jì bằng nhờ???????^^
Khách viếng thăm hãy cùng giangleloi xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!
-
19-07-08, 08:44 AM #5
- Ngày tham gia
- Aug 2007
- Bài viết
- 46
- Thanks
- 0
- Thanked 0 Times in 0 Posts
Ðề: [Guide] Tối ưu Ranking giảm lang
Cho mình hỏi thêm chút dc hok bạn ! là vấn đề của bảng xếp hạng Guild đó ! Nó khó chiệu wua à
Khách viếng thăm hãy cùng Secondhand™ xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!
-
19-07-08, 05:21 PM #6
- Ngày tham gia
- May 2006
- Bài viết
- 130
- Thanks
- 31
- Thanked 92 Times in 26 Posts
Ðề: [Guide] Tối ưu Ranking giảm lang
Bạn post code lên mình xem cho
Khách viếng thăm hãy cùng TitanRain xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!
-
30-07-08, 11:06 AM #7
- Ngày tham gia
- Aug 2007
- Bài viết
- 46
- Thanks
- 0
- Thanked 0 Times in 0 Posts
Ðề: [Guide] Tối ưu Ranking giảm lang
- Bạn có thể cho mình xin cái Mod_Ranking.asp của mu phố keo dc hok ! Mình sài soure của bạn đó mà . Hồi trước anh hà sell
Khách viếng thăm hãy cùng Secondhand™ xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!
-
20-08-08, 02:43 PM #8
- Ngày tham gia
- Jul 2008
- Bài viết
- 91
- Thanks
- 0
- Thanked 0 Times in 0 Posts
Ðề: [Guide] Tối ưu Ranking giảm lang
anh có thể hướng dẫn kỷ hơn một chút được ko?
mình copy toàn bộ cái ranking.asp sao nó ko dcKhách viếng thăm hãy cùng muonline3k xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!
-
10-10-08, 09:22 PM #9
Ðề: [Guide] Tối ưu Ranking giảm lang
ui' giowf sao khoong cos cais tool gox tieengs vieetj vaayj, err
tui thi dung cach khac, xai web 08, them vai dong code de han che xem xep hang:
cos nghia la chi xem duoc xep hang vao 1 ngay nhat dinh trong tuan thoi, nhung ngay khac ko xem duoc, "lag 1 ngay con hon lag 1 tuan ^^" voi lai nhu the nay se tao cam giac hoi hop cho nguoi choi " ko biet minh xep thu may roi nhi?" giong may game online lo'n 1 tuan xep hang 1 lan hohoKhách viếng thăm hãy cùng tinhhack xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!
-
02-05-09, 08:51 PM #10
- Ngày tham gia
- May 2009
- Bài viết
- 8
- Thanks
- 0
- Thanked 0 Times in 0 Posts
Ðề: [Guide] Tối ưu Ranking giảm lang
các bạn ơi sao mà mình cài song mu rồi mà sao khi mình biên qua các nạp khác thì lại ko dc mong các ban chi giáo hoậc liên lạc YM nhatdasai de chi giáo cám ơn rất nhiều
Khách viếng thăm hãy cùng daica72 xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!
Các Chủ đề tương tự
-
Lỗi cập nhật Ranking Web Forsttress của bác Mr.Quy Share
Bởi lequangvu trong diễn đàn Hỏi Đáp/ Yêu CầuTrả lời: 3Bài viết cuối: 27-05-11, 12:16 PM -
[RELEASE]MuWeb0.8 Modified(VN lang,FPT themes,...)
Bởi HKDdev.team trong diễn đàn SQL Server & WebsiteTrả lời: 36Bài viết cuối: 09-07-08, 06:05 PM -
[Guide][GS 1.00.18] PK Bug fix
Bởi cuonglee trong diễn đàn Guides - Kho Lưu trữTrả lời: 3Bài viết cuối: 28-06-08, 10:03 PM -
[Release] Muweb Season 3 Ranking Fix
Bởi luckyday trong diễn đàn SQL Server & WebsiteTrả lời: 5Bài viết cuối: 17-03-08, 01:06 PM