MongoDB
 sql >> Teknologi Basis Data >  >> NoSQL >> MongoDB

Menghubungkan ke MongoDB Atlas dari fungsi firebase

Ada beberapa peringatan saat menghubungkan ke Atlas dari Firebase Function. Di bawah ini adalah cara yang benar untuk mengembalikan instance klien yang terhubung untuk digunakan lebih lanjut dalam fungsi FB Anda:

import { MongoClient } from 'mongodb'

const uri = 'mongodb://<USER>:<PASSWORD>@foo-shard-00-00-xxx.gcp.mongodb.net:27017,foo-shard-00-01-xxx.gcp.mongodb.net:27017,foo-shard-00-02-xxx.gcp.mongodb.net:27017/test?ssl=true&replicaSet=FOO-shard-0&authSource=admin&retryWrites=true'

let client

export default async () => {

    if (client && client.isConnected()) {
        console.log('DB CLIENT ALREADY CONNECTED')

    } else try {
        client = await MongoClient.connect(uri, { useNewUrlParser: true })
        console.log('DB CLIENT RECONNECTED')
    }

    catch (e) {
    throw e
    }

    return client
}

Penjelasan:

  1. kabarnya, Anda tidak dapat terhubung ke Atlas jika Anda menggunakan Spark rencana. Pastikan Anda meningkatkan ke Blaze jika belum.

  2. uri string – Anda tidak boleh menggunakan format url yang dipersingkat saat menghubungkan ke Atlas dari Firebase. Untuk beberapa alasan, hanya format url lama dan panjang yang bekerja dengan andal dari firebase.

  3. client variabel – Anda harus mendefinisikan client variabel di luar cakupan ekspor, lalu tetapkan instance klien yang terhubung ke dalamnya di dalam fungsi, hanya jika belum ditetapkan. Ini akan mencegah menghubungkan kembali klien pada setiap pemanggilan fungsi. Fungsi Firebase tanpa kewarganegaraan , tapi tidak seluruhnya. mereka hanya bisa dimatikan setelah beberapa periode tidak aktif. Ini berarti bahwa koneksi akan bertahan selama beberapa waktu. Dari dokumen :Jika Anda mendeklarasikan variabel dalam lingkup global, nilainya dapat digunakan kembali dalam pemanggilan berikutnya tanpa harus dihitung ulang.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Bagaimana saya bisa terhubung ke server MongoDB menggunakan JAVA dari OpenShift?

  2. Agregasi Mongo:mempartisi nilai ke dalam grup (berdasarkan partisi)

  3. Agregasi Mgo:bagaimana cara menggunakan kembali tipe model untuk kueri dan menghapus hasil campuran?

  4. MongoDB C# untuk setiap BsonElement

  5. Bagaimana saya bisa mengurutkan berdasarkan beberapa bidang di mongodb dengan Perl?