Máy tínhCông nghệ thông tin

Một giao dịch là gì? hệ thống xử lý giao dịch

Trong một thế giới mà tất cả mọi thứ đang thay đổi quá nhanh, chúng ta không thể cho dừng lại phút. Này áp dụng cho việc tiếp nhận thông tin mới. Unknown hạn hoặc phiên bản mới nhất của phần mềm - đó là một dịp để lấp đầy kiến thức trong một khu vực cụ thể. Hôm nay chúng ta sẽ nói về những gì các giao dịch, làm thế nào nó hoạt động.

Giới thiệu về thuật ngữ

Một loạt các phần mềm để tự động quy trình kinh doanh thiết lập vững chắc trên thị trường trong vòng 15 năm trở lại đây. Điều này đòi hỏi khả năng làm việc với phần mềm trên cấp độ khác nhau của sự tương tác: như các nhà điều hành, lập trình viên, kế toán vv Do đó, điều quan trọng là phải hiểu một số cơ chế của chương trình. Để bắt đầu, chúng ta hãy đối phó với như vậy thường xuyên và đáng sợ nhiều thuật ngữ giao dịch. Thông thường, để mượn lời của người đẹp ẩn xa một hiện tượng phức tạp như vậy, như nhiều nhận ra, thốt ra một thuật ngữ mới, cố nó bằng tai. Hãy hiểu rằng một giao dịch như vậy.

định nghĩa

Ký hiệu này được sử dụng để tham khảo bất kỳ sản phẩm mà thực hiện cơ sở dữ liệu. Một số hoạt động được một cách hợp lý kết hợp thành một và chạy xen kẽ với nhau, và có một giao dịch. Trong cuộc sống hàng ngày, giao dịch có thể được coi là một chuỗi các thủ tục như "tỉnh táo - rửa - mặc - ăn sáng - đi làm."

Hãy xem xét các khái niệm trên để sản phẩm Ví dụ 1C. Giao dịch - đây là chuỗi bất khả phân tương tự. Một mô hình tốt có thể đóng vai trò là một kỷ lục của đơn vị hàng hóa: mở thư mục mong muốn, tạo một mục mới, điền vào các trường tương ứng. Để đảm bảo rằng tất cả những hành động này đã dẫn đến kết quả mong muốn, nó là cần thiết để thực hiện chúng chặt chẽ từ đầu đến cuối. Chỉ khi đó các thủ tục sẽ được coi là một thành công. Nếu không, các giao dịch bị hủy bỏ.

Các quá trình này có thể là tự động, được cung cấp trong hệ thống, và bằng tay bởi các nhà phát triển để kết thúc sau khi mua sản phẩm hoàn chỉnh để làm cho sau này dễ dàng hơn cho người dùng của một công ty cụ thể. Bên cạnh đó, chế độ tự động, khi các hành vi của hệ thống được quy định bởi cơ chế tích hợp, giao dịch có thể được chuyển đổi sang chạy.

Giao dịch trong 1C: sự tinh tế của các built-in ngôn ngữ

một giao dịch trong trường hợp tổng quát là gì, chúng ta có thể hiểu được. Nhưng vì mỗi công ty tham gia vào phát triển phần mềm, làm cho nó theo cách riêng của họ, có những khác biệt nhất định giữa các giao dịch nói chung và các giao dịch trong 1C nói riêng. Ví dụ, lồng nhau (giao dịch trong giao dịch) không được hỗ trợ trong 1C.

Từ quan điểm của các nhà khai thác cú pháp tích hợp ngôn ngữ đơn giản. Bắt đầu quá trình này được công bố bởi một BeginTransaction thủ tục đặc biệt (). ZafiksirovatTranzaktsiyu () thủ tục được sử dụng để ghi lại những thay đổi trong quá trình thực hành động. Nếu trong quá trình nó không thành công, nó là OtmenitTranzaktsiyu thể () để hoàn tác thay đổi cam kết.

Tại sao sử dụng một giao dịch là một lợi thế? Bởi vì mã trong các thủ tục này là nhanh hơn nhiều. Nó là để này và tìm bất kỳ lập trình viên. Sự khác biệt về tốc độ có thể không được như dễ nhận thấy nếu người dùng 1C trong văn phòng 1-2 người lao động, nhưng nó là không thể không cảm thấy khi nói đến toàn bộ các phòng ban, đồng thời để thực hiện các công trình khác nhau trong chương trình này.

cạm bẫy

Ngoài những lợi thế rõ ràng, bao gồm một sự gia tăng nghiêm trọng trong tốc độ đọc và ghi lại khi làm việc với cơ sở dữ liệu, trong một giao dịch có dấu trừ. Hãy trở lại với ví dụ trước đó của cuộc sống. một giao dịch mà không được thực hiện bởi một người, và cả gia đình là gì? Mọi người đều đang cố gắng để có được vào phòng tắm để tắm rửa trước khi tất cả đám đông trong nhà bếp vì nó là thời gian ăn sáng. Kết quả là, các thành viên gia đình không hài lòng với nhau. Tốt nhất, nó chỉ là một khởi đầu tồi tệ trong ngày, và lúc tồi tệ nhất - vì đến trễ cho công việc, một lời khiển trách từ cấp trên của mình, để ngăn chặn.

Trong chương trình có là như nhau. Nếu tất cả người dùng sẽ bắt đầu sửa đổi dữ liệu cùng lúc trong cùng một tài liệu, được coi là phiên bản cuối cùng? dữ liệu nào được sử dụng để tiết kiệm? Để tránh nhầm lẫn như vậy, có một cơ chế khóa. Điều này có nghĩa rằng trong khi một người dùng đang làm việc trên một tài liệu, đứng thứ hai trong hàng đợi ảo và chờ đợi. Sau khi hoàn thành công hay rollback tài liệu có thể không làm việc cho người sử dụng tiếp theo.

Hoặc có thể không được kiểm soát ổ khóa?

Khái niệm về một giao dịch không thể được giải quyết đầy đủ mà không có vấn đề ổ khóa quá mức. sự vắng mặt của ổ khóa dẫn đến quá trình bình thường của việc đọc và viết với kết quả sai tại đầu ra, hoặc quá nhiều, ức chế hoạt động của toàn bộ doanh nghiệp: tà ác hơn là gì?

Giải pháp tốt nhất - kiểm soát ổ khóa, mà là giá trị trung bình bằng vàng. Một lập trình viên có thẩm quyền có thể tùy chỉnh một cơ chế hiện có để các nhu cầu của tổ chức để các tài liệu thực sự quan trọng được xử lý trong hàng đợi theo thứ tự. Theo các yếu tố cấu hình tương tự, mà không yêu cầu ổ khóa, bạn có thể cho phép chỉnh sửa miễn phí.

Do đó, một phân tích kịp thời của các giao dịch và thái độ đúng đắn để khóa cho phép sử dụng đầy đủ các tính linh hoạt của hệ thống "1C: Doanh nghiệp" và tối ưu hóa hoạt động cơ sở dữ liệu, giảm thiểu những thiệt hại thời gian.

Điều gì gây ra khóa quá mức?

Câu hỏi đặt ra không phải là tu từ. Nếu cần loại bỏ các khóa, sẽ có sự nhầm lẫn và hỗn loạn. Cơ sở dữ liệu sẽ thu thập các dữ liệu sai vì số dư ghi-off đồng thời, hoặc ngược lại, những dồn tích của tài sản. Nhưng hậu quả của một loại như vậy mà sẽ xuất hiện cùng một lúc. Lần đầu tiên, công việc sẽ đi một cách nhanh chóng, tạo ra ảo giác về tính đúng đắn của sự lựa chọn của thất bại khóa. Mặt khác, một số lượng lớn các ổ khóa vô hình thành ngay lập tức gây ra thông báo lỗi. "Không thể hoàn tất giao dịch an toàn" - cảnh báo hệ thống của chúng tôi. có nghĩa là gì? Hai lẫn nhau chặn giao dịch với nhau để không ai có thể một trong hai hoàn thành công việc, hoặc để thực hiện việc hủy bỏ. Vòng tròn luẩn quẩn của giao dịch "chết" sẽ treo trong cơ sở dữ liệu trước khi phát hiện, làm giảm đáng kể hiệu suất hệ thống.

Không cần thiết hành động hủy phẫu thuật để tăng số lượng các mục trong nhật ký. Bên cạnh đó, một hệ thống như vậy là không khả thi, vì người dùng thậm chí lớn hơn chỉ đơn giản là chôn nó dưới sức nặng của ổ khóa "chết". Thời gian chết luôn phát triển. Làm thế nào để tránh những tình huống như vậy?

mức độ cách ly - một cách không để mắc cạn

Ngoài thực tế là một giao dịch như vậy, chúng tôi đề cập về những cạm bẫy. Tiếp tục tương tự, chúng tôi có thể tự tin khẳng định rằng sự thay đổi trong mức độ của các khóa - một công cụ đáng tin cậy một phi công trên một cuộc hành trình đến 1C biển. Có hai mức độ cách ly: "read-only, không có mục nhập" và "không ghi hoặc đọc sách." Trong việc lựa chọn chế độ tự động là không có sẵn. Nhưng nó là đủ để dịch các ứng dụng trong chế độ quản lý, và bạn có thể đặt hạn chế "thông minh", lựa chọn không chỉ tài liệu quan trọng, mà còn gán cho họ mức độ thích hợp của vật liệu cách nhiệt.

Tuy nhiên, cũng như các tổ chức công việc - là trên hết, ngăn ngừa các tình huống khẩn cấp, và không chỉ thanh lý kịp thời đã xảy ra thất bại. quản trị cơ sở dữ liệu Assistant sẽ cung cấp các hệ thống xử lý giao dịch. Đó là trên cơ sở dữ liệu, làm thế nào là bất kỳ hoạt động trên hệ thống, cho dù họ đã được hoàn thành hoặc bị hủy bỏ, người ta có thể dự đoán các hành vi tiếp tục của hệ thống và ngăn chặn các mối đe dọa tiềm năng.

Một bản tóm tắt chung

Chúng tôi xử lý với các định nghĩa của các giao dịch, coi là một sơ đồ của quá trình từ bên trong, đã làm quen với các cách khác nhau để điều chỉnh các hoạt động trong một cơ sở thông tin duy nhất.

Như đã trình bày, cơ chế là không dễ dàng, nhưng dễ hiểu và giải quyết tốt hơn các lập trình viên thậm chí mới làm quen và quản trị cơ sở dữ liệu. phương pháp kiểm soát có thể chưa được đưa đến sự hoàn hảo, và để tránh các vấn đề trong một chế độ hoàn toàn tự động, quá, là không thể, nhưng, tuy nhiên, với mỗi phiên bản mới của cuộc sống phát triển phần mềm trở nên dễ dàng hơn.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 vi.birmiss.com. Theme powered by WordPress.