๋ค์์ 2017๋ 5์๋ถํฐ 2018๋ 1์๊น์ง ์งํ๋ Tedious ์ค๋ฌธ์กฐ์ฌ์ ์ค๋ฌธ์กฐ์ฌ ๊ฒฐ๊ณผ์ ๋๋ค.
์ฃผ๋ฌธ | ๋ต๋ณ | ์๋ต | ํผ์ผํธ
-- | -- | -- | --
1 | ๊ธฐ์
ํ๋ก์ ํธ | 20 | 41%
2 | ์ค์๊ธฐ์
ํ๋ก์ ํธ | 23 | 47%
3 | ๊ฐ์ธ ํ๋ก์ ํธ | 5 | 10%
4 | ํ๋กํ ํ์
๋ง | 1 | 2%
| ์ด๊ณ | 39 | 100.00%
์ฃผ๋ฌธ | ๋ต๋ณ | ์๋ต | ํผ์ผํธ
-- | -- | -- | --
1 | ์น ์ ํ๋ฆฌ์ผ์ด์
| 41 | 84%
2 | ๋ฐฑ์๋ ์ ํ๋ฆฌ์ผ์ด์
| 37 | 76%
3 | ๋ฐ์คํฌํ ์ ํ๋ฆฌ์ผ์ด์
| 6 | 12%
4 | ๋ชจ๋ฐ์ผ ์ ํ๋ฆฌ์ผ์ด์
| 14 | 29%
5 | IoT ํ๋ก์ ํธ | 1 | 2%
6 | ๋ฐ์ดํฐ ๊ณผํ/๊ธฐ๊ณ ํ์ต ํ๋ก์ ํธ | 3 | 6%
7 | ๊ธฐํ: [๊ฐ๋ฐฉํ ๋ต๋ณ] | 1 | 2%
| Etl ์ผ๊ด ์์
| |
| (์๋ต์ 49๋ช
) TOTAL | 103 |
์ฃผ๋ฌธ | ๋ต๋ณ | ์๋ต | ํผ์ผํธ
-- | -- | -- | --
1 | ์ง๋ฃจํ (https://github.com/tediousjs/tedious) | 23 | 47%
2 | mssql (https://github.com/patriksimek/node-mssql) | 16 | 33%
3 | msnodesql(https://github.com/Azure/node-sqlserver) | 3 | 6%
4 | msnodesqlv8 (https://github.com/TimelordUK/node-sqlserver-v8) | 3 | 6%
5 | ๊ธฐํ: [๊ฐ๋ฐฉํ ๋ต๋ณ] | 4 | 8%
| ์ฐ๋ฆฌ๋ ์ง๋ฃจํ์ง๋ง ๋๋ถ๋ถ์ ์ํธํ๋ฅผ ํตํด ์ฌ์ฉํ๊ณ ๋๋ก๋ node-mssql์ ์ฌ์ฉํฉ๋๋ค. | |
| ํ์์ | |
| https://github.com/mysqljs/mysql | |
| https://github.com/mysqljs/mysql | |
| ์ด๊ณ | 49 | 100.00%
์ฃผ๋ฌธ | ๋ต๋ณ | ์๋ต | ํผ์ผํธ
-- | -- | -- | --
1 | ์์ ์๋ฐ์คํฌ๋ฆฝํธ ๊ตฌํ | 19 | 39%
2 | ์ฑ๋ฅ | 15 | 31%
3 | ์ฐ๊ฒฐ ๋ณต์๋ ฅ | 14 | 29%
4 | ์ฌ์ฉ ์ฉ์ด์ฑ | 30 | 61%
5 | ์ค์น ์ฉ์ด์ฑ | 26 | 53%
6 | ์ด์ SQL Server ๋ฒ์ ๊ณผ์ ํธํ์ฑ | 5 | 10%
7 | ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ธฐ๋ฅ ์์ฑ๋ | 11 | 22%
8 | ๊ธฐํ: [๊ฐ๋ฐฉํ ๋ต๋ณ] | 3 | 6%
| Microsoft์์ ๊ณต์์ ์ผ๋ก ์ง์ํ๋ | |
| ๋จ์์ฑ, ์์ ์ก์ธ์ค | |
| SQL Server์ฉ Windows ์ธ์ฆ! | |
| (์๋ต์ 49๋ช
) TOTAL | 123
์ฃผ๋ฌธ | ๋ต๋ณ | ์๋ต | ํผ์ผํธ
-- | -- | -- | --
1 | ์ฑ๋ฅ | 21 | 43%
2 | ์ฐ๊ฒฐ ๋ณต์๋ ฅ | 21 | 43%
3 | ์ฌ์ฉ ์ฉ์ด์ฑ | 22 | 45%
4 | ์ค์น ์ฉ์ด์ฑ | 13 | 27%
5 | ์ด์ SQL Server ๋ฒ์ ๊ณผ์ ํธํ์ฑ | 4 | 8%
6 | ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ธฐ๋ฅ ์์ฑ๋ | 16 | 33%
7 | ๊ธฐํ: [๊ฐ๋ฐฉํ ๋ต๋ณ] | 13 | 27%
| json์์ xml ํ๋ก์์ ๋งค๊ฐ๋ณ์ ๋ณํ. | |
| ์์ง ๋ชจ๋ฅธ๋ค | |
| ์ง๋ฃจํ Windows ์ธ์ฆ. ์๋์ฐ ์ธ์ฆ, ์๋์ฐ ์ธ์ฆ, ์๋์ฐ ์ธ์ฆ | |
| ์ฝ์ ์ง์ | |
| ์ฐ๊ฒฐ ํ๋ง | |
| MSSQL 2016 | |
| ์์ | |
| ๋ ๋ง์ ์์ ๋ชจ๋ฒ ์ฌ๋ก | |
| ์ํ ์ฝ๋ ๋ฐ ์ํ ํ๋ก์ ํธ. | |
| ํนํ ์ง๋ ฌํ์ ๊ด๋ จ๋ ์ฑ๋ฅ. | |
| Linux์์ Windows ํตํฉ ์ธ์ฆ | |
| ๋ฌธ์ ๊ฐ ์์์ต๋๋ค | |
| ํธ๋ฆฌ๊ฑฐ๊ฐ ์๋ node-postgres์ ๊ฐ์ ์ด๋ฒคํธ ํํฌ. | |
| (์๋ต์ 49๋ช
) TOTAL | 110 |
์ฃผ๋ฌธ | ๋ต๋ณ | ์๋ต | ํผ์ผํธ
-- | -- | -- | --
1 | ๊ฐ๋ฐฉํ ๋ต๋ณ | 22 | 100%
| ์ฝ๋ฐฑ ์ง์ฅ์ ๋น ์ง์ง ์๊ณ ์์ ํ ์ฝ๋๋ฅผ ์์ฑํ๊ธฐ ์ํ ๋ ๋์ ํจํด. | |
| ? | |
| msnodeqlv8์ด ๊ฐ์ ๋๋ ๊ฒ์ ์ํ์ง ์์ต๋๋ค. ๋๋ Microsoft๊ฐ Tedious์์ SQL Server์ ๋ํ Windows ์ธ์ฆ์ ๊ตฌํํ๊ธฐ๋ฅผ ๋ฐ๋๋๋ค. PR๊ณผ ํผ๋๋ฐฑ์ด ์์ง Tedious์์ SQL Server์ฉ Windows Auth๋ก ์ด์ด์ง์ง ์์๋ค๋ ์ฌ์ค์ ์ ์ ์ ์ด ์๋๋๋ค. ๋์์ด ํ์ํ์ญ๋๊น? | |
| Node ์ต์ ๋ฒ์ ์ง์ | |
| .NET SqlClient ๋๋ผ์ด๋ฒ๋ก ๋ ๋ง์ ๊ธฐ๋ฅ ํจ๋ฆฌํฐ | |
| ๋ณต์๋ ฅ์ด ์๋ ์ฐ๊ฒฐ ํ๋ง | |
| ์ฐ๊ฒฐ ํ๋ง. ๊ทธ ์ฑ๋ฅ์ด ํ์ํฉ๋๋ค. | |
| ๋น๋๊ธฐ ์ธํฐํ์ด์ค๊ฐ ํ์ํฉ๋๋ค(Promises, async/await). ์ง๋ฃจํ ์ฝ์์ฒ๋ผ ๋ค๋ฅธ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ก ๋ํํ๋ ๋์ . | |
| ์ ๋ง ํ์ํ ๋ณ๊ฒฝ ์ฌํญ์ด ์์ต๋๋ค. ๋ ํ๋์ ์ธ async/await API๋ Node.js LTS์ ๋ค์ด์๊ธฐ ๋๋ฌธ์ ํ๋ฅญํ ๊ฒ์
๋๋ค. | |
| ์ง๊ธ์ ์๊ฐํ ์ ์์ต๋๋ค. | |
| ๋ฌธ์ ์ ์ง ๊ด๋ฆฌ. | |
| ๋ฌธ์ | |
| ๋ ์ ์ฉํ ์ค๋ฅ ๋ณด๊ณ . | |
| ์ง๋ ฌํ ์ฑ๋ฅ. ๋์ฉ๋ ๋ฐ์ดํฐ ์ธํธ๋ฅผ ์์ ํ๋ ๊ฒ์ ์๊ฐ์ด ์ค๋ ๊ฑธ๋ฆฌ๊ณ ์์ฒญ๋ ์์ ์ฐจ๋จ CPU๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค. ์คํธ๋ฆฌ๋ฐ ์ธํฐํ์ด์ค๋ฅผ ์ฌ์ฉํ๋ฉด ๋์์ด ๋ ์ ์์ง๋ง 1000๊ฐ ํ๋ง ํ์ํ๊ณ ๋ชจ๋ ํ์ ๋ฒํผ๋งํด์ผ ํ๋ ๊ฒฝ์ฐ์๋ ์ข
์ข
์๋ฏธ๊ฐ ์์ต๋๋ค. | |
| JSON ์ง์. | |
| ์ ์ฅ๋ ๊ฐ๊ฒฉ ์ด์ธ์ ํ
์ด๋ธ ๊ฐ ๋งค๊ฐ๋ณ์๋ฅผ ์ฌ์ฉํ๊ณ ์ถ์ต๋๋ค(.execute() ๋์ mssql์ .query() ํจ์) | |
| ์ด๊ณ | 16 | 100.00% |
์ฃผ๋ฌธ | ๋ต๋ณ | ์๋ต | ํผ์ผํธ
-- | -- | -- | --
1 | 5 | 15 | 38%
2 | 4 | 12 | 31%
3 | 3 | 2 | 5%
4 | 2 | 3 | 8%
5 | 1 | 2 | 5%
6 | ํด๋น ์์ | 5 | 13%
| ์ด๊ณ | 39 | 100.00%
์ฃผ๋ฌธ | ๋ต๋ณ | ์๋ต | ํผ์ผํธ
-- | -- | -- | --
1 | ๋งฅOS | 14 | 29%
2 | ๋ ๋ํ/์ผํธOS | 4 | 8%
3 | ์ฐ๋ถํฌ/๋ฐ๋น์ | 7 | 15%
4 | ์์ธ | 0 | 0%
5 | ์๋์ฐ | 21 | 44%
6 | ๊ธฐํ: [๊ฐ๋ฐฉํ ๋ต๋ณ] | 2 | 4%
| ์ฐฝ, ๋ฐ๋น์, centos | |
| ์์น๋ฆฌ๋
์ค / ๋์ปค / ์ํ์ธ ๋ฆฌ๋
์ค | |
| ์ด๊ณ | 48 | 100.00%
์ฃผ๋ฌธ | ๋ต๋ณ | ์๋ต | ํผ์ผํธ
-- | -- | -- | --
1 | ๋งฅOS | 0 | 0%
2 | ๋ ๋ํ/์ผํธOS | 9 | 19%
3 | ์ฐ๋ถํฌ/๋ฐ๋น์ | 14 | 30%
4 | ์์ธ | 0 | 0%
5 | ์๋์ฐ | 19 | 41%
6 | ๊ธฐํ: [๊ฐ๋ฐฉํ ๋ต๋ณ] | 4 | 8%
| Anywhere Node ์คํ - Windows, Linux, Mac | |
| ์ฐฝ, ๋ฐ๋น์, centos | |
| ์๋ง์กด ๋๋ค | |
| ์ฐ๋ถํฌ / ๋์ปค / ์ํ์ธ ๋ฆฌ๋
์ค | |
7 | ํ๋ก๋์
ํ๊ฒฝ์์ Node.js๋ฅผ ์คํํ์ง ์์ต๋๋ค. | 1 | 2%
| ์ด๊ณ | 47 | 100.00%
์ฃผ๋ฌธ | ๋ต๋ณ | ์๋ต | ํผ์ผํธ
-- | -- | -- | --
1 | Azure SQL ๋ฐ์ดํฐ๋ฒ ์ด์ค | 10 | 21%
2 | Azure SQL ๋ฐ์ดํฐ ์จ์ดํ์ฐ์ค | 0 | 0%
3 | SQL ์๋ฒ 2017+ | 6 | 12%
4 | SQL ์๋ฒ 2016 | 14 | 29%
5 | SQL ์๋ฒ 2014 | 5 | 10%
6 | SQL ์๋ฒ 2012 | 5 | 10%
7 | SQL ์๋ฒ 2008 R2 | 6 | 12%
8 | SQL ์๋ฒ 2008 | 0 | 0%
9 | SQL ์๋ฒ 2005 | 0 | 0%
10 | ๊ธฐํ: [๊ฐ๋ฐฉํ ๋ต๋ณ] | 3 | 8%
| 2008-2014 | |
| ์ ๋ ์ฃผ๋ก AWS๋ฅผ ์ฌ์ฉํฉ๋๋ค. | |
| mariadb | |
| ์ด๊ณ | 49 | 100.00%
์ฃผ๋ฌธ | ๋ต๋ณ | ์๋ต | ํผ์ผํธ
-- | -- | -- | --
1 | Node.js v7.x | 28 | 57%
2 | Node.js v6.x | 13 | 27%
3 | Node.js v5.x | 0 | 0%
4 | ๊ธฐํ: [๊ฐ๋ฐฉํ ๋ต๋ณ] | 8 | 16%
| v8.9.1 | |
| Node.js v8.6 | |
| ํ์ฌ v8.x, ์ด์ v7.x | |
| Node.js v8.x | |
| 8.9 | |
| 8.0.0 | |
| ์ด๊ณ | 49 | 100.00% |
์ฃผ๋ฌธ | ๋ต๋ณ | ์๋ต | ํผ์ผํธ
-- | -- | -- | --
1 | ๋ฆฌ์กํธJS | 12 | 27%
2 | Express.js | 36 | 82%
3 | ์ ์ฑ | 0 | 0%
4 | AngularJS | 8 | 18
5 | ์ต๊ทค๋ฌ2 | 10 | 23%
6 | ์ ์ด์ฟผ๋ฆฌ | 9 | 20%
7 | ์ ๋ฒ.js | 1 | 2%
8 | ๋ทฐ.js | 5 | 11%
9 | ๋ฐฑ๋ณธ.js | 2 | 5%
10 | D3.js | 2 | 5%
11 | ๊ธฐํ: [๊ฐ๋ฐฉํ ๋ต๋ณ] | 4 | 9%
| Feathers.js | |
| ๋
น์์.js | |
| ๋ํ Kafka์ ์ํธ ์์ฉํ๊ธฐ ์ํด ์ฌ๋ด ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํฉ๋๋ค. | |
| ๋
น์์JS | |
| (์๋ต์ 44๋ช
) TOTAL | 89 |
@David-Engel ๊ฒ์ํด ์ฃผ์ ์ ๊ฐ์ฌํฉ๋๋ค! ๐ ๐
๋ถ๋ช
ํ tedious
๋ฅผ ์ฌ์ฉํ์ฌ mariadb
์ ์ฐ๊ฒฐํ๋ ์ ์ผํ ์ฌ์ฉ์๋ฅผ ์ฌ๋ํฉ๋๋ค. ๐คฃ
์ปค๋ฅ์ ํ๋ง์ ์ํ๋ค๊ณ ์๋ตํ ๋ช ๋ช ์ ์ฌ์ฉ์์๊ฒ https://github.com/tediousjs/tedious-connection-pool ์ ๋ํด ์๊ณ ์๋์ง ๊ถ๊ธํฉ๋๋ค
@David-Engel tedious-connection-pool์ ์ ๊ทน์ ์ผ๋ก ์ ์ง ๊ด๋ฆฌ๋์ง ์์ต๋๋ค. npm์๋ ์ง๋ฃจํ ์ฐ๊ฒฐ ํ๋ง์ ํ์ฉํ๋ ํจํค์ง๊ฐ ์์ต๋๋ค. ํ์ฌ๋ก์๋ ์ฌ์ฉ์์๊ฒ ์ด๋ฅผ ์ฌ์ฉํ๋๋ก ์ง์ํ๋ ๊ฒ์ด ๊ฐ์ฅ ์ข์ต๋๋ค. ๐ค mssql ๋ฐ Sequelize (ORM)๊ฐ ๋๋ฆฌ ์ฌ์ฉ๋๋
๊ทธ๊ฒ์ ์ ์งํ๊ธฐ ์ํ ์ ์: https://github.com/tediousjs/tedious-connection-pool/issues/48
๊ฐ์ฅ ์ ์ฉํ ๋๊ธ
@David-Engel tedious-connection-pool์ ์ ๊ทน์ ์ผ๋ก ์ ์ง ๊ด๋ฆฌ๋์ง ์์ต๋๋ค. npm์๋ ์ง๋ฃจํ ์ฐ๊ฒฐ ํ๋ง์ ํ์ฉํ๋ ํจํค์ง๊ฐ ์์ต๋๋ค. ํ์ฌ๋ก์๋ ์ฌ์ฉ์์๊ฒ ์ด๋ฅผ ์ฌ์ฉํ๋๋ก ์ง์ํ๋ ๊ฒ์ด ๊ฐ์ฅ ์ข์ต๋๋ค. ๐ค mssql ๋ฐ Sequelize (ORM)๊ฐ ๋๋ฆฌ ์ฌ์ฉ๋๋