wayground logo

Free Printable Worksheets

Font size

S
M
L
XL
Worksheets

Câu hỏi về hệ thống phân tán

Total questions: 111

Worksheet time: 56mins

Name
Class
Date
1.

Tính chất nào giúp người dùng không nhận thấy tính phân tán của hệ thống?

a)

Tính hiệu quả

b)

Tính trong suốt

c)

Tính đồng bộ

d)

Tính mở

2.

Đặc điểm nào sau đây đúng với hệ thống phân tán?

a)

Giảm khả năng chia sẻ tài nguyên

b)

Phụ thuộc vào một điểm đơn

c)

Khả năng mở rộng linh hoạt

d)

Giảm tính sẵn sàng của hệ thống

3.

Trong hệ thống phân tán, việc che giấu chi tiết cài đặt hệ thống với người dùng là?

a)

Tính đóng

b)

Tính trong suốt

c)

Tính đồng nhất

d)

Tính ảo hóa

4.

Mục tiêu chính của hệ thống phân tán là gì?

a)

Tăng độ trễ

b)

Giảm tính linh hoạt

c)

Cắt giảm tài nguyên

d)

Tăng hiệu quả và khả năng chia sẻ tài nguyên

5.

Khả năng hệ thống tiếp tục hoạt động khi một nút gặp lỗi gọi là gì?

a)

Tính trong suốt

b)

Tính mở

c)

Độ chịu lỗi

d)

Tính liên tục

6.

Yếu tố nào là thách thức lớn nhất của hệ thống phân tán?

a)

Đồng bộ hóa

b)

Truy xuất dữ liệu

c)

Tối ưu giao diện

d)

Lưu trữ tập trung

7.

Giao thức phổ biến dùng để trao đổi dữ liệu trong hệ thống phân tán là gì?

a)

FTP

b)

SNMP

c)

SMTP

d)

REST

8.

Tính mở của hệ phân tán liên quan đến điều gì?

a)

Khả năng tích hợp hệ thống mới dễ dàng

b)

Giới hạn phần cứng

c)

Độc quyền công nghệ

d)

Tính không thể mở rộng

9.

Một ví dụ điển hình của hệ thống tập trung là gì?

a)

Hệ thống P2P

b)

Máy chủ cơ sở dữ liệu trung tâm

c)

Blockchain

d)

Mạng CDN

10.

Trong hệ thống phân tán, tính co giãn (elasticity) nghĩa là gì?

a)

Giao diện dễ thay đổi

b)

Hệ thống không thay đổi

c)

Khả năng mở rộng hoặc thu hẹp tài nguyên linh hoạt

d)

Mô hình định danh linh hoạt

11.

Tại sao cần tính minh bạch về vị trí trong hệ phân tán?

a)

Để dễ dàng bảo trì phần cứng

b)

Giảm chi phí

c)

Tăng hiệu suất người dùng

d)

Để người dùng không cần biết nơi lưu trữ tài nguyên

12.

Điều gì xảy ra khi một nút trong hệ thống phân tán bị lỗi?

a)

Hệ thống cần phát hiện và phục hồi

b)

Tất cả hệ thống sụp đổ

c)

Không ảnh hưởng đến toàn hệ thống

d)

Tự động r

13.

Ưu điểm nào không phải của hệ thống phân tán?

a)

Tính mở rộng

b)

Đơn giản trong phát triển và kiểm thử

c)

Khả năng phục hồi

d)

Chia sẻ tài nguyên

14.

Tính chất nào không liên quan đến hệ thống phân tán?

a)

Tính mở

b)

Tính trong suốt

c)

Tính tập trung

d)

Tính co giãn

15.

Hệ thống phân tán có thể bao gồm?

a)

Một máy chủ chính duy nhất

b)

Các máy tính đơn lẻ không liên kết

c)

Máy chủ trung tâm và các thiết bị ngoại vi

d)

Các máy tính độc lập liên kết qua mạng

16.

Ứng dụng điện toán đám mây thuộc loại hệ thống nào?

a)

Tập trung

b)

Phân tán

c)

Cục bộ

d)

Phi tập trung hoàn toàn

17.

Một hệ thống dùng chung bộ nhớ và tài nguyên gọi là gì?

a)

Hệ thống bảo mật

b)

Hệ thống tập trung

c)

Hệ thống hợp tác

d)

Hệ thống riêng biệt

18.

Khả năng phát hiện lỗi trong hệ thống phân tán phụ thuộc vào?

a)

Các cơ chế giám sát

b)

Cơ sở dữ liệu phân tán

c)

Lập lịch

d)

Phần mềm bên ngoài

19.

Kỹ thuật nào giúp phát hiện lỗi nút trong hệ phân tán?

a)

Token Ring

b)

Heartbeat

c)

VPN

d)

Load Balancer

20.

Tại sao việc xác định nguyên nhân lỗi trong hệ thống phân tán khó?

a)

Quá nhiều người dùng

b)

Do sự phức tạp của giao diện

c)

Do thiếu log

d)

Do thiếu thông tin toàn cục

21.

Giao thức nào phổ biến trong RPC?

a)

UDP

b)

FTP

c)

HTTP

d)

TCP

22.

Trong mô hình client-server, client đóng vai trò gì?

a)

Gửi yêu cầu tới server

b)

Quản lý kết nối mạng

c)

Chia sẻ tài nguyên

d)

Điều phối máy chủ

23.

Một lợi ích của truyền thông không đồng bộ là gì?

a)

Đảm bảo an toàn dữ liệu

b)

Tăng tốc độ mạng

c)

Không cần chờ phản hồi

d)

Phụ thuộc vào server

24.

Kỹ thuật serialize giúp gì trong RPC?

a)

Tăng tốc độ truyền

b)

Truyền dữ liệu giữa các tiến trình

c)

Đồng bộ hóa thời gian

d)

Bảo mật thông tin

25.

Giao thức nào thường dùng trong REST?

a)

HTTP

b)

POP3

c)

SSH

d)

FTP

26.

Middleware đóng vai trò gì trong truyền thông?

a)

Quản lý phần cứng

b)

Tăng tốc hệ thống

c)

Chuyển đổi dữ liệu

d)

Trung gian xử lý yêu cầu và phản hồi

27.

Truyền thông trong hệ thống phân tán yêu cầu gì?

a)

Nhiều CPU

b)

Giao thức đáng tin cậy

c)

Giao diện thân thiện

d)

IP tĩnh

28.

Cơ chế xác nhận lại dữ liệu truyền thường được gọi là gì?

a)

Packet

b)

Token

c)

ACK

d)

Ping

29.

RPC khác gì so với gọi hàm thông thường?

a)

Hàm được gọi ở máy khác

b)

Không cần compile

c)

Không có tham số

d)

Chạy song song

30.

Giao tiếp đồng bộ yêu cầu gì?

a)

Client tự động retry

b)

Client chờ phản hồi từ server

c)

Server giữ kết nối mở vĩnh viễn

d)

Giao thức không trạng thái

31.

Ưu điểm chính của hệ thống message queue là gì?

a)

Dễ bảo trì

b)

Tăng tính bảo mật

c)

Tự động hóa logic nghiệp vụ

d)

Tăng khả năng xử lý song song

32.

Trong mạng phân tán, multicast dùng để?

a)

Gửi riêng tư

b)

Truyền một lần đến một máy

c)

Gửi tới nhiều nút cùng lúc

d)

Mã hóa dữ liệu đầu vào

33.

Truyền thông giữa hai nút phải đảm bảo điều gì?

a)

Bảo mật phần cứng

b)

Khả năng broadcast

c)

Tính toàn vẹn và bảo mật dữ liệu

d)

Địa chỉ IP công khai

34.

Cơ chế nào giúp tránh xung đột truy cập tài nguyên?

a)

Commit log

b)

Lock

c)

Delay

d)

Message buffer

35.

Giao thức TLS cung cấp điều gì?

a)

Bảo mật cho truyền thông

b)

Giảm độ trễ

c)

Tăng băng thông

d)

Giao diện đồ họa

36.

Trong cơ chế publish-subscribe, subscriber nhận dữ liệu khi nào?

a)

Khi server khởi động lại

b)

Khi gọi hàm get()

c)

Khi có thông tin mới được publish

d)

Khi có lỗi xảy ra

37.

Bottleneck trong hệ thống truyền thông là gì?

a)

Dữ liệu bị lặp

b)

Điểm nghẽn làm giảm hiệu suất hệ thống

c)
38.

Bottleneck trong hệ thống truyền thông là gì?

a)

Dữ liệu bị lặp

b)

Điểm nghẽn làm giảm hiệu suất hệ thống

c)

Thiết bị lỗi vật lý

d)

Dữ liệu truyền sai thứ tự

39.

Thách thức chính của truyền thông phân tán là?

a)

Chi phí phần mềm

b)

Giới hạn RAM

c)

Thiếu địa chỉ IP

d)

Độ trễ không đồng đều

40.

Một giải pháp để tăng hiệu suất truyền thông?

a)

Sử dụng firewall

b)

Thay toàn bộ phần mềm

c)

Cache dữ liệu gần người dùng

d)

Mã hóa toàn bộ thông tin

41.

Cơ chế truyền broadcast có thể gây ra?

a)

Nghẽn mạng nếu quá nhiều dữ liệu

b)

Mất kết nối tạm thời

c)

Không hỗ trợ đa luồng

d)

Ghi đè dữ liệu

42.

Trong hệ điều hành, "tiến trình" là gì?

a)

Một đoạn mã đang được viết

b)

Một chương trình đã bị lỗi

c)

Một chương trình đang được thực thi

d)

Một thư mục chứa tập lệnh

43.

Luồng (thread) trong một tiến trình có đặc điểm nào?

a)

Không thể chia sẻ tài nguyên với tiến trình mẹ

b)

Hoạt động hoàn toàn tách biệt

c)

Chia sẻ không gian địa chỉ với tiến trình chính

d)

Cần một hệ điều hành riêng để chạy

44.

Ưu điểm chính của sử dụng luồng thay vì tiến trình trong hệ phân tán là gì?

a)

Dễ viết hơn

b)

Tiết kiệm bộ nhớ và chuyển ngữ cảnh nhanh hơn

c)

Luồng tự động tái cấu trúc hệ thống

d)

Luồng an toàn hơn tiến trình

45.

Khi một luồng bị treo vì I/O, điều gì xảy ra với các luồng khác trong cùng tiến trình?

a)

Tất cả bị dừng

b)

Các luồng khác vẫn hoạt động

c)

Phải khởi động lại toàn bộ tiến trình

d)

Hệ điều hành ngừng xử lý tiến trình

46.

Bảng tiến trình (process table) lưu giữ gì?

a)

Lịch sử truy cập file

b)

Giá trị biến cục bộ

c)

Trạng thái và thông tin điều khiển tiến trình

d)

Dữ liệu mã nguồn

47.

Luồng thuộc loại "lightweight" nghĩa là gì?

a)

Không có bộ nhớ riêng

b)

Không thể chạy đồng thời

c)

Có chi phí tạo và quản lý thấp

d)

Luôn được tạo bởi kernel

48.

Trong hệ thống phân tán, một tiến trình có thể:

a)

Chỉ hoạt động cục bộ

b)

Chia sẻ tài nguyên giữa các máy chủ

c)

Gửi dữ liệu mà không cần mạng

d)

Gọi hàm cục bộ trên client

49.

Một ứng dụng đa luồng thường dùng kỹ thuật nào để xử lý nhiều yêu cầu?

a)

Gọi tuần tự các tác vụ

b)

Tạo nhiều tiến trình con

c)

Tạo nhiều luồng xử lý song song

d)

Phân mảnh dữ liệu

50.

Kernel-level thread có đặc điểm gì?

a)

Không thể giám sát bởi hệ điều hành

b)

Tự do truy cập bộ nhớ của hệ thống

c)

Được quản lý trực tiếp bởi hệ điều hành

d)

Không thể chạy trên đa nhân

51.

User-level thread có hạn chế nào?

a)

Không được hỗ trợ đa nhiệm

b)

Không thể sử dụng tài nguyên hệ thống

c)

Không được hệ điều hành nhận biết trực tiếp

d)

Không thể đồng bộ

52.

Khi một tiến trình bị chuyển ngữ cảnh, dữ liệu nào cần được lưu giữ?

a)

Địa chỉ IP và MAC

b)

Danh sách người dùng

c)

Bộ thanh ghi và con trỏ ngăn xếp

d)

Tập tin đang mở

53.

Trong mô hình MapReduce, "Map" có nhiệm vụ gì?

a)

Gộp dữ liệu theo nhóm

b)

Gửi dữ liệu tới reducer

c)

Ánh xạ dữ liệu thành cặp khóa-giá trị

d)

Lưu dữ liệu tạm thời

54.

Trong mô hình MapReduce, "Reduce" thực hiện gì?

a)

Ánh xạ dữ liệu

b)

Phân tán kết quả

c)

Tổng hợp các kết quả theo khóa

d)

Tạo biểu đồ thống kê

55.

"Thread-per-request" là mô hình gì?

a)

Một luồng xử lý nhiều yêu cầu

b)

Một luồng xử lý một yêu cầu

c)

Một tiến trình xử lý tất cả yêu cầu

d)

Một máy chủ dành riêng cho mỗi luồng

56.

Một lợi ích của lập trình song song với thread là gì?

a)

Dễ sử dụng trong mọi ngôn ngữ

b)

Giảm thời gian xử lý nhờ thực hiện đồng thời

c)

Tăng độ trễ mạng

d)

Loại bỏ nhu cầu chia sẻ tài nguyên

57.

Tại sao cần đồng bộ hóa giữa các thread?

a)

Để tăng độ trễ

b)

Tránh deadlock

c)

Đảm bảo tính nhất quán dữ liệu khi truy cập chung

d)

Đ

58.

Tại sao cần đồng bộ hóa giữa các thread?

a)

Để tăng độ trễ

b)

Tránh deadlock

c)

Đảm bảo tính nhất quán dữ liệu khi truy cập chung

d)

Để tự động quản lý bộ nhớ

59.

Thread-safe có nghĩa là gì?

a)

Chỉ chạy được trong sandbox

b)

Không gây lỗi khi nhiều thread cùng truy cập

c)

Được bảo vệ bằng tường lửa

d)

Luôn chạy trong user mode

60.

Luồng trong ngôn ngữ lập trình Java được tạo bằng gì?

a)

fork()

b)

spawn()

c)

Thread class hoặc Runnable interface

d)

stream()

61.

Kỹ thuật nào sau đây giúp tránh điều kiện tranh chấp (race condition)?

a)

Sleep

b)

Mutex hoặc Semaphore

c)

Thread pooling

d)

Stack pointer

62.

Trong môi trường nhiều CPU, thread được lập lịch như thế nào?

a)

Theo thứ tự luồng tạo ra

b)

Bằng cơ chế round-robin

c)

Có thể được phân phối trên nhiều CPU

d)

Chỉ chạy trên CPU chính

63.

Xác thực (authentication) trong hệ phân tán là gì?

a)

Mã hóa dữ liệu gửi đi

b)

Định vị vị trí của người dùng

c)

Xác minh danh tính của người dùng

d)

Tạo kết nối mạng an toàn

64.

Hệ thống xác thực hai yếu tố sử dụng những gì?

a)

Một mật khẩu và một ảnh đại diện

b)

Hai yếu tố bất kỳ trong số: biết - sở hữu - là

c)

Chỉ mật khẩu

d)

Chỉ thiết bị phần cứng

65.

Mã OTP (One-Time Password) có đặc điểm gì?

a)

Không thể sử dụng lại

b)

Dùng cố định cho mỗi người

c)

Không có tính bảo mật

d)

Chạy độc lập không cần kết nối

66.

Ví dụ nào sau đây là xác thực dựa trên sinh trắc học?

a)

Câu hỏi bảo mật

b)

Mã PIN

c)

Vân tay

d)

OTP

67.

Thiết bị token vật lý dùng để làm gì?

a)

Truy cập hệ thống cục bộ

b)

Tạo mật khẩu dùng một lần

c)

Thay thế hoàn toàn mật khẩu

d)

Gửi thông điệp mã hóa

68.

Trong xác thực dựa trên hành vi, hệ thống dựa vào:

a)

Sở thích người dùng

b)

Mức độ sử dụng phần mềm

c)

Mẫu gõ phím, cách di chuột

d)

Vị trí địa lý

69.

Cơ chế định danh cần đảm bảo điều gì?

a)

Đơn giản và không có mã hóa

b)

Ghi nhớ mật khẩu dài

c)

Phân biệt người dùng chính xác và không bị trùng

d)

Dễ chia sẻ tài khoản

70.

Tại sao xác thực liên tục lại quan trọng trong ứng dụng nhạy cảm?

a)

Giúp người dùng đăng xuất nhanh hơn

b)

Đảm bảo luôn có người dùng hợp lệ đang hoạt động

c)

Giảm thời gian sử dụng hệ thống

d)

Tự động reset mật khẩu

71.

Khi sử dụng xác thực dựa trên thiết bị, điều gì được ưu tiên?

a)

Mã hóa phần cứng

b)

Thiết bị phải có kết nối internet

c)

Nhận diện thiết bị cụ thể người dùng sở hữu

d)

Cài phần mềm diệt virus

72.

Trong hệ phân tán, session key được sử dụng khi nào?

a)

Trước khi đăng nhập

b)

Sau khi xác thực và thiết lập kết nối an toàn

c)

Để tạo mã OTP

d)

Khi khởi động máy

73.

Ưu điểm của định danh phân tán là gì?

a)

Không cần xác minh người dùng

b)

Tập trung tất cả vào một máy chủ

c)

Hệ thống vẫn hoạt động khi một node gặp sự cố

d)

Dễ thay đổi giao diện

74.

Công nghệ blockchain đóng vai trò gì trong định danh?

a)

Mã hóa dữ liệu người dùng

b)

Cung cấp hệ thống định danh minh bạch và không thay đổi

c)

Thay thế máy chủ truyền thống

d)

Tạo tài khoản người dùng

75.

Đâu là phương pháp xác thực yếu nhất?

a)

Xác thực đa yếu tố

b)

Xác thực bằng token

c)

Xác thực một yếu tố (mật khẩu)

d)

Xác thực bằng sinh trắc học

76.

Trong hệ thống định danh tập trung, nhược điểm chính là gì?

a)

Khó mở rộng

b)

Thiếu tính bảo mật

c)

Dễ chia sẻ quyền truy cập

d)

Quá nhiều người dùng

77.

Tính năng chính của Kerberos là gì?

a)

Phân tích hành vi truy cập

b)

Xác thực người dùng và cấp phiếu truy cập

c)

Mã hóa toàn bộ giao tiếp mạng

d)

Thay thế hệ điều hành

78.

"Challenge-response" là cơ chế xác thực nào?

a)

Người dùng gửi mật khẩu, nhận lại token

b)

Hệ thống gửi câu hỏi, người dùng phản hồi chính xác

c)

Người dùng nhập hai mật khẩu

d)

Chỉ dùng trên thiết bị di động

79.

Ưu điểm của mô hình xác thực phân tán là gì?

a)

Bảo trì đơn giản hơn

b)

Dễ sử dụng mạng cục bộ

c)

Không phụ thuộc vào máy chủ trung tâm

d)

Không cần xác minh người dùng

80.

"Public key" trong mật mã khóa công khai dùng để làm gì?

a)

Giải mã tin nhắn

b)

Mã hóa thông tin gửi đi

c)

Xác thực máy chủ

d)

Gửi mật khẩu

81.

Khi triển khai xác thực trong hệ thống cloud, yếu tố nào cần được ưu tiên?

a)

Giao diện đẹp

b)

Ghi log chi tiết

c)

Tính khả dụng và bảo mật cao

d)

Tự động cập nhật driver

82.

Một điểm yếu phổ biến của xác thực bằng mật khẩu là?

a)

Dễ thực hiện

b)

Tính bảo mật tuyệt đối

c)

Người dùng thường đặt mật khẩu yếu

d)

Không yêu cầu bảo trì

83.

Đồng bộ hóa thời gian trong hệ thống phân tán là cần thiết để làm gì?

a)

Tăng tốc độ truyền mạng

b)

Đảm bảo các sự kiện xảy ra theo thứ tự hợp lý

c)

Cải thiện giao diện người dùng

d)

Giảm kích thước tệp

84.

Vì sao không thể sử dụng đồng hồ phần cứng làm chuẩn tuyệt đối trong hệ phân tán?

a)

Đồng hồ dễ hỏng

b)

Đồng hồ có sai số và độ lệch khác nhau

c)

Không đồng bộ với ổ cứng

d)

Không tương thích với mạng LAN

85.

Trong thuật toán Cristian, vai trò của máy chủ thời gian là gì?

a)

Cung cấp địa chỉ IP

b)

Gửi thời gian hiện tại cho các client

c)

Gửi các bản vá hệ điều hành

d)

Tự động restart tiến trình

86.

Thuật toán Berkeley có điểm đặc biệt nào?

a)

Đồng bộ theo thứ tự gửi

b)

Lấy trung bình cộng thời gian từ các nút

c)

Dùng đồng hồ GPS

d)

Chạy trên một máy chủ cố định

87.

NTP (Network Time Protocol) thường được dùng để?

a)

Mã hóa dữ liệu thời gian thực

b)

Tự động đặt giờ hệ điều hành

c)

Đồng bộ hóa thời gian giữa các máy trong mạng

d)

Lưu trữ log hoạt động

88.

Sự không đồng bộ giữa các đồng hồ trong hệ thống gây hậu quả gì?

a)

Chậm phần cứng

b)

Lỗi thứ tự xử lý sự kiện

c)

Mất địa chỉ IP

d)

Tăng RAM sử dụng

89.

Trong đồng hồ logic, thứ tự các sự kiện được xác định bằng gì?

a)

Thời gian thực tế

b)

Múi giờ hệ thống

c)

Giá trị đếm logic

d)

Tên tiến trình

90.

Lamport clock được sử dụng để làm gì trong hệ phân tán?

a)

Đặt thời gian hệ điều hành

b)

Phát hiện lỗi phần cứng

c)

Xác định mối quan hệ nhân quả giữa các sự kiện

d)

Lưu lại log hệ thống

91.

Trong hệ thống đồng bộ hóa tập trung, nhược điểm chính là?

a)

Khó thực hiện trên mạng LAN

b)

Thiếu khả năng mở rộng và dễ nghẽn tại nút điều phối

c)

Phải đồng bộ mỗi phút

d)

Không hoạt động trên internet

92.

Mỗi máy trong hệ thống phân tán có đồng hồ riêng. Điều này gây ra?

a)

Không ảnh hưởng đến hoạt động hệ thống

b)

Tăng tính bảo mật

c)

Cần đồng bộ hóa để đảm bảo tính chính xác

d)

Bỏ qua sai số

93.

Một hệ thống yêu cầu tính nhất quán mạnh về thời gian thường:

a)

Dùng cron job để điều chỉnh thời gian

b)

Không cần mạng internet

c)

Đồng bộ hóa thường xuyên giữa các nút

d)

Không cần sử dụng đồng hồ logic

94.

Vector clock khác Lamport clock ở điểm nào?

a)

Không cần gửi thông điệp

b)

Dễ triển khai hơn

c)

Giữ được nhiều thông tin thứ tự và quan hệ nhân quả chính xác hơn

d)

Không dùng trong hệ thống phân tán

95.

Khi hai tiến trình không có quan hệ nhân quả, chúng được gọi là:

a)

Độc lập

b)

Tương tranh

c)

Đồng bộ

d)

Lặp

96.

Mục tiêu chính của đồng bộ hóa logic là gì?

a)

Đồng bộ về thời gian thực

b)

Phân quyền truy cập tài nguyên

c)

Giữ đúng thứ tự thực hiện các sự kiện logic

d)

Tăng tốc độ CPU

97.

Lamport's "happens-before" relation được ký hiệu là gì?

a)

b)

||

c)

d)

98.

Trong Lamport Clock, khi nhận được một thông điệp, đồng hồ nên:

a)

Giữ nguyên giá trị

b)

Lấy trung bình giá trị với đồng hồ gửi

c)

Cập nhật thành giá trị lớn hơn giữa đồng hồ hiện tại và thời gian trong tin nhắn, sau đó cộng thêm 1

d)

Xóa lịch sử

99.

Trong thuật toán đồng bộ hóa phân tán, thời gian trễ mạng ảnh hưởng thế nào?

a)

Làm chậm hoạt động ổ cứng

b)

Làm sai lệch giá trị đồng bộ nếu không bù trừ đúng

c)

Không ảnh hưởng

d)

Gây lỗi logic

100.

Khi nào cần sử dụng đồng hồ logic thay vì đồng hồ vật lý?

a)

Khi không có kết nối mạng

b)

Khi thời gian thực không quan trọng nhưng thứ tự sự kiện phải đảm bảo

c)

Khi không có bộ xử lý

d)

Khi hệ điều hành yêu cầu

101.

Giải thuật đồng bộ hóa logic nào theo dõi được quan hệ nhân quả đầy đủ?

a)

Lamport clock

b)

System timestamp

c)

Vector clock

d)

Round-robin clock

102.

Một nút nhận tin nhắn từ nhiều nút khác nhau, làm sao đảm bảo thứ tự xử lý đúng?

a)

Xử lý theo thứ tự nhận được

b)

Dựa vào độ trễ mạng

c)

Sử dụng logic clock hoặc vector clock để so sánh thời gian sự kiện

d)

Bỏ qua thông điệp trễ

103.
  1. Bạn đang viết một chương trình Python để gửi thông điệp giữa các máy trong hệ thống phân tán. Trong hàm connect_to_server, tại sao nên đặt socket.settimeout(5) trước khi connect()?

a)

Để đảm bảo mọi kết nối luôn thành công

b)

Để giới hạn thời gian chờ kết nối, tránh treo ứng dụng

c)

Để tăng băng thông truyền tải

d)

Để sử dụng UDP thay vì TCP

104.

Khi viết hàm receive_data(sock), tại sao nên gọi sock.recv(1024).decode() thay vì sock.recv(1024)?

a)

Để nhận dữ liệu dạng mã hóa base64

b)

Để chuyển dữ liệu từ bytes sang string

c)

Để giảm độ trễ mạng

d)

Để tăng tốc độ nhận

105.

Trong ứng dụng chat client-server đơn giản, tại sao bạn nên sử dụng with socket.socket() as s: thay vì mở socket trực tiếp?

a)

Tăng tốc độ tạo kết nối

b)

Đảm bảo socket được đóng đúng cách sau khi sử dụng

c)

Hạn chế quyền truy cập mạng

d)

Buộc client phải đăng nhập

106.

Hàm send_message(sock, msg) sử dụng sock.sendall(msg.encode()). Tại sao không dùng send()?

a)

sendall() giúp gửi dữ liệu theo kiểu gói nén

b)

send() chỉ hoạt động với dữ liệu nhỏ

c)

sendall() đảm bảo toàn bộ dữ liệu được gửi đi

d)

send() chỉ dùng được với UDP

107.

Trong một hệ thống P2P phân tán, bạn viết hàm query_peer(peer_address). Biến peer_address nên mang ý nghĩa gì?

a)

Địa chỉ IP của nút hiện tại

b)

Địa chỉ IP và cổng của nút cần truy vấn

c)

Tên đăng nhập người dùng

d)

Đường dẫn đến cơ sở dữ liệu

108.

Trong hàm update_file_list(files), biến files là một danh sách. Tại sao nên kiểm tra if not files: trước khi xử lý?

a)

Để tránh lỗi khi danh sách rỗng

b)

Để lọc các file đã mã hóa

c)

Để yêu cầu xác thực lại

d)

Để giảm tải CPU

109.

Khi dùng Flask để triển khai REST API phân tán, tại sao cần dùng @app.route('/get_data')?

a)

Để kết nối với cơ sở dữ liệu

b)

Để chỉ định đường dẫn API mà client sẽ gọi đến

c)

Để tăng tốc độ phản hồi

d)

Để hạn chế truy cập từ IP lạ

110.

Trong Flask, hàm xử lý API thường trả về jsonify(data). Lý do chính là?

a)

Để giảm kích thước phản hồi

b)

Để dữ liệu trả về ở dạng chuẩn JSON

c)

Để mã hóa dữ liệu

d)

Để gọi hàm Python từ client

111.

Bạn triển khai một hàm authenticate(username, password). Điều gì nên xảy ra nếu username không tồn tại?

a)

Hàm trả về lỗi 200 OK

b)

Hàm trả về True

c)

Hàm trả về False hoặc HTTP 401 Unauthorized

d)

Hàm tiếp tục thực thi