MÔ HÌNH NG ƯỜI SẢN XUẤT - NGƯỜI TIÊU THỤ TRONG XÂY DỰNG GI ẢI PHÁP KỸ THUẬT GIÁM SÁT CÁC HOẠT ĐỘNG ĐỒNG THỜI PHÂN TÁN THE PRODUCER-CUSTOMER MODEL IN BUILDING TECHNICAL SOLUTIONS MONITO
Trang 1MÔ HÌNH NG ƯỜI SẢN XUẤT - NGƯỜI TIÊU THỤ TRONG XÂY DỰNG
GI ẢI PHÁP KỸ THUẬT GIÁM SÁT CÁC HOẠT ĐỘNG
ĐỒNG THỜI PHÂN TÁN
THE PRODUCER-CUSTOMER MODEL IN BUILDING TECHNICAL SOLUTIONS MONITORING SIMULTANEOUS ACTIVITIES IN DISTRIBUTED SYSTEMS
L ê Văn Sơn, Đặng Hùng Vĩ, Hồ Minh Hoành
Trường Đại học Sư phạm, Đại học Đà Nẵng
TÓM T ẮT
V ấn đề giám sát các hoạt động đồng thời, thực chất, là bài toán đồng bộ hoá trong các
h ệ thống lớn, đa dạng và phức tạp Trong phạm vi bài viết này, chúng tôi đi sâu nghiên cứu vấn
đề đồng bộ giữa các tiến trình trong hệ phân tán trên cơ sở trật tự hoá từng phần giữa các sự
kiện Vấn đề trật tự hoá tổng quát chặt chẽ được nhiều tác giả nghiên cứu thành công thể hiện trong các công trình công b ố trong thời gian qua [7,2,5 ] Trong quá trình nghiên cứu, nhóm tác
gi ả đã xây dựng giải pháp kỹ thuật khả thi cho phép điều khiển các hệ thống lớn dựa trên sự quan sát và ra quy ết định trên cơ sở vận hành mô hình người sản xuất - người tiêu thụ (Producer-Consumer Model) Gi ải pháp được xây dựng bằng ngôn ngữ JAVA cùng với 2 thư viện phân tán là CORBA và RMI [15,11] Việc thử nghiệm giải pháp nêu trên được tiến hành trên hệ đa Server hoạt động theo họ giao thức TCP/IP trong các mạng Intranet
ABSTRACT Problems of monitoring simultaneous activities, essentially, is the synchronization
ones in large systems, diverse and complex Within this article, we focus on synchronization among processes in distributed systems based on the partial order in the events The issues of general order have been successfully studied by many authors expressed in works published in recent years [7,2,5] In the study, authors have built technical solutions feasible for controlling large systems based on observations and decisions on the basis of operating model producers – consumers Solutions are built by using Java language with two distributed libraries which are CORBA and RMI [15.11] The above test solution was conducted on the multi-server system
operating under their TCP / IP in the intranet
1 Đặt vấn đề
Hiện nay, một trong những hướng nghiên cứu quan trọng là xây dựng các giải pháp kỹ thuật khả thi nhằm điều khiển các hoạt động đồng thời diễn ra bên trong khi hệ
hoạt động Điều này lại càng có ý nghĩa trong
thực tiễn khi mà đang tồn tại nhiều hệ thống lớn,
phức tạp và đa dạng nhưng chưa có giải pháp điều hành, quản lý một cách có hiệu quả như các
hệ sản xuất và kinh doanh hiện trạng Chính vì
thế mà sự quan tâm tập trung, nghiên cứu của các chuyên gia Công nghệ Thô ng tin trong và ngoài nước ngày càng nhiều và thể hiện bằng hàng loạt các công trình với kết quả khá tốt đã được công bố tại các hội thảo quốc gia và quốc
Hình I.1 Sơ đồ kỹ thuật của hệ thống
S2
C1
S1
Sj
Sm
C2
Ci
Cn
Mạng TCP/IP
Các Client truy cập qua mạng
Hệ thống đa Server
Trang 2tế, đăng tải trong các tạp chí chuyên ngành có uy tín trong nước và trên thế giới [8,1,6,3,9]
Hệ thống mà ta quan tâm nghiên cứu là hệ thống lớn nhưng không thể sử dụng đồng bộ bằng phương pháp trật tự toàn phần giữa các sự kiện để điều khiển các hoạt động đồng thời được Khi nghiên cứu vấn đề này dưới giác độ của các đặc tính phân tán, ta nhận thấy vấn đề đặt ra càng phức tạp hơn nữa Để tiếp tục đi sâu tìm hiểu, trước
hết ta xem xét thành phần của hệ loại này thông qua hình I.1
Môi trường kỹ thuật trong đó hệ hoạt động là mạng IP bao gồm m Server (tiếp
theo ta gọi là hệ đa Server) được mắc nối và liên lạc với nhau qua hệ thống viễn thông
Từng cặp Server là đối tượng trao đổi tự động các thông điệp cho nhau và tuân thủ các nguyên lý phân tầng của mạng Ví dụ như S1 và Sj
Về nguyên tắc, người sử dụng (NSD) bất kỳ, nếu được phân quyền một cách
hợp thức, có thể truy cập từ bất kỳ trạm/Server hay thiết bị đầu cuối nào vào hệ thống
đa Server bằng một trình duyệt bất kỳ Ví dụ như C
là cặp trao đổi thể hiện bằng đường liên hệ đậm Các Server này được xây dựng có tính chất chuyên dụng cho bài toán đồng
bộ hóa bằng giám sát và ra các quyết định cần thiết
i (i=1 n) là Client th ứ i liên lạc và
làm việc với cặp S j và S 1
Về mặt ứng dụng, sau khi xây dựng thành công giải pháp kỹ thuật, ta có thể tiếp
tục triển khai vào hệ này tương đối thuận lợi Ở đây, ta không có bất kỳ ràng buộc cho
một ứng dụng cụ thể đặc biệt nào mà chỉ nhấn mạnh rằng đối với một hệ thỏa mãn đặc điểm trao đổi thông tin như mô tả trong tài liệu này là có thể sử dụng được Đối với hệ phân tán, ta cần quan tâm là các thành phần của hệ không sử dụng chung bộ nhớ và đồng hồ nhịp của bộ xử lý Để điều khiển những hệ loại này ta sử dụng nguyên tắc trao
đổi thông điệp Để đảm bảo tính gắn bó dữ liệu (coherence of data), phòng tránh bế tắc
(deadlock) và thiếu thốn tài nguyên vô hạn ta cũng chỉ cần sử dụng phương pháp trật tự hóa từng phần là đủ
thông qua trình duyệt vốn có của hệ , ví dụ như Google Chrome 2.0 hay IE quen thuộc [9,4,11]
Bài toán trật tự hóa từng phần các sự kiện dựa trên mô hình người sản xuất - người tiêu thụ (NSX-NTT) đã được chứng minh tính đúng đắn và có thể áp dụng để điều khiển các hoạt động diễn ra đồng thời trong hệ khi hệ này đã được đưa vào vận hành [15,2,9] Trước đây, mô hình NSX-NTT hầu như chỉ áp dụng cho hệ tập trung nhờ trao đổi thông tin qua vùng nhớ chung (bộ đệm) Hiện nay, người ta tập trung nghiên
cứu và phát triển mô hình ở mức có thể áp dụng cho các hệ phân tán bằng cách ánh xạ các giá trị đóng vai trò điều kiện cho đồng bộ giữa 2 tiến trình ở xa Đó cũng chính là
mục tiêu quan trọng nhất của đề tài nghiên cứu xây dựng giải pháp kỹ thuật giám sát
các ho ạt động đồng thời trong hệ phân tán
Riêng đối với vấn đề triển khai ứng dụng vào các hệ thống lớn, phức tạp như các
hệ sản xuất - kinh doanh, thì việc tìm ra phương pháp để nhận biết giới hạn số lượng hàng hoá cần phải sản xuất, phòng và tránh dư thừa là vấn đề mấu chốt nhất Đó chính
là điều kiện cân bằng giữa cung và cầu trong sản xuất và tiêu dùng toàn hệ thống Ứng
Trang 3Tiếp theo, ta sẽ giới thiệu một trong những nội dung quan trọng là vấn đề trật tự hóa từng phần giữa các sự kiện trong hệ phân tán
2 Tr ật tự hóa từng phần giữa các sự kiện diễn ra trong hệ
Để 2 quá trình sản xuất và tiêu thụ diễn ra một cách tự nhiên, nhịp nhàng và đồng bộ với nhau, ta cần phải quan tâm đặc biệt đến cơ chế cho phép trật tự hoá từng
phần giữa các sự kiện diễn ra đồng thời trong hệ với sự tham gia cơ hữu của hệ thống truyền thông Theo nguyên lý phân tán, cơ chế trật tự hóa từng phần chính là các điều kiện cứng mà một tiến trình nào đó của hệ muốn phát triển tiếp tục, thì bắt buộc phải
thỏa mãn bước ki ểm tra kề liền trước đó Sự kiện được hiểu là các hành vi nh ận và phát
thông điệp Trong một hệ, ta có tiến trình động lực và tiến trình thường Giữa 2 tiến trình NSX và NTT, tiến trình NSX được xem là tiến trình động lực, có nghĩa là sự phát triển của tiến trình này sẽ là nguyên nhân dẫn đến phát triển của các tiến trình khác (cụ
thể là tiến trình NTT)
Trật tự hóa có được là do sắp xếp (thiết lập một trật tự) các sự kiện Điều duy
nhất cần lưu tâm ở đây là trong khi đang sắp xếp cho tập sự kiện này chưa xong, thì các
sự kiện khác lại đến ngẫu nhiên và số lượng không giống nhau Do vậy, tập sự kiện là
kết quả của việc sắp xếp giữa các Server là không giống nhau Điều đó sẽ rất nghiêm
trọng trong trật tự hóa tổng quát chặt chẽ
Giữa các trạm hay Server (sau này ta gọi chung là Server) sự khác nhau trật tự
giữa các sự kiện chỉ có thể thể hiện được thông qua việc trao đổi các thông điệp với nhau
Giả sử rằng ta có thể xác định một trật tự giữa các sự kiện của hệ nhờ vào quan hệ được
ký hiệu là :
→ gọi là có trước hay ở ngay trước
Quan hệ này tối thiểu phải thõa mãn được các ràng buộc thể hiện trong bảng II.1
dưới đây
Bảng II.1 Các ràng buộc quan hệ
Nếu A và B là hai sự kiện của cùng một Server và nếu A đuợc
thực hiện trước B thì theo trật tự cục bộ của Server ta có :
A → B
2 C2 Nếu A là phát thông điệp bởi một Server nào đó và nếu B là
thu của thông điệp này thì ta có : A → B
Trang 4Ràng buộc C1 thể hiện một trật tự có được bởi quan hệ có trước là tương thích với
các trật tự cục bộ được định nghĩa trong
từng Server Còn ràng
buộc C2 nói lên nguyên tắc nhân quả
Phần trình bày bên trái của hình II.2 cho ta hình dung về
hoạt động của 2 Server với các sự
kiện phát và nhận thông điệp theo thời
gian t Đây là ví dụ về
trật tự hóa từng phần
của các sự kiện trong hệ, trong đó quan hệ có trước xác định một trật tự từng phần trên
tập hợp các sự kiện của hệ và trật tự này được thể hiện trong phần bên phải
3 Mô hình ng ười sản xuất - người tiêu thụ phân tán
Trong phần này, ta sẽ đi sâu vào việc phân tích mô hình NSX-NTT phân tán làm
cơ sở cho việc xây dựng giải pháp kỹ thuật giám sát hệ thống
Bài toán NSX-NTT là mô hình quen thuộc trong phần nguyên lý hệ điều hành các máy tính Theo đó thì khả năng tiêu thụ là nguyên nhân chính hạn chế số lượng hàng hóa sản xuất ra sao cho lượng hàng hóa sản xuất ra đó không được phép vượt quá số
lượng tiêu thụ một giá trị lớn hơn N Người sản xuất P và người tiêu thụ C là 2 người
nằm trên 2 Server cách xa nhau (liên lạc qua hệ thống đường truyền)
Giả sử rằng NP là số lượng sản xuất ra và NC là số lượng tiêu thụ tại thời điểm
khởi sự (start), C chỉ tiêu thụ được một sản phẩm, nếu sản xuất sản phẩm đó đã diễn ra
Điều đó có nghĩa là, nếu :
Tương tự, P chỉ sản xuất một thông tin, nếu :
Hai quan hệ (1) và (2) thể hiện điều kiện của việc đồng bộ hóa
Trong hệ phân tán, ta có thể sử dụng 2 biến NP và NC thể hiện số lượng chính xác
sản xuất đã diễn ra và số lượng chính xác tiêu thụ đã thực hiện Đồng thời ta cũng dùng
2 biến NP’ và NC’ để thể hiện giá trị ảnh của NP và NC
Ta sẽ chứng minh rằng một sự đồng bộ hóa chính xác được đảm bảo bằng việc xác nhận trên mỗi Server các điều kiện nêu trong (1) và (2)
Trên Server sản xuất :
Hình II.1 Sơ đồ mô tả trật tự từng phần
TRẬT TỰ TỪNG PHẦN
CỦA CÁC SỰ KIỆN
A1 →A2 → A3 → A4 →A5
B1 →B2 →B3 → B4
Trao đổi thông điệp
A1 →B2 và B3 →A4
Chuyển qua
A1 →A2 →B2 → B3 → B4
B1 →B2 → B3 → A4 →A5
A1 →A2 →B2 → B3 → A4 →A5
Các sự kiện không so sánh
B1 và A1 , A2 ,A3
A3 và B2 , B3 , B4
A1 A2 A3 A4
B1 B2 B3 B4 B5
Trang 5Trên Server tiêu thụ :
Thực tế, ta có thể viết :
trong đó, np s ố lượng thông tin đã sản xuất bởi P mà C không biết,
nc s ố lượng thông tin đã tiêu thụ bởi C mà P không biết
Không c ần tính đến (5) và (6), các điều kiện (3) và (4) bao hàm các điều kiện ban đầu nêu trong (1) và (2)
Ta có thể khái quát hóa phương pháp này cho điều kiện đồng bộ hóa bằng công
thức :
∑
=
>
Q
i
i
C
1
(7) trong đó, Ci và K là các hằng số
Đến đây, ta hoàn toàn có khả năng và điều kiện mạnh hơn bằng cách thay thế tất
cả các Xi mà hệ số của nó là đại lượng dương bằng các ảnh của nó X'i, nếu và chỉ nếu các Xi là các biến không lùi
Việc vận dụng thông thường của vấn đề này trên hệ thống tập trung sử dụng loại
tr ừ tương hỗ để truy cập đến các biến trạng thái chia xẻ được biểu hiện chính xác số
lượng sản xuất và tiêu thụ Điều đó cho ta một trật tự tổng quát giữa các sự kiện phối
hợp ngay từ đầu sản xuất và tiêu thụ
Song vì nguyên nhân ở xa nhau (phải qua hệ thống đường truyền) giữa người
sản xuất và người tiêu thụ mà trật tự tổng quát này là không cần thiết và chỉ cần sử dụng
để đồng bộ hóa các bản sao các biến trạng thái gần đúng là đủ
Cuối cùng, ta cần lưu ý là trong hệ thống người sản xuất - người tiêu thụ, nếu
N = 1, thì có s ự liên kết chặt chẽ giữa 2 tiến trình cho phép xác định một trật tự chặt
ch ẽ giữa các sự kiện
4 Gi ải pháp kỹ thuật giám sát trong hệ thống NSX-NTT
4 1 Công tơ sự kiện
Trên cơ sở những vấn đề vừa nêu, ta nghiên cứu xây dựng cơ chế đồng bộ bao
gồm các công tơ sự kiện phù hợp với các yêu cầu nêu ra với nguyên tắc cơ bản là mỗi
một công tơ được kết hợp với một nhóm các sự kiện E
Như thế, trên một công tơ sự kiện nào đó ta cần phải xác định tối thiểu 3 hàm (hoặc thủ tục) như trong bảng IV.1 dưới đây
Trang 6Bảng IV.1 Các hàm của hệ NSX-NTT
1
PC_tang(E) Tăng nội dung công tơ lên 1 đơn vị có nghĩa là một sự
kiện nhóm E đến
2 PC_trvan(E) Cung cấp giá trị hiện hành của công tơ phối hợp với E
3 PC_cho(E,n) Treo tiến trình gọi chừng nào giá trị công tơ còn nhỏ
hơn n
Mỗi công tơ được khởi động ngay khi thành lập nó Khi xây dựng chương trình Java, ta sử dụng 4 biến NP, NC, NP’ và NC’ đóng vai trò công tơ sự kiện và ảnh của các công tơ đó Hai công tơ sự kiện ảnh NP’ và NC’ được khởi động bằng giá trị 0 Hai biến
nguyên NP và NC là
2 biến cục bộ đối với
tiến trình người sản
xuất P và người tiêu
thụ C
Thuật toán cho phép biểu diễn hoạt động của 2 tiến trình
này được trình bày trong hình IV.1 dưới đây
4.2 Trao đổi thông điệp
Thông điệp trong hệ NSX-NTT đóng vai trò quan trọng trong việc trật tự hóa các
sự kiện và dựa vào đó ta có thể có được sự đồng bộ cần thiết Ở đây, trong tiến trình NSX, lệnh sản xuất chính là hình thành thông điệp, còn trong tiến trình NTT, lệnh tiêu
th ụ cho phép lấy ra từ bộ đệm một hay một số thông điệp nào đó
Các thao tác tại Server sản xuất là :
• Kiểm tra điều kiện (NP’ - NC) > 0 nhận giá trị true, thì lấy ra thông điệp
(tieu_thu)
• Tăng giá trị ảnh NP’ trên Server tiêu thụ lên 1 đơn vị (có thể hơn 1 đơn vị)
bằng cách phát thông điệp vừa hình thành cho Server này qua đường truyền
• Tăng NP lên 1 đơn vị
• Chuyển sang trạng thái chờ và kiểm tra
ại Server sản xuất là :
PRODUCER
Vòng lặp
PC_cho(NC’,NP-N+1)
san_xuat
PC_tang(NP’)
NP = NP+1
Kết thúc vòng lặp
CONSUMER
Vòng lặp PC_cho(NP’,NC+1) { Chuyển khi NP’-NC>0 } tieu_thu
PC_tang(NC’)
NC = NC+1 Kết thúc vòng lặp
Trang 7• Kiểm tra điều kiện (NP - NC’) < N nhận giá trị true, thì hình thành thông
điệp (san_xuat)
• Tăng giá trị ảnh NC’ trên Server sản xuất lên 1 đơn vị (có thể hơn 1 đơn
vị) bằng cách phát thông điệp cho Server này qua đường truyền
• Tăng NC lên 1 đơn vị
• Chuyển sang trạng thái chờ và kiểm tra
Có 3 loại thông điệp cơ bản được sử dụng trong hệ phục vụ việc trao đổi thông tin giữa 2 tiến trình và sử dụng cho thuật toán loại trừ tương hỗ ở mức các biến đóng vai trò công tơ Như vậy, Server i của mạng có thể gửi cho Server kia thông điệp có dạng
(T, Vi, i ) , trong đó Vi là giá trị của thông điệp có nghĩa là số lượng đã sản xuất hay tiêu
thụ, T có thể nhận tối thiểu một trong ba giá trị là REQ, REL và ACQ
Ba giá trị này xác định bản chất của 3 loại thông điệp thường sử dụng (xem bảng IV.2)
B ảng IV.2 Các hàm của hệ NSX-NTT
Thông điệp REQ được phát đi khi trạm i muốn vào
trong đoạn găng
Thông điệp REL được phát đi khi trạm i đã rời khỏi
đoạn găng
Thông điệp ACQ được gửi bởi trạm j cho trạm i, khi
trạm j đã nhận được từ trạm i thông điệp REQ
4.3 Xây dựng hệ thống giám sát MPCM DS v.3.2
Hệ thống giám sát
MPCMDS
v 3.2
Cài đặt/Bỏ cài đặt
v 3.2
Hệ thống CSDL
nội tại
Thống kê
Tài chính
Báo cáo
Truyền thông và Cấu hình hệ thống
Monitoring II
Monitoring I
Ra quyết định quản lý
v.3.2 (Monitoring of Producer - Consumer Model for Distributed Systems) được xây d ựng d ựa trên mô hình hoạt động của 2 tiến trình NSX-NTT [10,12,14]
Hệ thống bao gồm các thành
phần chính phản ảnh trong hình IV.2, trong đó ta có các
mô đun sau đây :
Trang 81 Monitoring I với chức
năng chủ yếu là mô phỏng hoạt
động bằng sơ đồ về quá trình
hoạt động đồng thời của NSX và
NTT ở xa, thông qua hệ thống
đường truyền Tại đây, NSD là
cán bộ quản lý sẽ cho ra các
quyết định về quản trị hệ thống
dựa vào phương tiện cung cấp
thông tin động
2 Monitoring II với chức
năng chủ yếu là mô phỏng hoạt
động của hệ đa Server thông qua
hệ thống viễn thông Các yếu tố
kỹ thuật như bộ đệm, các biến
đồng bộ, đèn báo, thông điệp, được sơ đồ hóa trên màn hình Thông tin ở đây đóng vai trò trợ giúp cho người quản trị hệ thống mạng nhìn thấy và quyết định can thiệp khi
cần thiết nhằm làm cho hệ hoạt động hiệu quả hơn
3 Hệ thống quản lý CSDL nội tại cho phép điều khiển các hoạt động liên quan đến CSDL riêng của MPCMDS
4 Mô đun cài đặt sẽ giúp chúng ta hình thành các giá trị ban đầu của một
hệ đồng bộ và tổ chức các Server kết
nối được và làm việc tốt với nhau qua
hệ thống đường truyền xa
v.3.2 Những thông tin lưu trữ ở đây sẽ giúp ích rất nhiều cho quá trình thống kê, báo cáo và theo dõi sự cố kỹ thuật trong quá trình hoạt động của mạng
5 Các mô đun phụ trợ khác (xem hình IV.3)
Trong hình IV.3, ta thấy các tham
số cần phải khai báo khi cài đặt hệ trên các Server, trong đó đáng quan tâm
nhất là các giá trị khởi động cho một
hệ đồng bộ hóa các tiến trình ở xa qua mạng viễn thông Việc cài đặt có thể được tiến hành từ xa qua mạng IP, nếu ta không có điều kiện tiếp cận đến hệ đa Server
Hai mô đun Monitoring I và II (xem hình IV.2) cho ta thấy có thể có được đồng thời
2 loại thông tin giám sát khác nhau là giám sát t ổ chức và giám sát k ỹ thuật và tương ứng với chúng là 2 loại quyết định khác nhau về bản chất Đối với NSD là nhà quản lý đơn vị sản xuất - kinh doanh, thì giám sát bằng thông tin trực quan có vai trò đặc biệt quan trọng trong việc hình thành các quyết định một cách khá nhanh chóng, chính xác
và kịp thời (xem hình IV.4)
5 K ết luận
Qua nghiên cứu giải pháp kỹ thuật giám sát các hoạt động đồng thời trong hệ phân
tán, chúng tôi đã thực hiện được :
1 Hệ thống hóa lý thuyết về mô hình người sản xuất - người tiêu thụ, đồng thời minh
chứng tính đúng đắn của mô hình này khi ứng dụng cho bài toán phân tán trong việc
Trang 92 Làm rõ sự khác nhau của mô hình tập trung và phân tán Chỉ ra những lợi ích khi ứng dụng hệ vào thực tế để điều khiển các hệ thống lớn như các hệ thống sản xuất - kinh doanh hiện trạng trong việc tăng cường nắm bắt thông tin nhanh chóng, chính xác và kịp thời và từ đó có thể đưa ra được những quyết định kinh tế h ợp lý trong khi thực hiện các ý đồ chiến thuật và phát triển các chiến lược sản xuất - kinh doanh
của đơn vị mình
3 Nghiên cứu hình thành giải pháp kỹ thuật khả thi cho phép điều khiển các tiến trình
hoạt động đồng thời, ở xa thông qua phương pháp giám sát các hệ thống lớn, phức
tạp và phân tán
4 Hình thành hệ chương trình MPCMDS
5 Thử nghiệm chương trình đã cài đặt và vận hành thử để rút ra các kết luận cần thiết cho sự phát triển tiếp tục đề tài sau này
v.3.2 bằng ngôn ngữ JAVA với thư viện phân tán CORBA và RMI trong môi trường mạng TCP/IP
Những hạn chế và khó khăn trong quá trình nghiên cứu như môi trường giả định TCP/IP và máy ảo JVM, các hướng nghiên cứu khác nhau của thế giới và trong nước,
thời gian và năng lực nghiên cứu có hạn của các tác giả sẽ được tiếp tục khắc phục để công trình này được hoàn thiện hơn Các tác giả rất mong muốn sự đóng góp ý kiến từ phía các chuyên gia, bạn bè đồng nghiệp
TÀI LI ỆU THAM KHẢO
[1] Nguyễn Thúc Hải, Mạng máy tính và các hệ thống mở, NXB Giáo dục, Hà Nội, 1997
[6] Mohammad M.Fuad and Michael J Oudshoorn, AdJava-Automatic Distribution of Java,
Application, 2001
[7] M Tamer Ozsu, Patrick Valduriez (Trần Đức Quang biên dịch), Nguyên lý các hệ cơ sở dữ
li ệu phân tán, Tập I và II, NXB Thống kê, Hà Nội, 1999
[8] Christian Lavault, Evoluation des algorithmes distribues, (Analyse, Complexite, methodes),
Hermes, Paris, 1995
[9] Lê Văn Sơn, Trương Thị Mỹ Dung, Nghiên cứu giải pháp kỹ thuật giám sát các hoạt động
đồng thời trong hệ phân tán, Báo cáo tại Hội thảo quốc gia về CNTT và Truyền thông, TP
[10] http://www.sun.com
[11] http://www.uit.edu.vn/data/gtrinh/TH106/index.php
[12] http://javavietnam.org
[13] http://en.wikipedia.org/wiki/Producer-Consumer_Problem
[14] http://www.java.com/en
[15] http://fedoranews.org
[16] www.onjava.com/pub/a/onjava/2003/10/08/multithreaded_xml.html