1. Trang chủ
  2. » Luận Văn - Báo Cáo

ỨNG DỤNG kỹ THUẬT PHÂN tán TRONG CỔNG THÔNG TIN báo điện tử

94 142 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 94
Dung lượng 5,97 MB

Nội dung

ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN KHOA CÔNG NGHỆ PHẦN MỀM KHÓA LUẬN TỐT NGHIỆP ỨNG DỤNG KỸ THUẬT PHÂN TÁN TRONG CỔNG THÔNG TIN BÁO ĐIỆN TỬ Giảng viên hướng dẫn: TH.S - ĐỖ THỊ THANH TUYỀN CN - HẦU NGUYỄN THÀNH NAM Sinh viên thực hiện: TRẦN QUANG TÍN LÊ THANH QUANG - Mssv: 07520359 - Mssv: 07520490 Lớp: CNPM02 Khoa: CÔNG NGHỆ PHẦN MỀM TP Hồ Chí Minh, tháng 02 năm 2012 NHẬN XÉT CỦA GIẢNG VIÊN HƢỚNG DẪN ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… Khóa luận đáp ứng yêu cầu kỹ sư phần mềm Tp HCM, ngày…… tháng…… năm…… Giảng viên hƣớng dẫn GVHD: - SVHT: Đỗ Thị Thanh Tuyền Hầu Nguyễn Thành Nam - Trần Quang Tín - 07520359 Lê Thanh Quang - 07520490 NHẬN XÉT CỦA GIẢNG VIÊN PHẢN BIỆN ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… Khóa luận đáp ứng yêu cầu kỹ sư phần mềm Tp HCM, ngày…… tháng…… năm…… Giảng viên phản biện GVHD: - SVHT: Đỗ Thị Thanh Tuyền Hầu Nguyễn Thành Nam - Trần Quang Tín - 07520359 Lê Thanh Quang - 07520490 LỜI CẢM ƠN Chúng em xin chân thành cảm ơn Khoa Công Nghệ Phần Mềm, trường Đại Học Công Nghệ Thông Tin Tp HCM tạo điều kiện tốt cho chúng em thực đề tài tốt nghiệp Chúng em xin chân thành cảm ơn thầy Hầu Nguyễn Thành Nam, cô Đỗ Thị Thanh Tuyền, người tận tình hướng dẫn, bảo chúng em suốt thời gian thực đề tài Chúng em xin gửi lời cảm ơn sâu sắc đến q Thầy Cơ Khoa tận tình giảng dạy, trang bị cho chúng em kiến thức quí báu năm học vừa qua Chúng em xin gửi lòng biết ơn sâu sắc đến Ba, Mẹ, anh chị bạn bè ủng hộ, giúp đỡ động viên chúng em lúc khó khăn suốt thời gian học tập nghiên cứu Mặc dù chúng em cố gắng hoàn thành luận văn phạm vi khả cho phép, chắn khơng tránh khỏi thiếu sót, kính mong cảm thơng tận tình bảo q Thầy Cơ bạn Nhóm thực Trần Quang Tín & Lê Thanh Quang GVHD: - SVHT: Đỗ Thị Thanh Tuyền Hầu Nguyễn Thành Nam - Trần Quang Tín - 07520359 Lê Thanh Quang - 07520490 LỜI MỞ ĐẦU Thời đại công nghệ phát triển với dịch vụ internet rộng khắp đến nhà, nhu cầu người ngày cao, thu thập nhiều thông tin từ báo phương tiện truyền thông Luận văn cung cấp cổng thông tin báo điện tử với đầy đủ chức từ quản lý đọc giả Đồng thời cung cấp hệ thống chịu tải cao việc sử dụng kỹ thuật phân tán Kết cấu chương trình gồm phần: front-end back-end  Front-end bao gồm phần cho đọc giả phần cho nhà quản trị  Back-end hệ thống phân tán xử lý bên nhằm đảm bảo cho hệ thống chạy tốt chịu tải cao GVHD: - SVHT: Đỗ Thị Thanh Tuyền Hầu Nguyễn Thành Nam - Trần Quang Tín - 07520359 Lê Thanh Quang - 07520490 MỤC LỤC Chương Tổng quan cổng thông tin báo điện tử 1.1 Tổng quan 1.2 Tính đa phương tiện báo điện tử Chương Kỹ thuật phân tán 2.1 Khái quát 2.2 Giới thiệu hệ phân tán 2.2.1 Định nghĩa 2.2.2 Phân loại hệ phân tán 2.2.3 Gọi thủ tục từ xa (RPC) 2.3 Giới thiệu hệ thống phân tán báo điện tử 10 2.3.1 Tổng quan 10 2.3.2 Các kỹ thuật sử dụng 10 2.3.3 Chi tiết hệ thống báo điện tử 10 Chương Mơ hình, chức nghiệp vụ cho cổng thông tin báo điện tử 13 3.1 Mô hình nghiệp vụ 13 3.1.1 Admin 13 3.1.2 Editor 14 3.1.3 Reporter 15 3.1.4 Người duyệt quảng cáo 16 3.1.5 Người duyệt bình luận 17 3.1.6 Khách hàng 18 3.2 Các chức 18 3.2.1 Phần người dùng 18 3.2.2 Phần quản lý 19 3.3 Quy trình phần mềm 24 3.4 Các kỹ thuật sử dụng luận văn 27 3.4.1 Struts Framework 27 GVHD: - SVHT: Đỗ Thị Thanh Tuyền Hầu Nguyễn Thành Nam - Trần Quang Tín - 07520359 Lê Thanh Quang - 07520490 3.4.2 Thrift 45 3.4.3 Berkeley Database 60 Chương Kiến trúc mơ hình cổng thơng tin báo điện tử hệ phân tán 63 4.1 Kiến trúc tổng quát 63 4.2 Kiến trúc ứng dụng lưu trữ: 68 4.2.1 Giới thiệu 68 4.2.2 Các công nghệ sử dụng 68 4.2.3 Kiến trúc ứng dụng: 69 4.3 Vấn đề giải pháp 75 4.4 Triển khai ứng dụng 77 4.5 Kết đo đạt hệ thống 81 4.5.1 Đo đạt hệ thống lưu trữ 81 4.5.2 Đo đạt từ phía người dùng 82 Chương Kết luận phát triển 84 5.1 Kết luận 84 5.2 Phát triển 84 TÀI LIỆU THAM KHẢO 85 GVHD: - SVHT: Đỗ Thị Thanh Tuyền Hầu Nguyễn Thành Nam - Trần Quang Tín - 07520359 Lê Thanh Quang - 07520490 DANH MỤC HÌNH ẢNH Hình 1: Mơ hình hệ thống báo điện tử 12 Hình 2: Mơ hình nghiệp vụ cho chức admin 13 Hình 3: Mơ hình nghiệp vụ cho chức editor 14 Hình 4: Mơ hình nghiệp vụ cho chức reporter 15 Hình 5: Mơ hình nghiệp vụ người duyệt quảng cáo 16 Hình 6: Mơ hình nghiệp vụ người duyệt bình luận 17 Hình 7: Mơ hình nghiệp vụ khách hàng quảng cáo 18 Hình 8: Màn hình admin 20 Hình 9: Màn hình chủ biên 21 Hình 10: Màn hình phóng viên 22 Hình 11: Màn hình quản lý comment 23 Hình 12: Màn hình quản lý quảng cáo 24 Hình 13: Mơ hình phát triển phần mềm 25 Hình 14: Kiến Trúc Của Struts Framework 28 Hình 15: Tổng quan xử lý request Struts 30 Hình 16: Xử lý request Struts 30 Hình 17: Khai báo cấu hình struts XML Annotations 37 Hình 18: Interceptor Action Life Circle 40 Hình 19: Ngơn ngữ hỗ trợ thrift 45 Hình 20: Kiến trúc thrift 47 Hình 21: Dịch vụ truy cập liệu Berkeley DB 60 Hình 22: Kiến trúc front-end người dùng 63 Hình 23: Kiến trúc front-end quản lý 64 Hình 24: Mơ hình server nhận lệnh ghi 69 Hình 25: Mơ hình server nhận lệnh đọc 70 Hình 26: Quá trình ghi log số lần xem viết 76 Hình 27: Sử dụng caching làm giảm số lần ghi xuống database 77 GVHD: - SVHT: Đỗ Thị Thanh Tuyền Hầu Nguyễn Thành Nam - Trần Quang Tín - 07520359 Lê Thanh Quang - 07520490 Hình 28: Bảng thống kê chi tiết server 79 Hình 29: Thơng tin service 80 GVHD: - SVHT: Đỗ Thị Thanh Tuyền Hầu Nguyễn Thành Nam - Trần Quang Tín - 07520359 Lê Thanh Quang - 07520490 Page Chƣơng Tổng quan cổng thông tin báo điện tử  Nội dung chương trình bày tổng quan cổng thơng tin báo điện tử, tiện ích phát triển xã hội cơng nghệ đại với internet diện rộng ngày 1.1 Tổng quan Báo điện tử loại hình báo chí đời từ kết hợp ứng dụng công nghệ thông tin truyền thơng Nếu báo in có khuyết điểm thời gian cập nhật thông tin chậm trễ phải thực in ấn, báo nói bị hạn chế minh họa hình ảnh sống động báo điện tử kết hợp tất Báo điện tử ngày nay, vừa có thơng tin, hình ảnh, đoạn phim minh họa đoạn âm truyền mạng Thông tin báo điện tử nhanh so với loại hình báo khác khó kiểm sốt dễ tạo nên tin đồn thất thiệt thông tin bị sai lệch Một đặc điểm quan trọng báo điện tử tính tương tác với người viết Báo điện tử vừa tạo giao lưu với người đọc nhiều hình thức khác nhau: giao lưu trực tuyến, bình chọn, bạn đọc góp ý 1.2 Tính đa phƣơng tiện báo điện tử Đa phương tiện thuật ngữ xuất phát từ từ “multimedia” tiếng Anh Khái niệm “đa phương tiện” xuất từ khoảng kỉ XX Cho đến nay, khái niệm dần trở nên phổ biến để nhiều loại sản phẩm, phần mềm khác máy vi tính mạng Internet Một mốc quan trọng đánh dấu xuất tính đa phương tiện báo mạng điện tử đời world wide web vào đầu năm 1990 Với khởi đầu trang web đơn giản viết ngôn ngữ siêu văn HTML (HyperText Markup Language), phát triển nhanh chóng cơng nghệ giới lập trình giúp số lượng “phương tiện” tích hợp trang web ngày đông đảo Với báo mạng điện tử, sản phẩm báo chí đa phương tiện phải bao gồm từ hai thành phần sau trở lên Đó là: văn (text), hình ảnh tĩnh đồ họa (still image & graphic), âm (audio), hình ảnh động (video & animation) gần chương trình tương tác (interactive program) GVHD: - SVHT: Đỗ Thị Thanh Tuyền Hầu Nguyễn Thành Nam - Trần Quang Tín - 07520359 Lê Thanh Quang - 07520490 Page 71  Khi thêm từ khóa khóa đưa lên đầu danh sách, kích thước danh sách lớn kích thước cấu hình phần tử cuối danh sách loại bỏ Các ứng dụng viết lại sử dụng chế trên, liệu lưu trữ khác nên cần cài đặt lại tầng caching cho phù hợp 4.2.3.2 Ứng dụng lƣu trữ viết (PostServer): Cài đặt lại tầng caching với khóa giá trị sau: Khóa: số nguyên 64 bit (mã viết) Giá trị: title: string, mainContent: string, detailContent: string, avatarImage: string, createdDate: i64, publishedDate: i64, relationPostIDs: vector, isTrash: bool, categoryID: i64 Các phương thức cung cấp cho client:  Các phương thức đọc:  get: lấy toàn thơng tin viết với khóa cho trước  exist: kiểm tra viết tồn với khóa cho trước  multiGet: tương tự get thao tác với tập khóa  multiExist: tương tự exist thao tác với tập khóa  getField: lấy phần thơng tin viết với khóa cho trước  multiGetField: tương tự getField thao tác với tập khóa  Các phương thức ghi:  put: ghi tồn thơng tin viết với khóa cho trước  remove: xóa viết với khóa cho trước  multiPut: tương tự put thao tác với tập khóa GVHD: - SVHT: Đỗ Thị Thanh Tuyền Hầu Nguyễn Thành Nam - Trần Quang Tín - 07520359 Lê Thanh Quang - 07520490 Page 72  multiRemove: tương tự remove thao tác với tập khóa  setField: ghi phần thơng tin viết với khóa cho trước 4.2.3.3 Ứng dụng lƣu trữ bình luận (CommentServer): Cài đặt lại tầng caching với khóa giá trị sau: Khóa: số nguyên 64 bit (mã bình luận) Giá trị: author: string, content: string, senddate: i64 Các phương thức cung cấp cho client:  Các phương thức đọc:  get: tồn thơng tin bình luận với khóa cho trước  exist: kiểm tra bình luận tồn với khóa cho trước  multiGet: tương tự get thao tác với tập khóa  multiExist: tương tự exist thao tác với tập khóa  Các phương thức ghi:  put: ghi tồn thơng tin bình luận với khóa cho trước  remove: xóa bình luận với khóa cho trước  multiPut: tương tự put thao tác với tập khóa  multiRemove: tương tự remove thao tác với tập khóa 4.2.3.4 Ứng dụng lƣu trữ danh sách bình luận viết (PostCommentsServer): Cài đặt lại tầng caching với khóa giá trị sau: Khóa: số nguyên 64 bit (mã viết) Giá trị: comments: vector Các phương thức cung cấp cho client: GVHD: - SVHT: Đỗ Thị Thanh Tuyền Hầu Nguyễn Thành Nam - Trần Quang Tín - 07520359 Lê Thanh Quang - 07520490 Page 73  Các phương thức đọc:  get: lấy tồn danh sách bình luận với khóa cho trước  exist: kiểm tra viết tồn với khóa cho trước  multiGet: tương tự get thao tác với tập khóa  multiExist: tương tự exist thao tác với tập khóa  getSlice: lấy phần danh sách bình luận với khóa cho trước  rgetSlice: tương tự getSlice danh sách lấy ngược lại  hasEntry: kiểm tra bình luận có tồn danh sách bình luận với khóa cho trước  getCountEntries: lấy số lượng bình luận với khóa cho trước  Các phương thức ghi:  put: ghi tồn danh sách bình luận với khóa cho trước  remove: xóa danh sách bình luận với khóa cho trước  multiPut: tương tự put thao tác với tập khóa  multiRemove: tương tự remove thao tác với tập khóa  putEntry: thêm bình luận vào danh sách với khóa cho trước  multiPutEntry: tương tự putEntry thao tác với tập khóa  removeEntry: xóa bình luận từ danh sách với khóa cho trước  multiRemoveEntry: tương tự removeEntry thao tác với tập khóa 4.2.3.5 Ứng dụng lƣu trữ danh sách viết chuyên mục (CategoryPostsServer): Cài đặt lại tầng caching với khóa giá trị sau: GVHD: - SVHT: Đỗ Thị Thanh Tuyền Hầu Nguyễn Thành Nam - Trần Quang Tín - 07520359 Lê Thanh Quang - 07520490 Page 74 Khóa: số nguyên 64 bit (mã chuyên mục) Giá trị: Entries: multi_index Ghi chú: Giá trị tập mã viết ngày xuất bản, số lượng viết chuyên mục lớn nên dùng danh sách để lưu trữ Có lựa chọn dùng bảng băm dùng cây, cần duyệt theo publishedDate muốn truy vấn nhanh mã viết cần index theo postID publishedDate Giải pháp cho việc lưu trữ dùng thư viện multi_index Boost Mã viết để truy vấn nên dùng bảng băm để index, ngày xuất cần xếp nên dùng để index Các phương thức cung cấp cho client:  Các phương thức đọc:  get: lấy toàn danh sách viết với khóa cho trước  exist: kiểm tra chuyên mục tồn với khóa cho trước  multiGet: tương tự get thao tác với tập khóa  multiExist: tương tự exist thao tác với tập khóa  getSlice: lấy phần danh sách viết với khóa cho trước  rgetSlice: tương tự getSlice danh sách lấy ngược lại  getSliceFrom: lấy phần danh sách từ publishedDate cho trước  rgetSliceFrom: tương tự getSliceFrom danh sách lấy ngược lại  hasEntry: kiểm tra viết có tồn danh sách viết với khóa cho trước  getCountEntries: lấy số lượng viết với khóa cho trước  Các phương thức ghi: GVHD: - SVHT: Đỗ Thị Thanh Tuyền Hầu Nguyễn Thành Nam - Trần Quang Tín - 07520359 Lê Thanh Quang - 07520490 Page 75  put: ghi tồn danh sách viết với khóa cho trước  remove: xóa danh sách viết với khóa cho trước  multiPut: tương tự put thao tác với tập khóa  multiRemove: tương tự remove thao tác với tập khóa  putEntry: thêm viết vào danh sách với khóa cho trước  multiPutEntry: tương tự putEntry thao tác với tập khóa  removeEntry: xóa viết từ danh sách với khóa cho trước  multiRemoveEntry: tương tự removeEntry thao tác với tập khóa Vấn đề giải pháp Truy xuất trực tiếp vào database liên tục cho tốc độ chậm dẫn đến làm chậm trình tải trang Giải pháp: - Ở server application cài đặt tầng caching, sử dụng Poco LRU Cache để lưu trữ, áp dụng chiến lượt LRU (Least Recently Used) để tiết kiệm memory - LRU: Những key dùng gần lưu trữ memory - Tất liệu trang dành cho đọc giả truy suất trực tiếp xuống database caching memcached Nếu có nhiều lệnh ghi vào server application lúc khiến cho hệ thống bị lock ảnh hưởng đến trình tải trang Giải pháp: - Ở server application cài đặt Queuing Proxy, tất lệnh ghi ghi vào queue có luồng lấy từ queue ghi vào hệ thống 4.3 GVHD: - SVHT: Đỗ Thị Thanh Tuyền Hầu Nguyễn Thành Nam - Trần Quang Tín - 07520359 Lê Thanh Quang - 07520490 Page 76 Khi xem viết hệ thống ghi trực tiếp log vào database để hỗ trợ cho việc thống kê số lượt xem, có nhiều đọc giả vào xem thời điểm xảy số trường hợp sau:  Làm trễ trình phản hồi cho người dùng  Ghi log nhiều đồng thời xuống Mysql làm giảm hiệu suất hệ thống Giải pháp: Cài đặt tầng caching web server để giảm số lượng lệnh ghi xuống database, sử dụng bảng băm với khóa mã viết, giá trị số lần view viết đó, lần người dùng xem viết cập nhật lại giá trị tương ứng với khóa mã viết Xây dựng luồng ghi khóa xuống database Việc giảm đáng kể số lần ghi xuống database Q trình ghi log mơ tả sau: - Storage Server Transport layer Model layer HTTP Server Web Server Model View Request Write log Mysql Database Hình 26: Quá trình ghi log số lần xem viết - GVHD: - Áp dụng giải pháp tầng model, mơ tả hình sau: SVHT: Đỗ Thị Thanh Tuyền Hầu Nguyễn Thành Nam - Trần Quang Tín - 07520359 Lê Thanh Quang - 07520490 Page 77 HTTP Server Model HashMap Write Log Worker Hình 27: Sử dụng caching làm giảm số lần ghi xuống database Trước áp dụng giải pháp trên: tải trang xem chi tiết tin giây Sau áp dụng: tải trang xem chi tiết tin khoảng 50 mili giây Triển khai ứng dụng 4.4.1 Hƣớng dẫn biên dịch hệ thống: Vì hệ thống backend xây dựng mơi trường Linux nên biên dịch chạy môi trường linux, ví dụ: Ubuntu, Centos, … Hệ thống hỗ trợ 32bit 64bit Hệ thống frontend viết Java nên chạy hệ điều hành có JVM Hệ thống backend có số thư viện mã nguồn mở down từ trang chủ biên dịch thành static lib để hỗ trợ cho server application Cấu trúc thư mục source sau: source codes be_systems: svn_boost: thư viện mã nguồn mở boost svn_poco: thư viện mã nguồn mở poco svn_event: thư viện mã nguồn mở libevent svn_rpc: thư viện mã nguồn thrift svn_client: ứng dụng dùng để monitor service svn_jemalloc: thư viện mã nguồn mở jemalloc svn_memcached: ứng dụng memcached 4.4 GVHD: - SVHT: Đỗ Thị Thanh Tuyền Hầu Nguyễn Thành Nam - Trần Quang Tín - 07520359 Lê Thanh Quang - 07520490 Page 78 - svn_tcommonlib: thư viện hỗ trợ cho server application svn_CommentServer: service lưu trữ bình luận svn_PostServer: service lưu trữ viết svn_PostCommentsServer: service lưu trữ bình luận cho viết svn_CategoryPostsServer: service lưu trữ viết cho chuyên mục fe_systems: newsnetwork: project front end sử dụng struts framework web_servers: newsnetwork.jetty: jetty web server dùng để chạy hệ thống front end 4.4.1.1 Biên dịch hệ thống backend: Vào thư mục be_systems chạy file build.cmd (mode release) build.cmd (mode debug) Trong q trình build có báo thiếu thư viện vào command line gõ apt-get install để cài đặt sau tiến hành build lại Sau build thành công vào thư mục sau để kiểm tra có file thực thi nghĩa build thành công: svn_PostServer/bin, svn_CommentServer/bin, svn_CategoryPostsServer/bin, svn_PostCommentsServer/bin, svn_client/bin Vào thư mục svn_memcached để build memcached (Memcached phần mềm mã nguồn mở nỗi tiếng nên tìm hướng dẫn cài đặt cấu hình trang chủ) 4.4.1.2 Biên dịch hệ thống frontend: Hệ thống front end xây dựng java sử dụng struts2 framework nên build mơi trường có hỗ trợ java Hệ thống xây dựng môi trường linux nên script build viết sẵn chạy linux, windows phải build tay dùng apache ant Ở môi trường linux, vào thư mục fe_systems chạy file build.sh, yêu cầu linux phải có apache ant Sau build thành cơng tự động deploy sang thư mục web server 4.4.2 Hƣớng dẫn chạy hệ thống: 4.4.2.1 Chạy hệ thống backend: Sau build file thực thi, chép file tương ứng kèm với file properties lên server cần chạy Ví dụ deploy service CommentServer lên server 192.168.1.102, chép file thực thi properties lên thư mục /servers/bin gõ lệnh sau: GVHD: - SVHT: Đỗ Thị Thanh Tuyền Hầu Nguyễn Thành Nam - Trần Quang Tín - 07520359 Lê Thanh Quang - 07520490 Page 79 /servers/bin/commentserver –daemon Tương tự service lại 4.4.2.2 Chạy hệ thống frontend: Vào thư mục web_servers/newsnetwork.jetty gõ lệnh sau: Java –jar start.jar 4.4.3 Hƣớng dẫn theo dõi hệ thống backend: Để theo dõi tần suất hoạt động service khả chịu tải, vào thư mục be_system/svn_client/client gõ lệnh sau: bin/client –h để xem hướng dẫn Một số option chọn sau: -h help: in hướng dẫn -C conn: chọn thơng tin connection có sẵn file properties -H host: địa ip service -P port: port config service -T interval: thời gian chờ in bảng thống kê -I info: xem thông tin service -a api: xem thống kê api -A listapi: liệt kê danh sách api Ví dụ: Service Post có IP: 192.168.1.102, Port: 8050 bin/client –H=192.168.1.102 –P=8050 –a Sau gõ lệnh in console sau: Hình 28: Bảng thống kê chi tiết server Chú thích bảng thống kê: Name: Tên API gọi TotalReq: Tổng số lần gọi hàm GVHD: - SVHT: Đỗ Thị Thanh Tuyền Hầu Nguyễn Thành Nam - Trần Quang Tín - 07520359 Lê Thanh Quang - 07520490 Page 80 PendingReq: Số lần gọi hàm chờ xử lý TotalTmProc: Tổng thời gian xử lý LastTmProc: Thời gian xử lý cuối ProcRate: Số lần gọi giây ReqRate: Tổng số request vào server giây thời điểm Xem thông tin service: bin/client –H=192.168.1.102 –P=8050 –i Hình 29: Thơng tin service Chú thích bảng thông tin: Server address: IP Port service Name: Tên service Description: thích service Version: Version service R-ConnInfo: Port read service W-ConnInfo: Port write service GVHD: - SVHT: Đỗ Thị Thanh Tuyền Hầu Nguyễn Thành Nam - Trần Quang Tín - 07520359 Lê Thanh Quang - 07520490 Page 81 State: Trạng thái service Readable: Service read Writable: Service write Queuing: kích thược Queuing Proxy SSRead: Các hệ thống lưu trữ service read (Ở có hệ thống Caching Database) SSWrite: Các hệ thống lưu trữ service write (Ở có hệ thống Caching Database) Dbhitcount: Số lần hit vào database 4.5 Dequeseq: Số notification lấy khỏi queue để xử lý Enqueseq: Số notification đưa vào queue chờ xử lý Tablesize: Kích thước table caching Kết đo đạt hệ thống 4.5.1 Đo đạt hệ thống lƣu trữ Môi trường: Core i7 (8 nhân) 6G ram Hệ điều hành Ubuntu 11.04 Trường hợp: Ghi 100000 viết đọc 100000 viết từ hệ thống tự phát triển (PostServer) từ Memcached Phần mềm đo đạt hệ thống lưu trữ chạy máy Phần mềm: GVHD: - SVHT: Đỗ Thị Thanh Tuyền Hầu Nguyễn Thành Nam - Trần Quang Tín - 07520359 Lê Thanh Quang - 07520490 Page 82 Phần mềm đo đạt viết Java chạy môi trường JDK 1.6.0_27 Thư viện kết nối PostServer: Apache Thrift Thư viện kết nối Memcached: SpyMemcached (Nguồn: http://code.google.com/p/spymemcached/) Kết quả: PostServer: Khả đọc: 12500 lệnh/giây Khả ghi: 26000 lệnh/giây Memcached: Khả đọc: 6000 lệnh/giây Khả ghi: 24000 lệnh/giây 4.5.2 Đo đạt từ phía ngƣời dùng Mơi trường người dùng: Core i5 (4 nhân) 4G ram Hệ điều hành Ubuntu 11.04 Trường hợp: Server cài máy ảo để chạy hệ thống lưu trữ cài đặt trực tiếp web server vào máy Người dùng từ máy khác duyệt web Phần mềm: Trình duyệt firefox Firebug (để đo thời gian nạp trang) GVHD: - SVHT: Đỗ Thị Thanh Tuyền Hầu Nguyễn Thành Nam - Trần Quang Tín - 07520359 Lê Thanh Quang - 07520490 Page 83 Đo đạt thời gian nạp trang hệ thống: Hệ thống ứng dụng kỹ thuật phân tán: Thời gian nạp trang chủ: 100 mili giây Thời gian nạp trang chuyên mục: 45 mili giây Thời gian nạp trang xem tin: 80 mili giây Hệ thống không ứng dụng kỹ thuật phân tán: Thời gian nạp trang chủ: giây Thời gian nạp trang chuyên mục: 700 mili giây Thời gian nạp trang xem tin: 1.2 giây GVHD: - SVHT: Đỗ Thị Thanh Tuyền Hầu Nguyễn Thành Nam - Trần Quang Tín - 07520359 Lê Thanh Quang - 07520490 Page 84 Chƣơng Kết luận phát triển  Nội dung chương trình bày kết luận đề tài hướng phát triển tương lai để hồn thiện 5.1 Kết luận Chương trình viết đảm bảo cho tất nghiệp vụ trang báo điện tử bao gồm chức cho phần quản lý sau: quản trị, chủ biên, phóng viên, người duyệt bình luận, người duyệt quảng cáo, khách hàng Đảm bảo tốc độ chịu tải cao Xử lý nhiều request lúc Do thời gian giới hạn nên việc nên nhiều kỹ thuật chưa sử luận văn Load Balancing, nhiều chức lưu trữ database chưa xử lý phân tán 5.2 Phát triển Dự định nâng cấp chức năng, nâng cấp giao diện để phù hợp với yêu cầu thực tế thay đổi Tiến sâu phân tích áp dụng kỹ thuật sở liệu phân tán GVHD: - SVHT: Đỗ Thị Thanh Tuyền Hầu Nguyễn Thành Nam - Trần Quang Tín - 07520359 Lê Thanh Quang - 07520490 Page 85 TÀI LIỆU THAM KHẢO Tiếng việt: [1] Một số tài liệu tìm kiếm www.google.com tham khảo www.vnexpress.net cho số thông tin báo điện tử [2] Slide giảng J2EE, TS Huỳnh Ngọc Tín, Giảng viên ĐH Cơng Nghệ Thơng Tin Tiếng anh: [3] J2EE Tutorials, Stephanie Bodoff, Dale Green, Kim Haase, Eric Jendrock, Monica Pawlan, Beth Stearns Publish 2002 [4] Core J2EE™ Patterns, Grady Booch [5] Research Berkeley Database at: http://www.oracle.com/technetwork/database/berkeleydb/overview/index.html [6] Struts Tutorial at page: http://struts.apache.org/ [7] Slide "Scaling PHP Applications with Zend Platform" by Product Manager, Zend Technologies [8] Distributed System Proramming reseach at: Memcached: http://memcached.org Apache Thrift: http://thrift.apache.org Poco Library: http://pocoproject.org Boost Library: http://www.boost.org Some article on http://highscalability.com GVHD: - SVHT: Đỗ Thị Thanh Tuyền Hầu Nguyễn Thành Nam - Trần Quang Tín - 07520359 Lê Thanh Quang - 07520490 ... thông tin từ báo phương tiện truyền thông Luận văn cung cấp cổng thông tin báo điện tử với đầy đủ chức từ quản lý đọc giả Đồng thời cung cấp hệ thống chịu tải cao việc sử dụng kỹ thuật phân tán. .. quan cổng thông tin báo điện tử 1.1 Tổng quan 1.2 Tính đa phương tiện báo điện tử Chương Kỹ thuật phân tán 2.1 Khái quát 2.2 Giới thiệu hệ phân. .. mạng Thông tin báo điện tử nhanh so với loại hình báo khác khó kiểm sốt dễ tạo nên tin đồn thất thiệt thông tin bị sai lệch Một đặc điểm quan trọng báo điện tử tính tương tác với người viết Báo điện

Ngày đăng: 23/12/2018, 06:18

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w