Để xây dựng Web thường sử dụng hai loại web service: SOAP hoặc RESTful. Trong bài báo này chúng tôi nghiên cứu kiến trúc mobile web service, sau đó tích hợp RESFul web service, xây dựng hệ thống web quảng bá khoa Công Nghệ Thông Tin trên điện thoại Android
Lương Thị Thảo Hiếu Đtg Tạp chí KHOA HỌC & CƠNG NGHỆ 185(09): 45 - 50 TÍCH HỢP RESTFUL WEB SERVICE TRÊN NỀN TẢNG DI ĐỘNG XÂY DỰNG HỆ THỐNG WEB KHOA CÔNG NGHỆ THÔNG TIN TRÊN ĐIỆN THOẠI ANDROID Lương Thị Thảo Hiếu*, Lê Thanh Của, Đào Phương Anh Trường Đại học Kinh tế - Kỹ thuật Công nghiệp TÓM TẮT Ngày thiết bị di động, đặc biệt thiết bị sử dụng Android sử dụng thiết bị tiêu thụ Web Tuy nhiên sử dụng di động để duyệt Web gặp nhiều vấn đề: ràng buộc tài nguyên, hình nhỏ, dung lượng nhớ thấp, sử dụng kết nối không dây Vậy lấy liệu nào, lưu trữ, biểu diễn sao, xây dựng hệ thống truyền tải thông tin đến người dùng vấn đề phức tạp khó khăn q trình thực thi Để xây dựng Web thường sử dụng hai loại web service: SOAP RESTful Trong báo nghiên cứu kiến trúc mobile web service, sau tích hợp RESFul web service, xây dựng hệ thống web quảng bá khoa Cơng Nghệ Thơng Tin điện thoại Android Từ khóa: ANDROID; dịch vụ web di động; RESTful; JSON MỞ ĐẦU* Các thiết bị di động (điện thoại thông minh thiết bị cầm tay) xem thiết bị hạn chế tài nguyên không phù hợp để sử dụng dịch vụ internet Các nhà thiết kế di động tập trung mở rộng nâng cấp phần cứng:tăng dung lượng nhớ, tăng cường khả tính tốn, đồng thời cải thiện hiệu suất ứng dụng di động Sự tách biệt giao diện người dùng dịch vụ logic cung cấp Web Service hội mang lại dịch vụ internet cho thiết bị di động Các ứng dụng chạy thiết bị di động, thơng qua Web Service, thích nghi với khả hạn chế thiết bị Hình Web service cho ứng dụng đa lớp Để tích hợp công nghệ Web Service vào thiết bị di động tạo thành kiến trúc Mobile Web Service tối ưu, đáp ứng nhu cầu người * Tel: 0942 160880, Email: ltthieu@uneti.edu.vn sử dụng, cần quan tâm đến tính chặt chẽ thiết bị hệ thống truyền thông di động Về bản, Web Service chia thành hai loại chính: RESTful SOAP based Web Service [1] Sự phân chia dựa kiểu kiến trúc sử dụng để thực công nghệ SOAP viết tắt Simple Object Access Protocol- giao thức truy cập đối tượng đơn giản- công nghệ hướng đối tượng, định nghĩa giao thức dùng để trao đổi thông điệp dựa XML Năm 2000 Fieding cho đời nguyên lý REST REST-Representational State Transfer - công nghệ hướng tài nguyên, chứa tập chuẩn thiết kế, định nghĩa cách thức đặc biệt sử dụng chuẩn web HTTP URI REST trở thành công nghệ thực thi phổ biến để phát triển Web Service REST triển khai độc lập, đơn giản, gọn nhẹ, khả tương tác cao gần thay SOAP Trong báo giới thiệu số khái niệm Web Service, so sánh XML với JSON, so sánh hai công nghệ thiết kế Web Service: SOAP based RESTful Nghiên cứu, lựa chọn kiến trúc mobile web service, đề xuất mơ hình hệ thống, mơ hình ứng dụng xây dựng hệ thống web quảng cáo khoa Công Nghệ Thông Tin (CNTT) tảng Android, phục vụ nhu cầu tra cứu thông tin sinh viên, thông tin 45 Lương Thị Thảo Hiếu Đtg Tạp chí KHOA HỌC & CÔNG NGHỆ tuyển sinh, quảng cáo khoa CNTT, lịch cá nhân giảng viên, MỘT SỐ KHÁI NIỆM Khái niệm 2.1 Web service (dịch vụ web) phương thức trao đổi hai hay nhiều thiết bị điện tử môi trường Word Wide Web Dịch vụ web “là hệ thống phần mềm thiết kế để hỗ trợ giao tiếp máy với máy mạng”, cung cấp thơng tin thơ, khó hiểu với người dùng, sử dụng tầng ứng dụng Các ứng dụng chế biến liệu thô trước trả cho người dùng cuối Các hệ thống khác giao tiếp với Web Service cách sử dụng tín hiệu SOAP, kết hợp với HTTP XML JSON Web Service tảng trung gian thường dạng text, phát triển, chạy truy cập dựa công nghệ phức tạp Phân loại theo cách sử dụng: Web service sử dụng máy chủ cố định tiêu thụ máy trạm gọi Station Web Service, dịch vụ tiêu thụ thiết bị mobile gọi Mobile Web Service Mobile Web Service triển khai thiết bị di động qua môi trường mạng không dây giải thách thức lớn hạn chế tài nguyên đặc tính truy cập băng thơng khơng dây Những thách thức tổng kết lại sau: Hạn chế tài nguyên: Hạn chế hình hiển thị Kết nối gián đoạn: Các thiết bị di động thường xuyên thay đổi thao tác thực mạng kết dịch vụ trở nên tạm thời không tiếp cận Điều đặt thách thức lớn cho việc cung cấp dịch vụ web tin cậy môi trường mạng không dây thay đổi liên tục 185(09): 45 - 50 Hình Tổng quan Web service Khái niệm 2.2 JSON (Java Script Object Notation) [3] Trước đây, XML sử dụng rộng rãi cho việc truyền liệu web service Tuy nhiên sử dụng XML để tải trọng liệu xảy vấn đề sau: biểu diễn XML nặng xử lý Việc sử dụng thẻ TAG đóng mở q nhiều, khơng cần thiết, làm nặng q trình tải nạp trang XML khó phân tích cú pháp Để phân tích tài liệu XML sử dụng hai cách chính: DOM (Document Object Model) SAX (Simple API for XML), nhiên mobile sử dụng DOM SAX khơng thuận tiện hai phương pháp sử dụng tính tốn cần nhiều nhớ Trong năm gần đây, định dạng trao đổi liệu khác đưa vào sử dụng phổ biến, JSON (Java Script Object Notation) JSON có đặc tính nhẹ, sử dụng text để mô tả, trao đổi liệu độc lập ngôn ngữ JSON định nghĩa tập hợp luật có cấu trúc cho việc biểu diễn liệu di động Tương tự XML, JSON chuẩn mở sử dụng text-based để biểu diễn liệu sử dụng kí tự cặp ngoặc"[{]}", dấu ":" dấu ",” Dữ liệu biểu diễn sử dụng cặp key/value Tính địa chỉ: Thiết bị di động thay đổi điểm gắn kết vào mạng chúng định vị lại Khả mở rộng: Mobile Web Service khơng thực tốt trường hợp có tương tranh truy cập dịch vụ web Tài nguyên không đồng nhất: Việc cung cấp dịch vụ web mobile thực độc lập xuyên suốt vấn đề phức tạp 46 Hình Định dạng JSON Lương Thị Thảo Hiếu Đtg Tạp chí KHOA HỌC & CÔNG NGHỆ Cấu trúc JSON: định dạng thông điệp trộn lẫn, chứa nhiều cấu trúc liệu khác như: integer, objects, boolean Hình Định dạng XML Qua hai hình cho thấy định dạng liệu JSON có chiều dài nội dung nhỏ 28.5% so với XML Lý sai khác lặp lại nội dung mơ tả XML, ví dụ cần thêm byte để mô tả từ “Germany” Điều gây tiêu tốn nhớ, tăng thời gian xử lý, dĩ nhiên không phù hợp với thiết bị di động hạn chế tài nguyên Khái niệm 2.3 Web service tuân thủ kiến trúc SOAP giao thức SOAP gọi SOAP Based Web Service Web service xây dựng nguyên lý REST gọi Restful Web Service So sánh hai công nghệ sau: SOAP based: Được thiết kế để thực tương tác với hệ thống từ xa Trong thiết kế nhà cung cấp dịch vụ khách hàng cần thiết lập hiểu biết chung cú pháp dịch vụ thao tác thực Mỗi web service soap based có giao diện riêng mơ tả Web Services Description Language (WSDL) Sử dụng XML để truyền thông điệp Điểm mạnh giao thức truyền thông điệp có khả làm việc mơi trường không đồng độc lập thiết bị Tuy nhiên tồn số hạn chế: Phức tạp: Để triển khai dịch vụ SOAPbased cần nhiều kinh nghiệm độ phức tạp giao thức Thêm vào yêu cầu viết ngôn ngữ tự nhiên gây thời gian, không phù hợp với hạn chế tài nguyên thiết bị di động 185(09): 45 - 50 Khả truy cập, giao diện hạn chế Khả tương tác kém: Mỗi web service có giao diện riêng REST based: RESTful Web Service (RESTful web API) web API sử dụng HTTP xây dựng kiến trúc REST Restful web service thu hút quan tâm từ cộng đồng web đơn giản, linh hoạt khả tương tác cao Các dịch vụ thiết kế theo hướng khai thác tài nguyên web qua địa URI Người dùng truy cập tài nguyên thông qua URI Hướng tiếp cận phù hợp với thiết bị di động, tách biệt giao diện người dùng với lưu trữ liệu đồng thời cải tiến linh hoạt giao diện tảng khác đơn giản hóa thành phần server cách chuyển chúng thành phi trạng thái RESTful Web Service nhẹ, dễ mở rộng bảo trì, đưa tài nguyên thống qua URI sử dụng phương thức HTTP để tạo, khơi phục, cập nhật, xóa tài ngun [4] Một số lợi ích cơng nghệ sau: Tính tương tác: RESTful kế thừa tính tương tác HTTP Tính định địa chỉ: Mỗi nguồn tài nguyên có địa URI người dùng lấy thơng qua kết nối tài nguyên Phi trạng thái: Những yêu cầu tiếp cận RESTful độc lập Bảng So sánh SOAP-based REST-based Đặc tính Kiến trúc Giao thức Mơ tả Mơ hình liệu Biểu diễn liệu An toàn SOAP based Hướng dịch vụ Bất kỳ WSDL Ẩn XML Dựa dịch vụ web REST based Hướng tài nguyên HTTP Không theo chuẩn Hiện XML, JSON Dựa HTTP Giao diện nhất: Hai máy khách HTTP giao tiếp trực tiếp với mà khơng cần cấu hình đặc biệt Trái lại 47 Lương Thị Thảo Hiếu Đtg Tạp chí KHOA HỌC & CÔNG NGHỆ SOAP cần hai bên server client phải đồng ý thống chung số phương thức, kiểu liệu mơ hình định địa KIẾN TRÚC MOBILE WEB SERVICE [2] Kiến trúc Proxy-based Đây kiến trúc dễ tiếp cận nhất, tránh nhiều thách thức việc đối mặt với thực thi web service điều kiện ràng buộc tài nguyên Proxy thường máy high-end gắn cố định với mạng Từ lý thuyết có băng thông không giới hạn để giảm thiểu việc sử dụng băng thông thiết bị di động, đủ lực xử lý để giảm tải thiết bị hạn chế tài nguyên thực trình sử dụng tài nguyên chuyên sâu Hình Kiến trúc proxy-based Đồng thời phục vụ di động trường hợp ngắt kết nối đáp ứng nhu cầu truy cập cao trì độ trễ hợp lý Trong kiến trúc chứa thiết bị mobile hosting Web service kết nối với máy high-end đóng vai trị proxy Proxy biểu diễn điểm cuối web service tới máy khách Kiến trúc giải nhiều vấn đề thách thức liên quan đến mobile web service, ví dụ: Proxy có khả lưu trữ lớn, phục vụ lượng lớn máy client liên tục Nó giải tính khơng đồng thiết bị di động khác Hình Kiến trúc P2P 48 185(09): 45 - 50 Kiến trúc P2P Đây kiến trúc phân tán Kiến trúc dựa chế quảng cáo mạng P2P-Peer to peerđể xuất khai thác web service Cơ chế quản lý tính di động node, quản lý vị trí ràng buộc thơng tin web service Kiến trúc bất đối xứng Kiến trúc thiết kế đặc biệt với mục đích tương tác dịch vụ mobile có chu kỳ sống dài, cho phép dịch vụ chạy không đồng độc lập.Trong kiến trúc client yêu cầu dịch vụ chờ phản hồi mà khơng khóa thiết bị suốt thời gian thực Hình Kiến trúc bất đối xứng XÂY DỰNG HỆ THỐNG WEB KHOA CÔNG NGHỆ THÔNG TIN TRÊN NỀN TẢNG ANDROID Xây dựng hệ thống Xuất phát từ nhu cầu thực tế trường Đại học Kinh tế Kỹ thuật Cơng nghiệp trì hệ thống website, lưu trữ thông tin trường, thông tin tuyển sinh, thông tin sinh viên… Vào thời kỳ cao điểm sinh viên cần xem lịch thi, xem điểm, lượng truy cập trang web đông gây tải Ý tưởng: Xây dựng hệ thống web điện thoai di động, song song với web trường Trong kiến trúc mobile web service trình bày trên, lựa chọn kiến trúc proxybased, đưa vào xây dựng hệ thống mobile web phù hợp với trạng sở vật chất khoa CNTT Đề xuất giải pháp tích hợp module Restful web service kiến trúc proxy-based, nhận tham số từ thiết bị di động, thực yêu cầu dịch vụ trả kết cho thiết bị di động dạng liệu JSON, Lương Thị Thảo Hiếu Đtg Tạp chí KHOA HỌC & CÔNG NGHỆ 185(09): 45 - 50 loại bỏ trình xử lý XML nặng thiết bị di động, hệ thống đảm bảo yêu cầu truy cập thông tin liên tục điều kiện số lượng người truy cập lớn Hệ thống sử dụng lập trình android studio 2.3 triển khai phía client, phía server tích hợp module RESTful web service, module lấy thông tin từ web nhà trường, lưu sở liệu vào máy chủ đặt khoa CNTT Thực nghiệm kết Chúng tơi xây dựng hồn chỉnh hệ thống web khoa CNTT điện thoại android với số chức sau: Giới thiệu trường, khoa, thông tin tuyển sinh, định vị ví trí kết hợp đường, tìm khoảng cách ngắn từ vị trí đến trường Hệ thống có thêm chức tra cứu thơng tin sinh viên, chức hỗ trợ sinh viên.phụ huynh biết điểm, tình trạng học tập em trường Database Server UNETI RESTful Web Service HTTPS JSON Data Moblie Client Hình Mơ hình hệ thống Người dùng sử dụng thiết bị android, thực kết nối không dây truy cập đến máy chủ đặt khoa CNTT, máy chủ tích hợp module RESTful web service lấy thông tin trực tiếp từ web site nhà trường Việc sử dụng máy chủ với cấu hình cao, khả lưu trữ lớn, phục vụ lượng lớn người dùng truy cập web nhanh hiệu quả, liệu cập nhật liên tục So sánh thực hệ thống web di động tích hợp Restful Web Service với hệ thống sử dụng SOAP, dựa thang đo thời gian tính từ yêu cầu đến liệu phản hồi gọi tắt “thời gian đáp ứng” kích thước tệp tải cho kết sau: Hình Thời gian đáp ứng REST/SOAP Hình 10 Kích thước file tải REST/SOAP 49 Lương Thị Thảo Hiếu Đtg Tạp chí KHOA HỌC & CÔNG NGHỆ 185(09): 45 - 50 Đồ thị cho thấy sử dụng mobile để truy cập liệu, với yêu cầu lượng liệu nhau, REST cần thời gian để phản hồi liệu SOAP Điều có nghĩa hệ thống sử dụng REST phản hồi thông tin nhanh SOAP Đồng thời tải lượng ghi từ sở liệu, REST trả file có kích thước file nhỏ SOAP, điều làm giảm khơng gian lưu trữ hồn tồn phù hợp thiết bị di động Hiện tại, khung mạng di động đề xuất xây dựng số chức chính: Giới thiệu trường, khoa, tra cứu thông tin sinh viên, thơng tin đào tạo bật, tìm đường thực tảng thiết bị andoid Trong tương lai chúng tơi tích hợp số module ứng dụng khác: trao đổi thông tin trực tuyến, thực gọi… triển khai đa tảng KẾT LUẬN COBÂRZAN,A (2010) "Consuming Web Services on Mobile Platforms" Informatica Economică, vol 14,pp 98-105 Ei Ei Thu, T N (2015) "Developing Mobile Application Framework By Using RESTFul Web Service with JSON Parser" Conference: The Ninth International Conference on Genetic and Evolutionary Computing, ICGEC_2015At: Myanmar, pp 1-7 Murtaza, S (2011) "Implementation and Evaluation of a JSON Binding for Mobile Web Services with IMS Integration Support" XR-EELCN, pp 1-55 Khalid Elgazzar, P M (2014) "Mobile Web Services: State of the Art and Challenges" International Journal of Advanced Computer Science and Applications, pp 1-16 Qua nghiên cứu kiến trúc mobile web service, vấn đề xử lý liệu điều kiện ràng buộc tài nguyên, đề xuất mơ hình hệ thống, tích hợp module Restful Web Service phía server, kết hợp xử lý liệu JSON phía client, xây dựng hồn chỉnh ứng dụng web thông tin môi trường thiết bị android với lợi ích sau: hệ thống truy cập thơng tin nhanh, giảm không gian lưu trữ, tiện lợi: biết đầy đủ thông tin khoa, trường, thông tin sinh viên, thông tin tuyển sinh, thông tin cập nhật TÀI LIỆU THAM KHẢO ABSTRACT INTERGRATING RESTFUL WEB SERVICE ON MOBILE PLATFORM, BUILDING WEB SYSTEM OF INFORMATION TECHNOLOGY FACULTY ON ANDROID DEVICE Luong Thi Thao Hieu*, Le Thanh Cua, Dao Phuong Anh University of Economic and Technical Industry Now a day, mobile devices, specially devices using Android were commonly recognized as Web consumers However, when building web system on mobile have faced to many problem: resource constraints, display screen, storage capacity, using wire less connection….So how to caching data, store and represent on mobile, building mobile information system is complicate and difficult implementation Web service can be built by using two separate ways: standard SOAP based and RESTful web service In this paper, research some mobile web service architect, we intergrate RESTful web service with mobile application to make mobile web service, then building web system of UNETI’s information technology faculty on mobile device Keyword: ANDROID; mobile web service; RESTful; JSON Ngày nhận bài: 19/6/2018; Ngày phản biện: 18/7/2018; Ngày duyệt đăng: 31/8/2018 * Tel: 0942 160880, Email: ltthieu@uneti.edu.vn 50 ... đối xứng XÂY DỰNG HỆ THỐNG WEB KHOA CÔNG NGHỆ THÔNG TIN TRÊN NỀN TẢNG ANDROID Xây dựng hệ thống Xuất phát từ nhu cầu thực tế trường Đại học Kinh tế Kỹ thuật Công nghiệp trì hệ thống website,... phù hợp với thiết bị di động hạn chế tài nguyên Khái niệm 2.3 Web service tuân thủ kiến trúc SOAP giao thức SOAP gọi SOAP Based Web Service Web service xây dựng nguyên lý REST gọi Restful Web Service. .. thoai di động, song song với web trường Trong kiến trúc mobile web service trình bày trên, lựa chọn kiến trúc proxybased, đưa vào xây dựng hệ thống mobile web phù hợp với trạng sở vật chất khoa