国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

Rumah rangka kerja php ThinkPHP Bagaimana untuk melaksanakan pemprosesan transaksi teragih dalam ThinkPHP6?

Bagaimana untuk melaksanakan pemprosesan transaksi teragih dalam ThinkPHP6?

Jun 12, 2023 am 09:39 AM
thinkphp Urus niaga yang diedarkan berurusan dengan

Dengan pembangunan Internet dan pengembangan berterusan senario aplikasi, keperluan untuk prestasi dan kebolehpercayaan sistem menjadi lebih tinggi dan lebih tinggi. Dalam senario perniagaan yang kompleks, berbilang perkhidmatan selalunya perlu diselesaikan secara kolaboratif, yang memerlukan transaksi yang diedarkan untuk diproses. Artikel ini akan memperkenalkan cara melaksanakan pemprosesan transaksi teragih dalam ThinkPHP6.

1. Konsep asas transaksi teragih

1. Urus niaga teragih

Sistem teragih merujuk kepada program dan sumber data pada berbilang komputer, yang dijalankan melalui rangkaian Sambung dan berkomunikasi , dan bekerjasama untuk menyelesaikan tugas. Dalam kes ini, jika berbilang transaksi perlu melibatkan berbilang sumber, penyelarasan transaksi teragih diperlukan. Urus niaga teragih merujuk kepada urus niaga yang diselesaikan secara kolaboratif oleh berbilang transaksi dan perlu memenuhi sifat ACID.

2. Atribut ACID

Dalam pangkalan data, ACID merujuk kepada empat sifat atomicity, konsistensi, pengasingan dan ketahanan.

Atomicity: Merujuk kepada fakta bahawa urus niaga ialah unit kerja yang tidak boleh dibahagikan, sama ada siap sepenuhnya atau tidak selesai sama sekali, dan tidak ada penyelesaian separa.

Ketekalan: merujuk kepada keadaan pangkalan data mesti kekal konsisten sebelum dan selepas urus niaga dilaksanakan Contohnya, dalam transaksi pemindahan, jumlah baki akaun kekal tidak berubah sebelum dan selepas pemindahan dilaksanakan.

Pengasingan: Apabila berbilang transaksi dilaksanakan secara selari, pelaksanaan satu transaksi tidak boleh diganggu oleh transaksi lain.

Ketahanan: bermakna setelah transaksi diserahkan, keputusannya hendaklah disimpan secara kekal dalam pangkalan data.

2. Pelaksanaan transaksi teragih dalam ThinkPHP6

1 Masalah dengan transaksi teragih

Dalam pangkalan data hubungan tradisional, pelaksanaan transaksi teragih memerlukan penggunaan dua Fasa Komit ( 2PC), tetapi kaedah ini mempunyai beberapa masalah, seperti titik kegagalan tunggal, kesesakan prestasi, dll. Oleh itu, dalam data besar dan senario aplikasi konkurensi tinggi, kaedah lain perlu digunakan untuk melaksanakan transaksi teragih.

2. Penyelesaian transaksi teragih

Untuk melaksanakan pemprosesan transaksi teragih dalam ThinkPHP6, anda boleh menggunakan perisian tengah seata sumber terbuka membahagikan aplikasi kepada tiga peranan, iaitu TC ( Transaction Coordinator), TM (Pengurus Urus Niaga) dan RM (Pengurus Sumber):

TC (Penyelaras Urus Niaga): Penyelaras Transaksi, bertanggungjawab untuk menyelaraskan sumber modul transaksi yang diedarkan dan mencapai konsistensi transaksi.

TM (Pengurus Urus Niaga): Pengurus urus niaga, bertanggungjawab untuk operasi berkaitan transaksi seperti pembukaan transaksi, penyerahan, pengembalian, dsb.

RM (Pengurus Sumber): Pengurus sumber, bertanggungjawab mengurus sumber, seperti operasi pangkalan data, operasi MQ, dsb.

3. Penggunaan seata

Sebelum menggunakan seata, anda perlu memasang dan mengkonfigurasi seata, termasuk mencipta TC, RM dan sumber lain. Selepas pemasangan dan konfigurasi selesai, anda boleh menggunakan seata untuk memproses transaksi yang diedarkan.

Dalam modul yang memerlukan transaksi teragih, anda perlu menambah konfigurasi berikut dalam application.properties:

<!-- seata依賴庫 -->
<dependency>
    <groupId>io.seata</groupId>
    <artifactId>seata-all</artifactId>
    <version>${seata.version}</version>
</dependency>

(3) Pada permulaan transaksi, dayakannya secara global

Pada permulaan transaksi, anda perlu mendayakannya secara global:

# 配置seata的全局事務(wù)ID生成器
seata.tx-service-group=my_group
# type,AT表示AT模式,XA表示XA模式
seata.tx-type=AT
# 自動代理數(shù)據(jù)源
seata.autoproxy.datasource=true

(4) Menggunakan RM dalam transaksi

Apabila menggunakan RM dalam transaksi (seperti pangkalan data RDMS), anda perlu menggunakan ejen yang disediakan oleh seata , uruskan sumber:

// 開啟全局事務(wù)
GlobalTransactionContext.begin(transactionName);

(5) Pada akhir transaksi, lakukan komitmen global

Pada akhir transaksi, komitmen global diperlukan:

// 使用代理獲取connection
conn = ((DataSourceProxy) dataSource).getConnection();

kerana seata akan Kandungan transaksi yang diedarkan terkandung dalam middleware, jadi apabila menggunakan seata, logik perniagaan dan pemprosesan transaksi yang diedarkan boleh diasingkan untuk memudahkan pengurusan dan penyelenggaraan.

3. Ringkasan

Artikel ini menggabungkan ThinkPHP6 dan middleware seata untuk memperkenalkan proses pemprosesan transaksi teragih dalam sistem teragih dan penggunaan perisian tengah seata. Dalam aplikasi sebenar, adalah perlu untuk memilih antara prestasi dan kebolehpercayaan mengikut senario perniagaan tertentu untuk pemprosesan transaksi teragih.

Atas ialah kandungan terperinci Bagaimana untuk melaksanakan pemprosesan transaksi teragih dalam ThinkPHP6?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Tutorial PHP
1502
276
Proses operasi hos perkhidmatan WIN10 yang menduduki terlalu banyak CPU Proses operasi hos perkhidmatan WIN10 yang menduduki terlalu banyak CPU Mar 27, 2024 pm 02:41 PM

1. Mula-mula, kita klik kanan ruang kosong bar tugas dan pilih pilihan [Task Manager], atau klik kanan logo mula, dan kemudian pilih pilihan [Task Manager]. 2. Dalam antara muka Pengurus Tugas yang dibuka, kami klik tab [Perkhidmatan] di hujung kanan. 3. Dalam tab [Perkhidmatan] yang dibuka, klik pilihan [Buka Perkhidmatan] di bawah. 4. Dalam tetingkap [Services] yang terbuka, klik kanan perkhidmatan [InternetConnectionSharing(ICS)], dan kemudian pilih pilihan [Properties]. 5. Dalam tetingkap sifat yang terbuka, tukar [Buka dengan] kepada [Disabled], klik [Apply] dan kemudian klik [OK]. 6. Klik logo mula, kemudian klik butang tutup, pilih [Mulakan Semula], dan selesaikan mula semula komputer.

Bagaimana untuk menjalankan projek thinkphp Bagaimana untuk menjalankan projek thinkphp Apr 09, 2024 pm 05:33 PM

Untuk menjalankan projek ThinkPHP, anda perlu: memasang Komposer untuk mencipta projek, masukkan direktori projek dan laksanakan php bin/console serve;

Terdapat beberapa versi thinkphp Terdapat beberapa versi thinkphp Apr 09, 2024 pm 06:09 PM

ThinkPHP mempunyai berbilang versi yang direka untuk versi PHP yang berbeza. Versi utama termasuk 3.2, 5.0, 5.1 dan 6.0, manakala versi kecil digunakan untuk membetulkan pepijat dan menyediakan ciri baharu. Versi stabil terkini ialah ThinkPHP 6.0.16. Apabila memilih versi, pertimbangkan versi PHP, keperluan ciri dan sokongan komuniti. Adalah disyorkan untuk menggunakan versi stabil terkini untuk prestasi dan sokongan terbaik.

Bagaimana untuk menjalankan thinkphp Bagaimana untuk menjalankan thinkphp Apr 09, 2024 pm 05:39 PM

Langkah-langkah untuk menjalankan ThinkPHP Framework secara setempat: Muat turun dan nyahzip ThinkPHP Framework ke direktori tempatan. Buat hos maya (pilihan) yang menunjuk ke direktori akar ThinkPHP. Konfigurasikan parameter sambungan pangkalan data. Mulakan pelayan web. Mulakan aplikasi ThinkPHP. Akses URL aplikasi ThinkPHP dan jalankannya.

Ketahui cara mengendalikan aksara khas dan menukar petikan tunggal dalam PHP Ketahui cara mengendalikan aksara khas dan menukar petikan tunggal dalam PHP Mar 27, 2024 pm 12:39 PM

Dalam proses pembangunan PHP, berurusan dengan aksara khas adalah masalah biasa, terutamanya dalam pemprosesan rentetan, aksara khas sering terlepas. Antaranya, menukar aksara khas kepada petikan tunggal adalah keperluan yang agak biasa, kerana dalam PHP, petikan tunggal adalah cara biasa untuk membungkus rentetan. Dalam artikel ini, kami akan menerangkan cara mengendalikan petikan tunggal penukaran aksara khas dalam PHP dan memberikan contoh kod khusus. Dalam PHP, aksara khas termasuk tetapi tidak terhad kepada petikan tunggal ('), petikan berganda ("), segaris ke belakang (), dsb. Dalam rentetan

Mana yang lebih baik, laravel atau thinkphp? Mana yang lebih baik, laravel atau thinkphp? Apr 09, 2024 pm 03:18 PM

Perbandingan prestasi rangka kerja Laravel dan ThinkPHP: ThinkPHP umumnya berprestasi lebih baik daripada Laravel, memfokuskan pada pengoptimuman dan caching. Laravel berfungsi dengan baik, tetapi untuk aplikasi yang kompleks, ThinkPHP mungkin lebih sesuai.

Cara menggunakan Spring Cloud Saga untuk melaksanakan transaksi yang diedarkan Cara menggunakan Spring Cloud Saga untuk melaksanakan transaksi yang diedarkan Jun 05, 2024 pm 10:15 PM

SpringCloudSaga menyediakan cara deklaratif untuk menyelaraskan transaksi yang diedarkan, memudahkan proses pelaksanaan: tambah kebergantungan Maven: spring-cloud-starter-saga. Cipta pengatur Saga (@Orkestra Saga). Tulis peserta untuk melaksanakan SagaExecution untuk melaksanakan logik perniagaan dan logik pampasan (@SagaStep). Tentukan peralihan keadaan dan pelakon dalam Saga. Dengan menggunakan SpringCloudSaga, atomicity antara operasi perkhidmatan mikro yang berbeza dipastikan.

Bagaimana untuk memasang thinkphp Bagaimana untuk memasang thinkphp Apr 09, 2024 pm 05:42 PM

Langkah pemasangan ThinkPHP: Sediakan persekitaran PHP, Komposer dan MySQL. Buat projek menggunakan Komposer. Pasang rangka kerja dan kebergantungan ThinkPHP. Konfigurasikan sambungan pangkalan data. Hasilkan kod aplikasi. Lancarkan aplikasi dan lawati http://localhost:8000.

See all articles