FS(Ext3,JFS,XFS,ReiserFS)에 따른 MySQL 버전별 Benchmark

dharana의 이미지

처음 이 테스트를 한 것은 2005년 1월 무렵이었습니다. 이전에는 FreeBSD에서 MySQL을 사용했었고 1월에는 새 서버에 데비안을 사용하려고 했습니다. OS를 바꾼 이유는 FreeBSD에서 부하가 걸리면 mysqld가 좀비가 되는 현상 때문에 리눅스로 옮겨갈 생각을 했습니다.(Jeremy의 http://jeremy.zawodny.com/blog/archives/000203.html 기사를 참고하세요.)

데비안 설치시 저널 파일 시스템 종류를 선택할 수 있습니다. Ext3, JFS, ReiserFS, XFS 의 차이점이 있을까 하는 의문에 검색을 해보니 차이가 날 거 같아서 각각의 파일 시스템으로 MySQL의 sql-bench 를 돌려봤습니다.

미리 말씀드립니다만, 이 결과는 단순히 서로 다른 파일 시스템상에서 MySQL 벤치마크를 돌린 결과일 뿐입니다. 이 결과로 디비 성능이 정해지는 건 아닙니다. 단순히 참조용으로만 사용하시면 됩니다. 이 결과가 모든 걸 설명하지 않습니다.

sql-bench 는 MySQL 바이너리나 소스에 들어있는 벤치마크 스크립트로, perl-DBD-mysql 와 perl-DBI 가 필요합니다. 데비안, 페도라, 센트 등은 MySQL 을 설치하면 자동으로 깔리고, 젠투는 수동으로 깔아줘야 합니다.

2005년 1월에는 그야말로 단순무식하게 파일 시스템을 바꿀 때마다 OS를 새로 설치했습니다. 진짜 무식했죠. ㅡ.ㅡ;; 아래 결과는 다음과 같은 시스템에서 테스트한 것입니다. (이때는 파일 시스템별로 한번씩만 테스트를 했습니다.)

Quote:
시스템 사양 : Dell PowerEdge 1850
Intel(R) Xeon(TM) CPU 2.80GHz, 2 way
RAM : 1G
LSILogic 1030 Ultra4 Adapter
SEAGATE ST373307LC DS09 36G
OS : Debian Sarge(당시 Testing 버전)

숫자가 의미하는 것은 수행하는 데 걸린 시간을 말합니다. raw data(첨부파일) 를 보시면 나옵니다만, wallclock secs 라고 나옵니다. 실제 초와 똑같지는 않은데 거의 비슷한 듯 합니다. 각 테스트가 정확히 뭘 의미하는 지는 디비 쪽 공부하시는 분들이 알려주시면 좋겠네요. ^^;; output 을 살펴보니 insert, select, create 를 10,000 ~ 100,000 row 정도 돌려보는 테스트 같군요.

Type Total alter ATIS big connect create insert select wisconsin 

 1st-nosmp-2.4.27-reiser 1783 14 8 8 103 711 840 83 6 

 1st-nosmp-2.4.27-xfs 1620 12 8 8 98 591 806 82 5 

 1st-nosmp-2.6.8-ext3 2321 32 8 8 99 859 1122 75 6 

 2nd-smp-2.6.8-reiser 1810 29 9 9 85 882 706 73 6 

 2nd-smp-2.6.8-xfs 1503 11 8 8 79 605 700 72 5 

 2nd-smp-ext3 2161 31 9 9 82 830 1015 73 6 

 3rd-smp-with-cnf-xfs 1466 15 7 8 72 618 665 71 4 

 4th-smp-with-cnf-static-xfs 1902 13 15 11 67 602 752 434 5 

테이블 태그가 지원되지 않아서 헷갈릴까봐 표로 된 링크를 겁니다.
http://dharana.egloos.com/2091263#t1

이때는 JFS를 테스트 못해 봤습니다. 검색을 해보니 아직 충분한 데이터가 없다는 결과 뿐이더군요. 위 결과에 따라 XFS 파일 시스템을 택했고, 1년 동안 문제없이 잘 사용하고 있습니다.

=0=0=0=0=0=0=0=0=0=0=0=0=0=0=0=0=0=0=

2005년 12월. 새 서버를 또 설치해야 했습니다. 이번에는 서버 종류가 두 가지라서 각각의 경우를 테스트 해보기로 했습니다. 원래 디비 서버, 웹 서버로 사용할 용도였습니다.(서버 사양은 http://www.inempire.com/iehosting/shosting.html 참고)

Quote:
디비 서버 사양 : IBM x336
Intel Xeon 3.0GHz 2M L2, 2 way
FSB 800MHz
4G RAM(DDR2-400 R-ECC x 4)
73G LSI/Symbios Logic 53C1030 Fusion-MPT Dual Ultra320 SCSI

Quote:
웹 서버 사양 : Inter K1104
Intel Xeon 3.0GHz 2M L2, 2 way
FSB 533MHz
2G RAM
73G Adaptec AIC-7902B U320 SCSI

이전 경험을 바탕으로 매번 OS를 새로 설치하지 않고 어떻게 쉽게 각 파일 시스템을 테스트 할 수 있을까를 고민해 본 결과 다음과 같은 방법을 생각해 냈습니다.(이렇게 나오기까지 많은 시행착오를... ㅜ.ㅜ)

벤치마크 테스트 중에 실제로 파일을 쓰고 지우고 하는 과정은 데비안 기준으로 /var/lib/mysql/test 에서 일어납니다. 배포판에 따라 위치는 조금씩 틀립니다. 먼저 각각의 파일 시스템으로 포맷된 4개의 파티션을 만듭니다.

/data_ext3
/data_jfs
/data_reiser
/data_xfs

각 파일 시스템으로 마운트 시킨 뒤에 MySQL 이 실제 사용하는 데이터 디렉토리를 각 파티션으로 옮긴 뒤에 원래 디렉토리와 심볼릭 링크로 연결시켜 줍니다. 이렇게 하면 재부팅이나 재설치 없이 한 번의 스크립트로 모든 파일 시스템에 대한 테스트를 할 수 있습니다.

OS 별로 설치한 방법은 다음과 같습니다.
데비안
1. 안정본(Sarge)과 테스팅본(Etch, 2005-12-11)을 시디로 구워서 각각 expert26, expert 로 설치했습니다.
(단 x336 에서는 2.6 커널로 설치를 하면 시디롬을 인식하는 못하는 현상이 발생했습니다. 2.4 커널로 설치하면 가능하고 일단 설치 후에 2.6 커널을 apt 로 바꿨습니다.)
2. 커널은 제시된 것 중에서 가장 높은 버전을 선택했습니다.(안전: 2.6.8-2-smp, 테스팅: 2.6.12-1-686-smp)
3. 안정본은 NPTL 0.60, 테스팅본은 NPTL 2.3.5 입니다. 안정본은 MySQL 5.0 을 깔면 NPTL 2.3.5 로 올라갑니다.
4. 최소 설치로 한 후에 apt 로 MySQL 4.1을 설치하고 테스트 한 후, 4.1을 지운 후에 5.0 버전을 설치하고 다시 테스트를 했습니다. 의존성에 관계된 패키지 외에 설치한 것은 vim 과 htop 뿐입니다.
5. x336 은 램이 4G 인데, 기본 커널로는 모두 지원이 안되서 커널 재컴파일을 했습니다. 설치시 선택된 config 파일에서 64G 램만 선택해서 재컴파일 했습니다.

젠투
1. http://www.gentoo.org/doc/en/handbook/2005.1/handbook-x86.xml 에 따라 설치했습니다.
2. 설치 후 emerge --deep --update world 를 하고 USE="-X nptl" 을 사용했습니다.(NPTL 2.3.5)
3. 업데이트 후 emerge mysql 을 하니 4.1이 설치되더군요. 5.0 포티지 설치는 실력이 안되서 못했습니다. 대신 MySQL 바이너리 5.0.16 으로 테스트를 했습니다.
4. perl-DBD-mysql perl-DBI 를 따로 설치해줘야 벤치마크 스크립트가 실행됩니다.

페도라 코어 4
1. 설치시 부트 프롬프트에서 다음과 같이 하면 바로 여러가지 파일 시스템을 이용할 수 있습니다.
boot: linux jfs reiserfs xfs
2. 최소 설치(Gnome, KDE 생략)를 한 후에 /etc/inittab 에서 런레벨을 3으로 하고 재부팅을 해서 X 는 사용하지 않았습니다.
3. MySQL 4.1 은 yum 을 통해 깔았고, 5.0.16 은 젠투처럼 배포되는 바이너리를 이용했습니다.

CentOS ServerCD 4.2
1. 센트 시디 중에서 서버용 시디를 이용해서 최소 설치했습니다.
2. 센트는 설치시 여러 파일 시스템을 이용하지 못하므로 일단 설치 후에 2.6.9-22ELsmp config 파일을 이용해 재컴파일 했습니다.
3. 센트의 경우 커널 컴파일 옵션에 따라 테스트 결과 차가 상이하게 났습니다.
4. 페도라와 마찬가지로 MySQL 4.1은 yum을 이용해서, 5.0.16 은 바이너리를 이용했습니다.

=0=0=0=0=0=0=0=0=0=0=0=0=0=0=

먼저 웹 서버에서 테스트한 결과입니다. txt 가 붙은 건 한 번만 돌린 결과이고 나머지는 5번 돌려서 평균을 낸 값입니다. 5번을 돌렸을 때 편차는 크지 않았습니다. 자세한 것은 raw data 를 참조하십시오.
뒤에 B 가 붙은 것은 MySQL.com 에서 내려받아서 설치한 바이너리 배포본이고, s 가 붙은 것은 소스 컴파일시 static 옵션을 준 것입니다. 커널 버전 뒤에 r 이 붙은 건 웹 서버가 두 대인데 서로 바꿔서 테스트한 경우입니다.

표 형태로 보시려면 아래를 클릭.
http://dharana.egloos.com/2091263#t2

Type Total alter ATIS big connect create insert select wisconsin 

 01-2.6.12-386-jfs-4.1.txt 1166  9  8  10  81  260  715  66  6  

 01-2.6.12-386-jfs-5.0.txt 1170  9  7  13  87  201  748  89  7  

 01-2.6.12-386r-xfs-4.1 1176  9  7  10  81  257  730  66  6  

 01-2.6.12-386r-xfs-5.0 1243  8  8  13  86  256  765  90  7  

 01-2.6.12-686-jfs-5.0 1107  9  8  14  86  189  695  90  6  

 01-2.6.12-686-reiser-4.1 1258  28  8  11  83  334  715  64  6  

 01-2.6.12-686-reiser-5.0.txt 1280  27  9  14  87  323  709  92  7  

 01-2.6.12-686r-jfs-4.1 1032  9  8  11  81  150  693  63  5  

 01-2.6.12-686r-jfs-5.0 1061  9  8  13  86  148  692  90  6  

 01-2.6.12-686r-xfs-4.1 1168  9  8  11  83  276  701  64  5  

 01-2.6.12-686r-xfs-5.0 1199  9  8  13  87  271  703  90  6  

 01-2.6.14-gentoo-ext3-4.1 1678  34  12  11  62  394  803  274  5  

 01-2.6.14-gentoo-jfs-4.1 1195  10  12  11  61  239  591  270  4  

 01-2.6.14-gentoo-reiser-4.1 1392  31  12  11  60  392  611  275  5  

 01-2.6.14-gentoo-xfs-4.1 1283  10  12  11  60  301  607  282  4  

 01-2.6.8-jfs-4.1.txt 1090  10  7  9  77  252  654  66  5  

 01-2.6.8-jfs-5.0 1023  10  7  12  84  136  669  90  6  

 01-2.6.8-reiser-4.1 1183  27  8  9  77  298  680  68  6  

 01-2.6.8r-ext3-4.1B 10119  33  8  9  78  287  9523  67  6  

 01-2.6.8r-ext3-4.1 1450  28  7  9  76  352  829  65  6  

 01-2.6.8r-ext3-5.0B 1714  36  8  10  80  385  951  94  6  

 01-2.6.8r-ext3-5.0 1568  32  8  11  83  334  906  92  6  

 01-2.6.8r-ext3-5.0s 1537  30  8  12  86  310  907  87  6  

 01-2.6.8r-jfs-4.1B 9791  12  7  10  77  234  9369  66  5  

 01-2.6.8r-jfs-4.1 985  10  7  9  76  148  654  66  5  

 01-2.6.8r-jfs-5.0B 1149  12  8  10  80  274  657  93  5  

 01-2.6.8r-jfs-5.0 1034  10  7  12  84  144  670  91  6  

 01-2.6.8r-reiser-4.1B 9822  31  8  10  77  279  9334  67  6  

 01-2.6.8r-reiser-4.1 1139  28  7  9  77  268  668  66  5  

 01-2.6.8r-reiser-5.0B 1398  32  8  10  81  477  679  93  6  

 01-2.6.8r-reiser-5.0 1260  30  8  11  83  330  687  92  6  

 01-2.6.8r-xfs-4.1B 9806  10  8  10  81  253  9361  67  6  

 01-2.6.8r-xfs-4.1 1109  9  7  8  76  265  661  65  5  

 01-2.6.8r-xfs-5.0B 1166  10  8  10  84  272  671  93  6  

 01-2.6.8r-xfs-5.0 1170  9  7  12  86  270  679  90  6  

 01-2.6.8r-xfs-5.0s 1181  9  8  12  88  277  684  85  6 

=0=0=0=0=0=0=0=0=0=0=0=0=0=0=

디비 서버에 대한 결과입니다. 다섯번씩 돌려서 평균을 낸 값이고, 편차는 크지 않았습니다.
센트 경우, 커널 컴파일 시에 /usr/src/linux/configs/kernel-2.6.9-i686-hugemem.config 와 /boot/config-2.6.9-22.ELsmp 에서 파일 시스템만을 추가한 후에 컴파일 해봤습니다. boot 밑의 config 파일을 수정한 게 훨씬 결과값이 좋았습니다. 두 파일의 차이는 다음과 같습니다.(cent-2.6.9가 성능이 낮음. cent-2.6.9r 이 성능이 높은 쪽)

107,111c106,110
(여기가 성능이 높은 쪽입니다.)
< # CONFIG_X86_4G is not set
< # CONFIG_X86_SWITCH_PAGETABLES is not set
< # CONFIG_X86_4G_VM_LAYOUT is not set
< # CONFIG_X86_UACCESS_INDIRECT is not set
< # CONFIG_X86_HIGH_ENTRY is not set
---
(이건 성능이 낮은 쪽)
> CONFIG_X86_4G=y
> CONFIG_X86_SWITCH_PAGETABLES=y
> CONFIG_X86_4G_VM_LAYOUT=y
> CONFIG_X86_UACCESS_INDIRECT=y
> CONFIG_X86_HIGH_ENTRY=y

표 형태로 보려면 아래를 클릭.
http://dharana.egloos.com/2091547#t3

Type Total alter ATIS big connect create insert select wisconsin 

 03-2.6.12-smp-jfs-5.0 1746  15  9  13  97  745  755  95  7  

 03-2.6.14-gentoo-ext3-4.1 2003  29  13  12  68  821  740  284  5  

 03-2.6.14-gentoo-jfs-4.1 1814  14  12  11  67  799  625  284  5  

 03-2.6.14-gentoo-jfs-4.1B 8757  16  5  9  76  705  7872  58  4  

 03-2.6.14-gentoo-reiser-4.1 1905  27  13  11  68  864  647  273  5  

 03-2.6.14-gentoo-xfs-4.1 1616  16  13  12  68  584  638  285  5  

 03-2.6.8-smp-ext3-4.1 1689  27  8  9  86  634  812  69  6  

 03-2.6.8-smp-ext3-5.0 1784  27  9  11  93  651  846  92  7  

 03-2.6.8-smp-jfs-4.1 1735  20  8  9  86  818  708  69  6  

 03-2.6.8-smp-jfs-5.0 1786  18  8  12  93  829  717  92  7  

 03-2.6.8-smp-reiser-4.1 1593  25  8  9  86  654  725  69  6  

 03-2.6.8-smp-reiser-5.0 1655  26  8  12  93  671  734  92  7  

 03-2.6.8-smp-xfs-4.1 1517  14  8  8  86  587  721  69  5  

 03-2.6.8-smp-xfs-5.0 1511  15  8  12  93  544  726  93  7  

 03-2.6.8-smp2-jfs-5.0 1744  20  8  11  91  796  710  91  6  

 03-2.6.8r-ext3-5.0 1813  28  9  13  94  656  862  94  7  

 03-2.6.8r-jfs-5.0 1773  16  8  13  95  789  740  93  7  

 03-2.6.8r-reiser-5.0 1797  29  9  13  95  784  753  95  7  

 03-2.6.8r-xfs-5.0 1607  11  9  13  95  610  753  94  7  

 03-F60-50-opti 2188  13  17  14  83  466  1083  413  7  

 03-F60-50 2217  13  17  15  85  467  1093  422  7  

 03-F60-50-stat-opti-lt 1951  13  14  13  77  466  934  340  6  

 03-F60-50-stat-opti 2151  13  16  14  82  466  1060  403  7  

 03-F60-50-stat 2157  13  17  14  82  465  1058  408  7  

 03-F60smp-41-stat-opti-lt1 2050  13  17  19  91  446  1086  296  7  

 03-F60smp-50-stat-opti-lt 2033  14  14  13  97  484  982  336  7  

 03-F60smp-50-stat-opti-lt1 2043  14  15  12  97  504  978  333  7  

 03-F60smpule-41-stat-opti-lt 2176  13  19  23  132  444  1164  302  7  

 03-cent-2.6.9-ext3-4.1 2332  32  26  24  125  637  1170  311  9  

 03-cent-2.6.9-ext3-4.1 1907  29  17  13  78  629  849  288  6  

 03-cent-2.6.9-ext3-5.0B 2198  35  16  23  140  774  1071  125  9  

 03-cent-2.6.9-jfs-4.1 2354  20  25  24  126  696  1156  310  8  

 03-cent-2.6.9-jfs-5.0B 2104  20  16  22  140  723  1045  123  9  

 03-cent-2.6.9-reiser-4.1 2410  30  26  24  126  716  1169  319  9  

 03-cent-2.6.9-reiser-5.0B 2279  33  17  22  140  874  1056  123  9  

 03-cent-2.6.9-xfs-4.1 2289  15  27  24  126  625  1157  311  9  

 03-cent-2.6.9-xfs-5.0B 1959  16  16  22  141  571  1054  124  9  

 03-cent-2.6.9r-ext3-4.1 1901  29  16  14  78  634  834  289  7  

 03-cent-2.6.9r-ext3-5.0B 1840  34  10  11  92  770  808  100  7  

 03-cent-2.6.9r-jfs-4.1 1919  17  17  14  78  693  808  292  6  

 03-cent-2.6.9r-jfs-5.0B 1736  17  10  12  92  722  770  99  6  

 03-cent-2.6.9r-reiser-4.1 1977  28  18  14  79  713  828  297  6  

 03-cent-2.6.9r-reiser-5.0B 1916  31  10  12  93  846  809  101  7  

 03-cent-2.6.9r-xfs-4.1 1859  12  17  13  79  619  828  289  6  

 03-cent-2.6.9r-xfs-5.0B 1603  14  10  11  92  569  793  101  6  

 03-fc4-2.6.11-ext3-4.1 2112  28  17  15  99  624  1011  285  7  

 03-fc4-2.6.11-ext3-5.0B 2075  32  11  13  113  750  994  104  8  

 03-fc4-2.6.11-jfs-4.1 2019  14  17  15  99  699  892  284  7  

 03-fc4-2.6.11-jfs-5.0B 1871  15  10  14  113  752  848  104  7  

 03-fc4-2.6.11-reiser-4.1 1980  28  18  15  98  634  902  286  7  

 03-fc4-2.6.11-reiser-5.0B 1988  30  11  14  114  836  865  105  8  

 03-fc4-2.6.11-xfs-4.1 1954  12  18  15  99  615  910  286  7  

 03-fc4-2.6.11-xfs-5.0B 1706  14  10  14  114  577  857  106  7 

=0=0=0=0=0=0=0=0=0=0=0=0=0=0=

결과 정리.
1.
원래 디비 서버용 스펙이 더 좋아서 좋은 결과가 나올 줄 알았는데, 데비안 설치시 문제도 있고, 성능도 낮게 나오는 군요. 혹시 다른 OS 에서는 제대로 나오나 싶어서 센트와 페도라를 깔아봤습니다만, 데비안과 비슷한 결과였습니다. x336 홈페이지서는 레드햇을 공식 지원한다고 해놨는데, 센트나 페도라로도 별로 뛰어난 성능을 보이진 않는군요.

2.
IBM x336 에서는 XFS 가 성능이 높게 나오지만, Intel K1104 에서는 JFS 가 제일 높게 나옵니다.

3.
세부 항목을 보면 크게 차이가 나는 부분이 create 와 insert 인데 이게 뭘 뜻하는 지는 잘 모르겠습니다.

4.
mysql 사이트서 4.1.16 과 5.0.16 을 바이너리로 받아서 테스트를 해보니 4.1은 문제가 있는 지 결과가 무척 낮게 나왔고, 5.0.16 은 각 리눅스 배포본의 패키지와 그리 다르지 않은 결과를 보였습니다.

5.
위 결과로 볼 때, 파일 시스템이 MySQL 벤치마크 테스트에 미치는 영향은

인텔 서버 : JFS > XFS > ReiserFS > Ext3
IBM 서버 : XFS > ReiserFS > Ext3 > JFS

순 입니다. (대체 IBM 서버서 IBM이 만든 파일 시스템이 제일 성능이 안 나오는 이유가 뭔지... ㅡ.ㅡ;;)

6.
센트의 커널 컴파일에서 봤듯이 시스템의 튜닝에 따라 성능 차가 크게 날 수 있다는 것을 알 수 있습니다.

7.
디비 서버에서 FreeBSD 로 했을 때와 리눅스로 했을 때의 차이는 꽤 큽니다. Jeremy 씨가 말했던 것처럼 특별한 취향이 없으면 MySQL 돌리기에는 리눅스가 더 나은 것 같습니다.(위 표에서 stat 는 정적 컴파일, lt 는 리눅스 쓰레드 사용, opti 는 컴파일 시 BUILD_OPTIMIZED 를 넣은 경우를 말합니다. FreeBSD 6.0 을 사용했고, smp 가 붙은 것은 smp 용으로 커널 컴파일을 다시 한 것이고, smpule 는 스케쥴러를 ULE 로 선택한 경우입니다.)

File attachments: 
첨부파일 크기
파일 raw.tgz326.64 KB
Forums: 
정태영의 이미지

숫자가 의미하는게 트랜잭션을 수행하는데 걸린 시간인가요 아님 단위시간당 처리한 트랜잭션인가요?

오랫동안 꿈을 그리는 사람은 그 꿈을 닮아간다...

http://mytears.org ~(~_~)~
나 한줄기 바람처럼..

익명 사용자의 이미지

고생하셨습니다.

다만, 파일 시스템이 속력이 평가기준의 모든 잣대가 아니라,
IBM-JFS같은 불상사가 나오는 것 같습니다.

매우 유용하네요...

XFS 탐이 나는 군요...

지리즈의 이미지

와 유용한 정보이군요...

감사합니다.

There is no spoon. Neo from the Matrix 1999.

dharana의 이미지

숫자가 의미하는 것은 수행하는 데 걸린 시간입니다. wallclock 라고 표시되더군요. 무슨 뜻인지는 모르겠습니다. ^^;;

ydhoney의 이미지

각 파일시스템이 단순 속도로 비교할 수 있는 부분은 아니지요.

각 용도에 따라서 그에 맞는 파일시스템을 사용하시는것이 올바른것이 아닐까 하는 생각을 해 봅니다.

아무래도 큰 파일을 다루는데 적합한 구조를 가지는 파일 시스템이 있는가 하면 작지만 다량의 파일을 다루는데 적합한 파일시스템도 있기 마련일테니까요.

정태영의 이미지

참고로 innoDB 를 이용하면 filesystem 위에 db 파일들이 위치되는 형식이 아니라 아예 raw device 에 table space 를 만드는 것도 가능합니다...

이론적으론 raw device 쪽이 성능은 훨 씬 좋을 듯 싶은데... 혹시나 가능하다면 다음 벤치마크 땐 이것도 한 번 체크해봐주셨음 하는... 작은 바램이 :evil:

http://dev.mysql.com/doc/refman/5.1/en/innodb-raw-devices.html

오랫동안 꿈을 그리는 사람은 그 꿈을 닮아간다...

http://mytears.org ~(~_~)~
나 한줄기 바람처럼..

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.