ASH84
Software Engineer focused on turning complexity into simplicity. Co-founder at Payhere. Previously Tech Lead of remit team at Banksalad.
Experience
- Head of tech Payhere.Inc, 2024โpresent
- CTO Payhere.Inc, 2020โ2023
- TechLead, Banksalad, 2018โ2020
- Senior Software Engineer Danal, 2014โ2018
Latest Blog Posts
-
Jan 15, 2020๋ด ๋ธ๋ก๊ทธ์ emoji ๋ฅผ ๊ตฌํด์ค๐ฑ์ฌ์ค ๋ ์์ ์๋ ๋ธ๋ก๊ทธ ๊ธ์ emoji๋ฅผ ์ ์ฐ์ง ์์๋ค. ์ฌ๋ฌ๊ฐ์ง ์ด์ ๊ฐ ์๊ฒ ์ง๋ง ๋ฑ๋ฑํ๊ฒ ์ ๋ณด๋ง ์ ๋ฌํ์๋ ์๋ฏธ๋ ์์๊ณ , ์ง๊ธ ๋ค๋๋ ํ์ฌ์ ์ค๊ธฐ ์ ๊น์ง๋ ์ฌ์ค emoji ๋ผ๋ ๊ฒ์ ์ ์ฌ์ฉํด ๋ณด์ง ์์๋ค. ์๋ ์ ๋ฐํ๋ฅผ ํ๋ฉด์ ๋๋ฃ๋ถ๋ค์ด emoji ๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ ๋ณด๋ฉด์ ์ฌ์ฉํ๊ฒ ๋์๊ณ , ๋ธ๋ก๊ทธ ๊ธ์๋ ์ ์ฉํด๋ณด์๋ผ๋ ์๊ฐ์ ํ๊ฒ ๋์๋ค. ### ๊ทธ๋ฐ๋ฐ ๋๋ฅ!! ๐คฏ ๋์ ๋ธ๋ก๊ทธ ๊ธ์ emoji ๊ฐ ๋ฌ๋ฆฌ์ง๊ฐ ์๋ ๊ฒ์ด๋ค. **์ข ๋ ์ ํํ ๋งํ์๋ฉด emoji ๋ฅผ ๋ฃ์ด๋ ํํ์ด ๋์ง ์๊ณ , emoji...
-
Oct 26, 2017beaker_session MySQL server has gone away๋งค์ผ ์์นจ ์์ ํ์ฌ ๊ฐ๋ฐ์ค์ธ ๋ฐฑ์คํผ์ค๋ฅผ ์ผ๋ฉด Internal Server Error ๋ฐ์. ๋ก๊ทธ๋ฅผ ๋ณด๋ ์๋์ ๊ฐ์ ์ค๋ฅ ๋ฐ์ ``` OperationalError: (pymysql.err.OperationalError) (2006, "MySQL server has gone away (error(32, 'Broken pipe'))") [SQL: u'SELECT beaker_cache.data \\nFROM beaker_cache \\nWHERE beaker_cache.namespace = %(namespace_1)s'] [pa...
-
Jun 03, 2016[python] MySQL-Python ์ค์น์ค๋ฅ, mysql_config not found...
-
Aug 31, 2015mysqldump - dump & restore**mysqldump ๋คํ๋จ๊ธฐ** ย ์์ ๋ช ๋ น ์คํ์, ์ ์ฅํ๋ก์์ , ํธ๋ฆฌ๊ฑฐ ํจ์, ์คํค๋ง๊ฐ sql๋ก ๋ง๋ค์ด ์ง๋ค. ย **mysqldump ๋คํ๋ณต์** ย ๋ช ๋ น ์คํ์ , ์ฌ์ฉํ ๊ณ์ ์ ๋ง๋ค๊ณ ๋๋น๋ฅผ ๋ง๋ค๊ณ ๊ณ์ ์ ์ ๊ทผ๊ณผ ๊ณ์ ๊ณผ...
-
Jul 23, 2015[pull request] spgen, generate mysql stored procedure#### **์์์, ํ๋ก์์ ์ ๋ํ ์ด์ผ๊ธฐ** ORM ์ด ์ถ์ธ์ด๊ธด ํ์ง๋ง ์ฌ์ ํ ์ฌ์ฉํ๋ ๊ณณ์ด ์๋ค. ๋ฌผ๋ก ๋ก์ง์ด ์จ์ด ์๋ค๋ ๋ฌธ์ , ๊ฐ๋ ์ฑ์ด ๋จ์ด์ง๋ ๋ฌธ์ ๊ฐ ์์ง๋ง ์ฌ์ ํ ์ฑ๋ฅ๋ฉด์์๋ ์ต๊ณ ์ ๋ฐฉ๋ฒ์ด ์๋๊ฐ ์ถ๋ค.(์ด๊ฒฌ์ด ์์ผ์๋ค๋ฉด ๋๊ธ๋ก,, ๋๊ธ๊ตฌ๊ฑธ) ํ์ฌ ํ์ฌ์์๋ ๋ชจ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ด๋ จ๋ ๋ก์ง์ ์ ์ฅ ํ๋ก์์ (Stored Procedure) ๋ฐฉ์์ผ๋ก ๊ตฌํ๋๊ณ ์๋ค. ๊ฐ์ธ์ ์ผ๋ก ์ด์ ํ์ฌ์์๋ ์ด๋ฐ์์ผ๋ก ์์ ์ ํ์ง ์์๊ณ , ORM์ ...
-
Mar 02, 2015[DB] mysql ๋คํ ๋ฐ ๋ณต๊ตฌํ ์ด๋ธ๋ฝ์ด ๊ฑธ๋ ธ๋ค. ์ ๊ฑธ๋ ธ๋์ง ์ดํด๋ณด๋ ๋ก๊ทธ db ๊ฐ MYISAM ๋ฐฉ์์ผ๋ก ๋์ด ์์ด์ ์๊ธด ๋ฌธ์ ์๋ค. ์ด๋ฏธ ์๋ง์ ๋ก๊ทธ๋ฅผ ๋ค๋กํ๊ณ ์ด์์ค์ธ DB ๋ฅผ ๋ฐฑ์ ํด์ INNODB๋ก ๋ณ๊ฒฝํด์ ๋ค์ ๋ง๋ค๊น๋ ์๊ฐํด๋ดค์ง๋ง, ๊ทธ๋ด๋ฐ์ ์ฐจ๋ผ๋ฆฌ mysqldump ๋ฅผ ์ฌ์ฉํด์ ์ด์์๋ฒ๊ฐ ์๋ ๊ฐ๋ฐ ์๋ฒ๋ก ์ฎ๊ฒจ์ ๋ถ์ ์์ ์ ํ๋๊ฒ ๋์๊ฒ ๊ฐ์๋ค. mysqldump๋ ์๋น์ค์ ์๊ด์์ด ๋ฐ์ดํฐ ๋ฐ ๊ตฌ์กฐ๋ฅผ ๊ฐ์ ธ์ฌ์๊ฐ ์๋ค. ๋ ๊ฐ์ ๊ฒฝ์ฐ๋ ๋งค์ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ ธ์์ผ ํ๊ธฐ ๋๋ฌธ์ dump์ ์ฟผ๋ฆฌ ๋น์ทํ๊ฒ ํ์ํ ๋ฐ์ดํฐ๋ง ๊ฐ์ ธ์ฌ์ ์์์ผ๋ฉด ํ๋๋ฐ, ๋คํํ...
-
Jan 29, 2015python mysqldb DictCursor ์ด์ฉํ๊ธฐ์๋ฌด๋๋ ์ ์ผ๋ง์ด ์ฌ์ฉํ๋๊ฒ mysql ์ด๊ณ python ์ผ๋ก ์ฐ๋ํ๊ธฐ ์ํด์ย MySQLdb ๋ฅผ ์ฌ์ฉํ๋๋ฐ ๋งจ๋ ๊ธฐ์กด cursor๋ฅผ ์ด์ฉํด์ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ ธ์ค๊ณค ํ๋ค.ย ...
-
Jul 08, 2013(stackoverflow) how to improve select performance in mysql?StackOverflow ๋ฅผ ์์ฃผ ์ด์ฉํด ์ค์ง ์์์ง๋ง ์ต๊ทผ์๋ ๋ค๋ฅธ ๊ฐ๋ฐ์๋ค์ ์ด์ผ๊ธฐ๋ฅผ ๋ค์ด ๋ณด๊ธฐ ์ํด์ ๋ด๊ฐ ํด๊ฒฐํ ์ด๋ค ๋ฌธ์ ๋ผ๊ณ ํ ์ง๋ผ๋ ์ฌ๋ ค์ ๋ฌผ์ด๋ณด๊ณ ์๋ค. ์์ด ๊ณต๋ถ๊ฐ ๋๋ค๊ณ ์๊ฐํ์ง๋ ์์ง๋ง ๋ฌผ์ด๋ณด๊ธฐ ์์ด ๋ ๋ฒจ์ ์ฌ๋ผ๊ฐ๋ฏ. ๊ฒฐ๊ตญ ๊ฒ์๋ ์ค๋ ฅ.ย # [how to improve select performance in mysql?](http://stackoverflow.com/ques...
-
Jul 06, 2013(sql) Distinct ์ค๋ณต์ ๊ฑฐSQL ์ชฝ ๊ณต๋ถ๋ฅผ ์ต๊ทผ์ ๋ฒผ๋ฝ์น๊ธฐ๋ก ํ๋๋ฐ, Distinct ์ ๋ํด์ ์ฝ๊ฐ์ ์ดํด๊ฐ ์๋์ ์ ๋ฆฌํ ๊ฒธ ์ฌ๋ฆฐ๋ค. ์ฉ์ด๋ฅผ ์ฐพ์๋ณด๋ฉด ์ค๋ณต์ ๊ฑฐ๋ผ๊ณ ํ๋๋ฐ, ๋ง ๊ทธ๋๋ก๋ค. ๋ฐ๋๋ก all ์ด๋ผ๋ ๊ฒ์ด ์๋๋ฐ ์ด๊ฑด select ๋ฌธ์์ ์๋ฌด๊ฒ๋ ์ง์ ํ์ง ์์๋ ๋๋ ๊ฒ์ด๋ค.ย ์๋ฅผ ๋ค์ด, ์๋์ sql์ ์คํํ๋ค๊ณ ๊ฐ์ ํด ๋ณด์.ย ...
-
Jul 04, 2013(mysql) mysqldump ์ ์ด์ฉํ ๋ฐฑ์ ์คํฌ๋ฆฝํธmysql ์ ๋ฐ์ดํฐ๊ฐ ์์ด๋ค ๋ณด๋ฉด ํ์คํ ์ ํด์ผ ํ๋๊ฒ์ค ํ๋๊ฐ ๋ฐฑ์ ์ ์ฑ ์ธ๊ฒ ๊ฐ๋ค. ํนํ ์คํํธ์ ์ด๋ ๊ฐ์ธ ํ๋ก์ ํธ์์ ์๋ฒ๋ฅผ ์๋ํด์ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ, ์๋ฒ์ฉ๋์ ์ ํ์ด ์๋ค๋ณด๋ ์ด๋์ ๋ ๋ฐ์ดํฐ๊ฐ ์์ด๋ค ๋ณด๋ฉด ๋ฐฑ์ ์ ๋ํด์ ๊ณ ๋ คํ์ง ์์์๊ฐ ์๋ค. ๋ด๊ฐ ์ธ์ด ๋ฐฑ์ ์ ์ฑ ์ 1์ผ 1๋ฐฑ์ , ์ฆ ์ผ์ผ๋ฐฑ์ ์ธ๋ฐ, ์ฌ์ค ์์ง์ ๋ฐ์ดํฐ๊ฐ ๋ง์ง ์์ ์ํฉ์์ ํ ์ ์๋ ๋ฌด์ํ ๋ฐฉ๋ฒ์ด๋ค. ์๋๋ mysqldump๋ฅผ ์ฌ์ฉํ ๋ฐฑ์ ์คํฌ๋ฆฝํธ์ธ๋ฐ, ๋งค์ผ ์ค์ 12์30๋ถ์ ์คํ์ด ๋๋๋ก cronta...
-
Jun 28, 2013(mysql) insert ์๊ฐ ์๋ ์ถ๊ฐํ๊ธฐ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ ๋ ฅ ์๊ฐ์ด ์ค์ํ ๋๊ฐ ์๋ค. ์๋ฅผ ๋ค๋ฉด, ์ด๋ค ๋ฐ์ดํฐ๋ฅผ ์์งํ๋ค๊ณ ํ ๋, ์ผ๋ณ ํน์ ์๊ฐ๋ณ ๋ฐ์ดํฐ๋ฅผ ๋ฝ๊ธฐ ์ํด์๋ ์ ๋ ฅ์๊ฐ ์ปฌ๋ผ์ ๋ฃ์ด์ฃผ๋ ๊ฒ์ด ํ์ํ๋ค. ํ๋ก๊ทธ๋จ์์์ Date ํ์ผ๋ก ๋ฃ์ด ์ค์๋ ์๊ฒ ์ง๋ง, SQL ์ ์งง์ผ๋ฉด ์ข๋ค๊ณ , INSERT OR UPDATE ์ ์๋์ผ๋ก ์๊ฐ์ ์ถ๊ฐํ๋ ๋ฐฉ๋ฒ์ ์ฌ์ฉํ๋ฉด ๋ ์ข์๊ฒ ๊ฐ๋ค.ย **1. TIMESTAMP ์ปฌ๋ผ ์ถ๊ฐ.ย ** ...
-
Jun 26, 2013(mysql) Data truncation: Data too long for column 'xxx' at row 1...
-
Nov 07, 2012(iOS) iOS์ฑ - mysql ์ฐ๋, ์ด๋ ๊ฒ ํ๋ฉด ์ฝ๋ค.mysql ์๋ฒ๋ ๋ค๋ค ์์๋ค์ํผ ์๋ ๋ง์ด๋ค ์ฐ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์๋ฒ์ด๊ธฐ ๋๋ฌธ์ ์ฌ์ค ๊ฐ์ธ์ด๋ ์์ ํ์ฌ์์ ๋ญ๊ฐ๋ฅผ ๋ง๋ค๋ ์ฌ์ฉ๋๋ DB์๋ฒ๋ mysql ์ด๋ผ๊ณ ๋ณด๋ฉด๋๋ค. ๊ฐ์ธ์ ์ผ๋ก ํ์ฌ์์ ๋ช๋ฒ ์จ๋ณธ์ ์ด ์์ง๋ง, ์์ดํฐ ๊ด๋ จ ๊ฐ๋ฐ์์๋ ์ฌ์ค ํ์ผ๋๋น ํํ์ธ sqlite3๋ฅผ ์ฌ์ฉํด ๋ณด์๋ค.ย mysql ์ ์ฐ๋ํ๋ ํฌ์คํ ์ ์ฐ๋ ๊ฐ์ฅ ํฐ ์ด์ ๋ iOS์ Cocoa ํ๋ ์์ํฌ ์์์ ๋ฐ๋ก DB์ฐ๊ฒฐ ๊ด๋ จ ํด๋์ค...
-
Oct 30, 2012mac์ mysql ์ค์น ๊ด๋ จ ๋งํฌ ์ ๋ฆฌ, ์ด๊ฒ๋ง ์๋ฉด๋ผ!!mac(osx) ์์ mysql ์ค์นํ๊ธฐ ์ํด์ ์ฐธ๊ณ ํ๋ ๋งํฌ๋ค์ด๋ค. ๋ค๋ฅธ ๋ถ๋ค๋ ๋์์ด ๋์๊ธธ.ย ![](http://ash84.net/wp-content/uploads/1/cfile9.uf.2031E54F508F0E710EF62A.jpg) **1. ์ค์น ๋ฐ ๊ธฐ๋ณธ ์ธํ ** โย [http://hoyanet.pe.kr/1942](ht...