Bài 03: Ôn thi webSerrvice

Bài 03: Ôn thi webSerrvice

 Chủ Đề I: Webservices

I/ Lý Thuyết

1: Webservices là gì?

Web services:
+ là một dịch vụ do thiết bị điện tử này cung cấp cho một thiết bị điện tử khác mà quá trình  trao đổi được thực hiện trên môi trường web(World wide web, WWW, Internet, HTTP).
+ Một server mạng sẽ luôn lắng nghe  các yêu cầu từ một cổng cụ thể để cung cấp các tài nguyên web như HTML, JSON, XML, Image và tạo ra các dịch vụ cho các ứng dụng có sử dụng web service.

2/ Định nghĩa web service:

-    Web service là một hệ thống phần mềm được thiết kế để hỗ trợ khả năng tương tác giữa các ứng dụng trên các máy tính khác nhau thông qua mạng internet, giao diện chung và sự gắn kết của nó được mô tả bằng XML.
-    Là tài nguyên phần mềm có thể xác định bằng địa chỉ URL.
-    Ứng dụng các chức năng và đưa ra các thông tin người dùng yêu cầu.
-    Các ứng dụng được tích hợp với cơ sở dữ liệu và ứng dụng khác, người sử dụng sẽ giao tiếp với cơ sở dữ liệu để tiến hành phân tích và lấy dữ liệu.

3/Trang web và web services

 

Trang web

Kết quả trả về của web services

Đối tượng sử dụng

Con người

Chương trình

Kiểu dữ liệu

Thông tin, dữ liệu

Thông tin, dữ liệu

Kiểu hiển thị

Thông tin con người có thể đọc được

Dữ liệu dạng XML, JSON

4/ Ưu nhược điểm của web service

Ưu điểm
– Cung cấp khả năng hoạt động rộng lớn với các ứng dụng phần mềm khác nhau chạy trên những nền tảng khác nhau
– Sử dụng các giao thức và chuẩn mở
– Nâng cao khả năng tái sử dụng
– Thúc đẩy đầu tư các hệ thống phần mềm đã tồn tại
– Tạo mối quan hệ tương tác lẫn nhau và mềm dẻo giữa các thành phần trong hệ thống, dễ dàng cho việc phát triển các ứng dụng phân tán
– Thúc đẩy hệ thống tích hợp, giảm sự phức tạp của hệ thống, hạ giá thành hoạt động, phát triển hệ thống nhanh và tương tác hiệu quả với hệ thống của các doanh nghiệp khác
Nhược điểm
– Vào những khoảng thời gian chết của web services sẽ dẫn đến những thiệt hại lớn:
+ Giao diện không thay đổi
+ Có thể lỗi nếu một máy khách không được nâng cấp
+ Thiếu các giao thức cho việc vận hành
– Có quá nhiều chuẩn cho web service khiến người dùng khó nắm bắt
– Phải quan tâm nhiều hơn đến vấn đề an toàn và bảo mật

5/ Hoạt động của web services:

– Một ứng dụng web services gồm hai thành phần là client (service consumer) và server (service provider). Chúng giao tiếp với nhau bằng giao thức HTTP.
– Client gửi yêu cầu thông qua HTTP request tới server
– Server gửi kết quả trả về thông qua HTTP response
– Có hai loại công nghệ web services được sử dụng phổ biến là SOAP và REST

II/ Có thể sử dụng vào làm gì trong ứng dụng thực tế : 

Ứng dụng cơ bản của web services là tích hợp các hệ thống, Các ứng dụng được tích hợp với cơ sở dữ liệu và các ứng dụng khác, người sử dụng sẽ giao tiếp với cơ sở dữ liệu để tiến hành phân tích và lấy dữ liệu,Thực hiện các chức năng và đưa ra các thông tin người dùng yêu cầu.

III/ Bạn đã làm thử, hay áp dụng vào ứng dụng thực tế nào?

Viết ứng dụng web News Reader cho cá nhân. lấy các RSS về và tạo thành trang điểm tin (chỉ hiển thị các tiêu đề của bài báo) cho chính bạn.

Chủ đề 2,3: Giao thức HTTP và Kiến trúc Client-Server

I/ Lý Thuyết
1.      Bạn biết gì về giao thức HTTP, HTTPS?
Http là chữ viết tắt của HyperText Transfer Protocol , Http hoạt động dựa trên mô hình Client (máy khách) – Server (máy chủ)
Https là phiên bản an toàn của http (viết tắt của Hyper Text Transfer Protocol Secure - giao thức truyền tải siêu văn bản bảo mật), giao thức mà qua đó dữ liệu được gửi giữa trình duyệt và trang web bạn đang kết nối.

2.      Các thành phần của kiến trúc client-server?

Kiến trúc client-server gồm một số thành phần:

– Server: có vai trò cung cấp dịch vụ, xử lý và trả về kết quả cho máy client.
– Client: khởi phát yêu cầu, gửi yêu cầu tới server, nhận kết quả server trả về. Client có thể là trình duyệt, ứng dụng viết bằng python/javascript hoặc bất kỳ ứng dụng nào mà có phát sinh ra HTTP request.
– Môi trường truyền thông tin: hạ tầng mạng (LAN, Internet), bao gồm cả phần cứng và phần mềm
– Giao thức truyền thông tin: các chuẩn công nghệ giúp giao tiếp và truyền thông tin giữa server-client
Trong kiến trúc client-server, khi môi trường truyền đã được kết nối, và sẵn sàng thì client luôn là nơi khởi phát của ứng dụng. Client sẽ gửi một HTTP request tới server. Server nhận được request sẽ xử lý và trả kết quả về cho client bằng một HTTP response.
Client là thành phần chủ động. Server là thành phần bị động.

3.      Client là gì?

Client có thể là trình duyệt, ứng dụng viết bằng python/javascript hoặc bất kỳ ứng dụng nào mà có phát sinh ra HTTP request.

4.      HTTP web server là gì?

HTTP viết tắt của HyperText Transfer Protocol – giao thức truyền tải siêu văn bản. Trong mô hình OSI và TCP/IP, HTTP là giao thức thuộc tầng ứng dụng (application)

5.      Ưu và nhược điểm của kiến trúc client-server?
Ưu điểm của Client server là gì?
Client server có khả năng chống quá tải mạng, đảm bảo toàn vẹn dữ liệu khi có sự cố xảy ra, Dễ dàng mở rộng hệ thống mạng, Chỉ cần chung định dạng giao tiếp mà không cần chung nền tảng là có thể hoạt động được, Client server cho phép tích hợp các kỹ thuật hiện đại như GIS, mô hình thiết kế hướng đối tượng,…Với mô hình Client server, người dùng có thể truy cập dữ liệu từ xa, thực hiện các thao tác gửi, nhận file hay tìm kiếm thông tin đơn giản
Nhược điểm của Client server là gì?
Bên cạnh những ưu điểm kể trên, Client server vẫn còn tồn tại một số nhược điểm sau:
Cần bảo trì, bảo dưỡng server thường xuyên.Khả năng bảo mật thông tin mạng là một hạn chế nữa của Client server. Bởi vì, nguyên lý hoạt động của Client server là trao đổi dữ liệu giữa server và client ở 2 khu vực địa lý khác nhau. Trong quá trình trao đổi dữ liệu, khả năng thông tin mạng bị lộ là điều dễ xảy ra.

II/ Có thể sử dụng vào làm gì trong ứng dụng thực tế : 
Có thể sử dụng để xây dựng hệ thống các máy chủ và máy khách
III/ Bạn đã làm thử, hay áp dụng vào ứng dụng thực tế nào?

xây dựng hệ thống server lưu thông tin sinh viên và xây dựng máy khách là app di động để tra cứu thoog tin sinh viên.

Chủ đề 4: XML

I/ Lý Thuyết

1.      XML là gì?

XML (viết tắt của từ tiếng Anh eXtensible  Markup Language) được gọi là Ngôn ngữ đánh dấu mở rộng.

2.      Cú pháp của tài liệu XML

Một tập tin chứa tài liệu XML thường có phần mở rộng là .xml.

Một tài liệu XML thường bắt đầu bằng dòng chỉ thị xử lý (processing instruction). Chỉ thị được đặt trong cặp dấu <?  ?>. Nó cho biết phiên bản đặc tả XML được sử dụng (version=“1.0”), bản mã hóa văn bản được sử dụng (encoding=“utf-8”), và tài liệu XML có cần đến một tài liệu khác không (standalone=“yes”, nghĩa là không cần đến tài liệu khác).
Dòng chú thích được đặt trong cặp dấu <!-- -->.
Ví dụ:

<?xml version="1.0" encoding="utf-8 standalone="yes"?>
<!-- thong tin sinh vien -->
<SinhVien>
    <Ten>Teo</Ten>
    <Tuoi>20</Tuoi>
    <Diem>
        <Toan>7</Toan>
        <LapTrinh>8</LapTrinh>
    </Diem>
</SinhVien>

3.      Cấu trúc cây trong XML

XML sử dụng cấu trúc cây để tổ chức dữ liệu. Một tài liệu XML luôn bắt đầu bằng một phần tử gốc (root element) hay nút gốc, phần tử gốc này sẽ chứa một hoặc nhiều phần tử con (hay nút con). Một tài liệu XML không được có hai nút gốc.

Mỗi nút con lại có thể chứa một hoặc nhiều các nút con khác.

Nút con cấp cuối cùng (nút lá) sẽ chứa dữ liệu.


II/ Có thể sử dụng vào làm gì trong ứng dụng thực tế : 

XML (Extensible Markup Language) là một ngôn ngữ đánh dấu được tạo ra bởi World Wide Web Consortium (W3C) để xác định cú pháp mã hóa tài liệu giúp con người, máy móc có thể đọc được.

Để XML có thể mã hóa tài liệu, nó sử dụng thẻ xác định cấu trúc tài liệu cũng như cách tài liệu được lưu trữ và vận chuyển.

III/ Bạn đã làm thử, hay áp dụng vào ứng dụng thực tế nào?

Chủ đề 5: json

I/ Lý Thuyết

JSON là viết tắt của JavaScript Object Notation, là một kiểu định dạng dữ liệu tuân theo một quy luật nhất định mà hầu hết các ngôn ngữ lập trình hiện nay đều có thể đọc được. JSON là một tiêu chuẩn mở để trao đổi dữ liệu trên web. Định dạng JSON sử dụng các cặp key – value để dữ liệu sử dụng. Nó hỗ trợ các cấu trúc dữ liệu như đối tượng và mảng

II/ Có thể sử dụng vào làm gì trong ứng dụng thực tế : 

III/ Bạn đã làm thử, hay áp dụng vào ứng dụng thực tế nào?

 Đọc dữ liệu từ database để tạo ra một tài liệu XML bằng ngôn ngữ lập trình

Chủ đề 6: Ajax

I/ Lý Thuyết

AJAX là chữ viết tắt của Asynchronous JavaScript and XML, AJAX = Asynchronous JavaScript and XML. Đây là một công nghệ giúp chúng ta tạo ra những Web động mà hoàn toàn không reload lại trang nên rất mượt và đẹp

II/ Có thể sử dụng vào làm gì trong ứng dụng thực tế : 

III/ Bạn đã làm thử, hay áp dụng vào ứng dụng thực tế nào?

Chủ đề 7: Callback, promise, async/await, fetch

I/ Lý Thuyết

II/ Có thể sử dụng vào làm gì trong ứng dụng thực tế : 

III/ Bạn đã làm thử, hay áp dụng vào ứng dụng thực tế nào?

Chủ đề 8: SOAP, WSDL, UDDI

I/ Lý Thuyết

1/ SOAP là gì?
SOAP  (Simple Object Access Protocol - Giao thức truy cập đối tượng đơn giản) là giao thức nhắn tin cho phép các chương trình chạy trên các hệ điều hành khác nhau (như Windows và Linux) giao tiếp được với nhau thông qua Giao thức HTTP và Ngôn ngữ XML.

2/ WSDLlà gì?
WSDL (web services description language) là ngôn ngữ mô tả web services dựa trên XML, được sử dụng để mô tả các web service và cách truy cập chúng. WSDL được tổ chức thành một tập tin theo cấu trúc đã được chuẩn hóa.

3/ UDDI là gì?
UDDI viết tắt của Universal Description, Discovery and Integration), là một thành phần trong kĩ thuật web services, cho phép các nhà cung cấp dịch vụ web xuất bản các dịch vụ của mình lên một danh bạ trên Internet (directory, registry), giúp các client có thể truy vấn và tìm kiếm các dịch vụ web.

II/ Có thể sử dụng vào làm gì trong ứng dụng thực tế : 

III/ Bạn đã làm thử, hay áp dụng vào ứng dụng thực tế nào?

Chủ đề 9: RESTful, Web API

I/ Lý Thuyết

II/ Có thể sử dụng vào làm gì trong ứng dụng thực tế : 

III/ Bạn đã làm thử, hay áp dụng vào ứng dụng thực tế nào?















Đăng nhận xét

0 Nhận xét

myadcash