CHƯƠNG 3- ỨNG DỤNG JOO XÂY DỰNG HỆ THỐNG BKPROFILE

Một phần của tài liệu xây dựng framework joo lập trình ứng dụng ria xây dựng thành phần quản lý luồng diễn tiến ứng dụng (Trang 44 - 48)

BKProfile là mạng chia sẻ tri thức cộng đồng Việt Nam. BKProfile hướng tới mục tiêu:

• Trở thành một mạng lưới chia sẻ tri thức tin cậy giữa cộng đồng sinh viên, cựu sinh viên và giảng viên.

• Trở thành cầu nối tin cậy giữa sinh viên - nhà trường - doanh nghiệp.

BKProfile lưu trữ thông tin hồ sơ của các thành viên, cùng với các câu hỏi - câu trả lời, dựa vào các bình chọn để xếp hạng đánh giá điểm chuyên gia của các thành viên theo từng lĩnh vực.

Hệ thống BKProfile được phát triển từ năm 2009, dưới sự hướng dẫn của thầy Huỳnh Quyết Thắng và thầy Lê Quốc, viện Công nghệ thông tin và truyền thông. Trước đây, BKProfile được xây dựng trên nền Zend Framework, sử dụng PHP là chủ yếu. Tuy nhiên khi chuẩn bị ra mắt các bạn sinh viên, nhóm nhận thấy việc Zend Framework không hoàn toàn hiệu quả khi phục vụ một số lượng người dùng đông. Do đó, nhóm đã tiến hành phát triển JOO Framework và ứng dụng vào ngay BKProfile. Hiện tại hệ thống đã có 900 người dùng với một tốc độ chạy khá nhanh theo nhận xét của nhiều người dùng.

3.2. Vai trò của JOO framework trong việc xây dựng hệ thống

BKProfile

Ban đầu hệ thống BKProfile được xây dựng trên nền Zend Framework, với tất cả thao tác xử lý nằm ở phía máy chủ.

Sau khi hoàn thiện JOO, nhóm đã thiết kế lại kiến trúc hệ thống, tận dụng các thành phần có sẵn trên máy chủ, biến đổi thành kiến trúc dịch vụ và sử dụng JOO để xây dựng ứng dụng dưới client.

Dưới đây là biểu đồ thành phần trong thiết kế của BKProfile khi sử dụng Joo framework:

Nội dung chương 3:

• Giới thiệu sơ lược hệ thống BKProfile.

• Vai trò của Joo framework trong việc xây dựng BKProfile.

Hình 20 – Kiến trúc thành phần hệ thống BKProfile

Như sơ đồ trên, phần máy chủ của BKProfile được xây dựng trên nền PHP (Zend Framework, với kiến trúc MVC và dựa trên JSON nên không có thành phần View).

Còn Joo Framework được ứng dụng phía máy khách, được chạy trên trình duyệt, là nền tảng để thực thi các portlet, plugin của hệ thống BKProfile (Trong BKProfile có khoảng vài chục portlet và plugin).

BKProfile tận dụng được khá nhiều kiến trúc thành phần Application, như cơ chế sự kiện, kiến trúc plugin lỏng lẻo, khả năng dễ dàng cấu hình… Đặc biệt là tốc độ rất nhanh của ứng dụng một trang (Single Page Application). Ở phần 3.3 sẽ trình bày rõ hơn hiệu quả thông qua các con số thực tế. Hình dưới là giao diện của hệ thống BKProfile

Hình 21 – Giao diện hệ thống BKProfile (www.bkprofile.com)

3.3. Đánh giá JOO framework qua thực tiễn

Như phân tích ở phần 3.2, JOO đã được triển khai trên hệ thống BKProfile, và thực nghiệm đã chứng minh ưu điểm nổi trội của JOO so với hệ thống trước, cụ thể thông qua các số liệu sau:

• Dữ liệu truyền gửi giữa máy chủ và máy khách nhỏ: trung bình khoảng 65KB cho trang chủ với khá nhiều nội dung trong điều kiện trình duyệt đã cache lại ứng dụng ở lần truy cập đầu tiên (khoảng 1.6MB). Trong đó phần dung lượng dành cho câu hỏi (phần trọng tâm của hệ thống) vào khoảng 50KB.

• Thời gian tải trang nhanh hơn. Hình 6 so sánh tốc độ tải trang giữa hệ thống khi dùng Zend Framework so với tốc độ tải trang khi dùng JOO. Việc thử nghiệm được tiến hành trên hệ điều hành Windows 7 ở 2 máy tính cá nhân có cấu hình tương đương và sử dụng trình duyệt Chrome phiên bản 11, được chạy 10 lần ngẫu nhiên trong cùng một thời điểm.

Zend Framework JOO framework 3.3 s 495 ms 3.6 s 447 ms 3.2 s 374 ms 4.0 s 410 ms 3.3 s 394 ms 3.9 s 505 ms 4.1 s 441 ms 3.7 s 423 ms 5.8 s 412 ms 4.3 s 420 ms Trung bình: 3.92s Trung bình: 432 ms

Bảng 1 – So sánh tốc độ tải trang trung bình của ứng dụng web khi xây dựng bằng Zend Framework & khi xây dựng bằng Joo framework

• Thời gian phát triển ứng dụng khá nhỏ (từ lúc bắt đầu đến lúc ra mắt phiên bản Alpha tại Hội nghị học tốt 2011 là khoảng 2 tuần).

• Hệ thống hiện đang chạy ổn định trên trang web www.bkprofile.com sau gần 2 tháng ra mắt.

3.4. Kết chương

Như vậy, qua thực tiễn triển khai Joo Framework trên hệ thống BKProfile, ta đã thấy được một phần khả năng cũng như tính hiệu quả của Joo Framework, đặc biệt là thành phần Application. Ngoài những đánh giá mang tính chủ quan, nhờ việc triển khai thực tế, ta còn thấy được tính đúng đắn của các đánh giá đó thông qua các số liệu cụ thể như tốc độ tải trang, tốc độ chuyển trang, dung lượng truyền tải.

CHƯƠNG 4 - KẾT LUẬN VÀ ĐÁNH GIÁ

Một phần của tài liệu xây dựng framework joo lập trình ứng dụng ria xây dựng thành phần quản lý luồng diễn tiến ứng dụng (Trang 44 - 48)