From a951d0d1b64c55fad306c2e710f9330bff1b18d3 Mon Sep 17 00:00:00 2001 From: jaehwang Date: Mon, 10 Nov 2025 10:56:41 +0900 Subject: [PATCH] =?UTF-8?q?faker=20dummy=20inserter=20=EC=B6=94=EA=B0=80,?= =?UTF-8?q?=20mysql=20=EB=AA=A8=EB=93=88=20debug=20print=20=EC=A0=9C?= =?UTF-8?q?=EA=B1=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- api-server/app/dummy_inserter.py | 31 ++++++++++++++++++++++++++++ api-server/app/module/mysql_utils.py | 2 -- api-server/requirements.txt | 3 ++- 3 files changed, 33 insertions(+), 3 deletions(-) create mode 100644 api-server/app/dummy_inserter.py diff --git a/api-server/app/dummy_inserter.py b/api-server/app/dummy_inserter.py new file mode 100644 index 0000000..73aef08 --- /dev/null +++ b/api-server/app/dummy_inserter.py @@ -0,0 +1,31 @@ +import asyncio +from faker import Faker + +import module.mysql_utils as sql +from module.pydantic_models import * + +fake = Faker('ko_KR') + +unique_num = 1 +INSERT_NUM = 1000 +class UserFactory: + unique_num = 0 + @classmethod + def generate_user_name(cls): + cls.unique_num += 1 + return f"{fake.name()}{cls.unique_num:04d}" + @classmethod + def generate_phone_number(cls): + return fake.phone_number() + @classmethod + def create(cls): + return (cls.generate_user_name(), cls.generate_phone_number()) + +async def main(): + for i in range(INSERT_NUM): + await sql.create_user(*UserFactory.create()) + # await asyncio.gather(*[sql.create_user(*UserFactory.create()) for i in range(INSERT_NUM)]) # 커넥션 INSERT NUM개수만큼 생기는 문제 Semaphore 등으로 해결해야 쓸수있음 + return + +if __name__ == "__main__": + asyncio.run(main()) \ No newline at end of file diff --git a/api-server/app/module/mysql_utils.py b/api-server/app/module/mysql_utils.py index 08e5f96..da9d2f8 100644 --- a/api-server/app/module/mysql_utils.py +++ b/api-server/app/module/mysql_utils.py @@ -34,7 +34,6 @@ async def create_user(user_name:str, phone_number:str=None): raise HTTPException(status_code=status.HTTP_409_CONFLICT, detail="user already exist") user_id = cur.lastrowid - print(user_id) await cnx.commit() return user_id @@ -148,7 +147,6 @@ async def create_blog(blog_owner:int, blog_title:str, blog_content:str = None): raise HTTPException(status_code=status.HTTP_409_CONFLICT, detail="blog already exist") blog_id = cur.lastrowid - print(blog_id) await cnx.commit() return blog_id diff --git a/api-server/requirements.txt b/api-server/requirements.txt index 7ae94da..1791797 100644 --- a/api-server/requirements.txt +++ b/api-server/requirements.txt @@ -1,4 +1,5 @@ dotenv fastapi uvicorn[standard] -mysql-connector-python \ No newline at end of file +mysql-connector-python +faker \ No newline at end of file