繁体   English   中英

将客户端和数据库连接放在python文件中的位置

[英]Where to put client and db connection in python file

因此,我正在构建一个mongo数据库类,该类将提供对将文档插入到插入服务的访问,并提供对通过查询服务查看文档的访问。 现在,我的database.py类具有以下内容:

import pymongo 

client = pymongo.MongoClient('mongodb://localhost:27017/')
db_connection = client['my_database']

class DB_Object(object):

    """ A class providing structure and access to the Database """

    def add_document(self, json_obj):
        coll = db_connection["some collection"]
        document = {
            "name" : "imma name",
            "raw value" : 777,
            "converted value" : 333
        }
        coll.insert(document)

    def query_response(self, query):
            """query logic here"""

如果我想要并发查询和具有多个服务调用的此类的插入,则这是各行的正确位置:

client = pymongo.MongoClient('mongodb://localhost:27017/')
db_connection = client['my_database']

这是提供访问权限的标准方法吗?

您的代码是正确的。 您应继续对应用程序中的所有操作使用相同的MongoClient实例,这将确保所有操作共享相同的连接池并使用尽可能少的连接-这将最大程度地提高效率。 MongoClient是线程安全的,因此即使您在多个线程上进行并发操作,它也可以正常工作。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM