


Versi baharu pangkalan data terminal penuh platform WeChat WCDB ialah sumber terbuka, dengan sokongan baharu untuk C++ dan Kotlin
Menurut berita pada 9 April, WCDB ialah pangkalan data terminal berdasarkan SQLite sumber terbuka oleh pasukan WeChat. Sejak ia adalah sumber terbuka pada Jun 2017, lebih daripada sepuluh versi telah dilancarkan.
Sebagai salah satu apl yang paling kerap digunakan di China dan juga dunia, WeChat secara dalaman meliputi pangkalan data untuk pelbagai perniagaan, dan bilangan mesej yang disimpan boleh mencecah jutaan malah berpuluh juta. Jumlah data yang besar dan senario aplikasi yang semakin kaya ini telah membawa keperluan dan cabaran yang sentiasa dikemas kini kepada WCDB, dan rangka kerja kod asal secara beransur-ansur menjadi sukar untuk dihadapi.
Oleh itu, bermula dari 2019, WeChat memutuskan untuk melepaskan keserasian ke belakang antara muka dan berusaha sedaya upaya untuk membina versi WCDB yang baharu dan lebih berkuasa. Selepas berbilang lelaran, lapisan antara muka WCDB dan lapisan logik teras telah dipertingkatkan secara menyeluruh, dan banyak ciri baharu juga telah terkumpul.
Hari ini, WeChat mengumumkan bahawa versi baharu WCDB, peningkatan utama, akan menjadi sumber terbuka Perubahan dan kemas kini utama termasuk:
Sokongan bahasa pembangunan yang lebih kaya: sokongan tambahan untuk C++, sokongan lengkap untuk Java dan. ORM bahasa Kotlin, meliputi lebih banyak platform terminal;
Keupayaan ekspresi SQL yang lebih berkuasa: Winq telah ditulis semula, diperkukuh, dsb.
Keupayaan penyimpanan data yang lebih selamat: penyelesaian sandaran data baharu, penyelesaian pembaikan, dll.;
Keupayaan pengembangan data yang lebih fleksibel: penghijrahan data, pemampatan data, dsb.;
WCDB versi 1.0 menyokong tiga bahasa pembangunan: Objective-C, Swift dan Java Kecuali tiga bahasa WCDB, yang berkongsi versi SQLite yang sama dan set logik sandaran dan pembaikan yang sama, selebihnya. kod dibangunkan secara bebas.
Memandangkan WCDB terus berulang, banyak keupayaan baharu WCDB dibangunkan dan disahkan dalam talian pada versi ObjC pada dasarnya dalam keadaan lelaran berhenti, dan perbezaan antara keduanya semakin besar. Dalam keadaan yang ideal, WCDB dalam versi bahasa yang berbeza harus mempunyai keupayaan yang sama Walau bagaimanapun, jika logik baharu versi ObjC dilaksanakan semula dalam Swift dan Java, ia bukan sahaja akan menjadi beban kerja yang berat, tetapi juga terdedah kepada ralat. Ia perlu disahkan dalam talian sekali lagi, yang tidak begitu baik.
Nasib baik, logik teras
versi ObjC WCDB dilaksanakan dalam C++, dan ObjC hanya digunakan untuk melaksanakan logik lapisan antara muka. Banyak perpustakaan yang menyokong berbilang bahasa pembangunan menggunakan bahasa C++ untuk melaksanakan logik teras, dan bahasa lain hanya digunakan untuk melaksanakan lapisan antara muka, seperti realmDB komponen pangkalan data NoSQL sisi klien yang sangat popular. WCDB juga boleh direka bentuk mengikut idea ini, supaya versi ObjC WCDB hanya memerlukan pelarasan kecil, dan logik teras dilaksanakan sepenuhnya dalam C++ Swift dan Java mengakses logik teras C++ melalui kaedah penyambungan.
Selain itu, untuk menyokong sepenuhnya keperluan pembangunan pangkalan data bagi senario yang berbeza pada setiap sisi WeChat, WCDB juga telah memperluaskan sokongannya untuk C++ dan Kotlin, sekali gus meliputi sepenuhnya bahasa arus perdanauntuk pembangunan terminal.
Di peringkat antara muka, versi baharu WCDB menyokong sepenuhnya lima bahasa pembangunan terminal utama C++, Java, Kotlin, Swift dan ObjC, meliputi empat platform terminal utama Android, iOS , Windows dan Linux. Pada masa yang sama, WeChat juga telah menulis semula dan mempertingkatkan Winq,

Selain itu, WeChat juga telah melancarkan dua fungsi baharu: migrasi data dan pemampatan data, membolehkan pembangun menangani dua masalah utama pengagregatan data yang berlebihan dan pengembangan data yang berlebihan dalam perniagaan yang kompleks melalui konfigurasi mudah. Versi baharu WCDB juga memperkenalkan ciri baharu seperti pengoptimuman FTS5 dan transaksi yang boleh terganggu, membolehkan pembangun mencapai pengoptimuman prestasi yang lebih ekstrem dalam senario tertentu.
Versi baharu WCDB telah menjadi sumber terbuka di Github
Alamat projek dilampirkan pada tapak ini:https://github.com/Tencent/wcdb.
Atas ialah kandungan terperinci Versi baharu pangkalan data terminal penuh platform WeChat WCDB ialah sumber terbuka, dengan sokongan baharu untuk C++ dan Kotlin. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undress AI Tool
Gambar buka pakaian secara percuma

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Clothoff.io
Penyingkiran pakaian AI

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

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Apakah perkara utama katalog? UseSelesscoin: Gambaran Keseluruhan dan Ciri -ciri Utama Ciri -ciri Utama Ciri -ciri Utama UselessCoin Uselesscoin (Tidak Berkonsentasi) Masa Depan: Apakah yang memberi kesan kepada harga UseStoScoin pada tahun 2025 dan seterusnya? Fungsi Teras Outlook Harga Masa Depan dan Pengimportan Uselesscoin (Tanpa Usah

Peranan utama homebrew dalam pembinaan persekitaran MAC adalah untuk memudahkan pemasangan dan pengurusan perisian. 1. Homebrew secara automatik mengendalikan kebergantungan dan merangkumi kompilasi kompleks dan proses pemasangan ke dalam arahan mudah; 2. Menyediakan ekosistem pakej perisian bersatu untuk memastikan penyeragaman lokasi pemasangan perisian dan konfigurasi; 3. Mengintegrasikan fungsi pengurusan perkhidmatan, dan dengan mudah boleh memulakan dan menghentikan perkhidmatan melalui brewservices; 4. Menaik taraf dan penyelenggaraan perisian yang mudah, dan meningkatkan keselamatan dan fungsi sistem.

Pemulihan Solana yang kuat: Bolehkah lonjakan pemaju dan pemacu duit syiling meme berlangsung? Tafsiran mendalam tentang trend Solana membuat kemunculan semula! Selepas tempoh berdiam diri, rantaian awam telah diremajakan semula, harga duit syiling terus meningkat, dan masyarakat pembangunan menjadi semakin meriah. Tetapi di manakah daya penggerak sebenar untuk pemulihan ini? Adakah ia hanya kilat dalam kuali? Mari kita menggali trend teras semasa Solana: Ekologi Pemaju, Meme Fanatik Coin dan Pengembangan Ekologi Keseluruhan. Di sebalik lonjakan harga duit syiling: Aktiviti pembangunan sebenar telah pulih baru -baru ini, harga SOL telah kembali ke atas $ 200 untuk kali pertama sejak Jun, menyebabkan perbincangan yang hangat di pasaran. Ini tidak berasas - menurut data Santiment, pemajunya telah mencapai tahap tinggi baru dalam dua bulan yang lalu. ini

Terdapat tiga cara utama untuk menetapkan pembolehubah persekitaran dalam PHP: 1. Konfigurasi global melalui php.ini; 2. Melalui pelayan web (seperti setenv Apache atau fastcgi_param of nginx); 3. Gunakan fungsi Putenv () dalam skrip PHP. Antaranya, php.ini sesuai untuk konfigurasi global dan jarang mengubah konfigurasi, konfigurasi pelayan web sesuai untuk senario yang perlu diasingkan, dan putenv () sesuai untuk pembolehubah sementara. Dasar kegigihan termasuk fail konfigurasi (seperti php.ini atau konfigurasi pelayan web), fail .Env dimuatkan dengan perpustakaan dotenv, dan suntikan dinamik pembolehubah dalam proses CI/CD. Maklumat sensitif pengurusan keselamatan harus dielakkan dengan keras, dan disyorkan untuk digunakan.

Untuk membolehkan bekas PHP menyokong pembinaan automatik, terasnya terletak pada mengkonfigurasi proses integrasi berterusan (CI). 1. Gunakan Dockerfile untuk menentukan persekitaran PHP, termasuk imej asas, pemasangan lanjutan, pengurusan ketergantungan dan tetapan kebenaran; 2. Konfigurasi alat CI/CD seperti Gitlabci, dan tentukan peringkat binaan, ujian dan penempatan melalui fail .gitlab-ci.yml untuk mencapai pembinaan, pengujian dan penggunaan automatik; 3. Mengintegrasikan kerangka ujian seperti PHPUnit untuk memastikan ujian secara automatik dijalankan selepas perubahan kod; 4. Gunakan strategi penempatan automatik seperti Kubernet untuk menentukan konfigurasi penempatan melalui fail penyebaran.yaml; 5. Mengoptimumkan Dockerfile dan mengamalkan pembinaan pelbagai peringkat

Membina persekitaran kontena tugas PHP yang bebas boleh dilaksanakan melalui Docker. Langkah -langkah khusus adalah seperti berikut: 1. Pasang Docker dan DockerCompose sebagai asas; 2. Buat direktori bebas untuk menyimpan fail Dockerfile dan Crontab; 3. Tulis Dockerfile untuk menentukan persekitaran PHPCLI dan memasang cron dan sambungan yang diperlukan; 4. Tulis fail crontab untuk menentukan tugas masa; 5. Tulis direktori script-compose.yml mount dan konfigurasikan pembolehubah persekitaran; 6. Mulakan bekas dan sahkan log. Berbanding dengan melaksanakan tugas masa dalam bekas web, bekas bebas mempunyai kelebihan pengasingan sumber, persekitaran murni, kestabilan yang kuat, dan pengembangan yang mudah. Untuk memastikan penangkapan dan penangkapan ralat

Untuk memanggil API Pengiktirafan Face Phpai, anda mesti lulus pengesahan keselamatan, pilih penyedia yang boleh dipercayai seperti Alibaba Cloud, Tencent Cloud atau Baidu AI dan dapatkan Apikey dan SecretKey. Seterusnya, tandatangan dijana menggunakan algoritma HMAC-SHA1 dan permintaan dihantar melalui HTTPS. Untuk mengelakkan kebocoran Apikey, ia harus mengelakkan kod keras ke kod klien, gunakan penyimpanan pembolehubah persekitaran sebaliknya, hadkan skop penggunaan utama, ubahnya secara teratur, dan gunakan komunikasi proksi sisi pelayan. Di samping itu, fail utama hendaklah ditambah ke .gitignore dan memantau penggunaan API. Langkah -langkah lain untuk meningkatkan keselamatan termasuk mengesahkan input pengguna, menyulitkan transmisi dengan HTTPS, mengehadkan kekerapan permintaan, melaksanakan pengesahan dan kebenaran, pembalakan, menggunakan WAF,

Inti perkembangan PHP Ringkasan Teks AI adalah untuk memanggil API perkhidmatan AI luaran (seperti OpenAI, HuggingFace) sebagai penyelaras untuk merealisasikan pra -proses teks, permintaan API, analisis tindak balas dan paparan hasil; 2. Batasan adalah bahawa prestasi pengkomputeran lemah dan ekosistem AI lemah. Strategi tindak balas adalah untuk memanfaatkan API, decoupling perkhidmatan dan pemprosesan tak segerak; 3. Pemilihan model perlu menimbang ringkasan kualiti, kos, kelewatan, keserasian, privasi data, dan model abstrak seperti GPT atau BART/T5 adalah disyorkan; 4. Pengoptimuman prestasi termasuk cache, antrian asynchronous, pemprosesan batch dan pemilihan kawasan berdekatan. Pemprosesan ralat perlu meliputi had semasa semula, masa tamat rangkaian, keselamatan utama, pengesahan input dan pembalakan untuk memastikan operasi sistem yang stabil dan cekap.
